Forum: Mikrocontroller und Digitale Elektronik PIC 16F877 Problem PortA und D


von Christian Fasse (Gast)


Lesenswert?

Hallo
Ich habe zwei Probleme mit dem PIC 16F877.

Irgentwie kann ich die Ports A.4 und A.5 nicht als digitale Ausgänge
schalten.
Ich habe den PORT schon von Analog auf digital umgeschaltet (Adcon1 =
0110), aber es geht trotzdem nicht. Die anderen Ports (A0-A3) gehen.

zweites Problem:
Ich habe den PORT D als Eingang geschaltet. Jede Leitung ist mit einem
10K Pulldown versehen.
Sobald ich ein Signal auf einen Pin des Ports D lege zieht der PIC
enorm viel Strom (wird richtig warm).
Sobald ich einen zweiten Pin des Ports D auf 1 lege, steigt dieser an
usw. Irgetnwie zieht dieser Port ziemlich viel Strom. Wodran liegt
das?

Im vorraus schonmal danke.

von Steffen (Gast)


Lesenswert?

1.) RA.4 ist ein Open Drain Output (kann nur Low ausgeben)
Alle Peripherie ensprechend konfiguriert? Also auch die Komperatoren
(nur falls es ein 16F877A ist) und das MSP-Modul?
2.) Kann nur ein Konfigurationsfehler sein also PortD als Ausgang
definiert --> Kurzschluß.

Steffen

von Christian Fasse (Gast)


Lesenswert?

Hi
Es handelt sich um den normalen 16f877. Ich habwe die Ausgangsleitung
mit einem 10k Widerstand auf 5V gezogen. Aber ich messe am PIN nur 0V.
Egal ob er gerade ein Signal rausgeben soll, oder nicht.

Die PINS sind als Eingang definiert (zumindest laut C code). Wenn ich
dort ein SIgnal anlege, so erkennt der PIC es aucht. Er zieht halt nur
sehr viel Strom.

von Steffen (Gast)


Lesenswert?

Normal ist das nicht. Wenn Du dir sicher bist, das die Ports wirklich
richtig als Eingang oder Ausgang definiert sind, dann fällt mir da nur
noch folgendes ein:

a) PIC defekt
b) Kurzschlüsse auf Leiterplatte bzw. Aufbau
c) Schaltfehler

Wenn Du dich beim C-Compiler selbst um das Bank-Select kümmern musst,
dann überprüfe das Ganze nochmal.

Steffen

von Christian Fasse (Gast)


Lesenswert?

Hallo
Fehler gefunden!!
Fehlerursache: eigene Blödheit!!!!!!!

1. man sollte sich verischern das man auch den richtigen PIC verwendet.
War mir sicher das es der 16F877 war. War wohl doch der 16F877A ;-)

2. Man sollte keine Eingänge zurücksetzen (war wohl der Grund warum der
PIC soviel Strom gezogen hat)

könnte mir in den A.. tretten.

von com1992 (Gast)


Lesenswert?

is ja nicht schlimm

von com1992 (Gast)


Lesenswert?

nach 3 jahren mal ne antwort. ich schreib grad ein pic referat.

ich muss den 16F84 dem 16F877 gegenüberstellen

Eigenschaft  16F84  16F877

Anschlussbeine  18 Pins  40 Pins
Kern          14-Bit  14-Bit
Programmspeicher  1024 Befehle  8192 Befehle
RAM          68 Byte  368 Byte
EEPROM          64 Byte  256 Byte
I/O-Pins  13  33
Timer           1 Timer  3 Timer
10-Bit ADC-Inputs  -  8
Komperatoren    -  2
CCP  -  2
USART  -  1
SSP  -  1

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.