Problem PIC16F877 PORTA und D

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 26 9 2024  20:19:16      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte


Autor
Problem PIC16F877 PORTA und D

    







BID = 40872

McMorton

Neu hier



Beiträge: 42
Wohnort: Lippe
Zur Homepage von McMorton
 

  


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.

BID = 40873

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach

 

  


Zitat :
ch habe den PORT schon von Analog auf digital umgeschaltet

Hast Du Die Pins auch als Ausgänge definiert ?

Zitat :
Sobald ich ein Signal auf einen Pin des Ports D lege zieht der PIC enorm viel Strom (wird richtig warm).


Wenn Du kein Problem mit Latchup hast, weil Dein Signal höher als die Speisspannung oder tiefer als GND ist, vermute ich, daß, im Gegensatz zu den obigen, diese Pins als Ausgänge laufen.

_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 40880

McMorton

Neu hier



Beiträge: 42
Wohnort: Lippe
Zur Homepage von McMorton

Jep, alle Pins sind als Ausgänge geschaltet.

ADCON1=0b.0000.0110;

TRISA = 0b.1101.0100; //Ports definieren
TRISB = 0b.1111.1111; //1=Eingang
TRISC = 0b.1111.1111; //0=Ausgang
TRISD = 0b.1111.1111;
TRISE = 0b.1111.1011;


Alles wird von einer Spannungsquelle versorgt. Die Eingänge liegen direkt an 5V (genau wie VDD des PICs). Dazwischen sitzten nur DIP-Schalter.

BID = 40923

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach

Mal abgesehen davon, daß Dein Kommentar nicht mit dem Code übereinstimmt,

Zitat :
irgentwie kann ich die Ports A.4 und A.5 nicht als digitale Ausgänge schalten

und

Zitat :
TRISA = 0b.1101.0100; //Ports definieren

solltest Du mal eine Blick in den generierten Code werfen.
Was für einen Compiler verwendest Du denn ?


_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 40989

McMorton

Neu hier



Beiträge: 42
Wohnort: Lippe
Zur Homepage von McMorton

Als Compiler verwende ich den C-Compiler CC5X.
In dem Register habe ich den PORTA.4 wieder als Eingang definiert, da ich nur einen von beiden brauche (PORTA.4 oder 5). Wie gesagt: wen ich ihn als Ausgang definiere ghet er nicht (genausowenig wie PORTA.5).

Habe mit den Asmmblercode mal angeshene, konnte dort nichts aufälliges finden:

Umschalen auf Digital:
BSF 0x03,RP0
BSF 0x9F,PCFG2
BSF 0x9F,PCFG1
BCF 0x03,RP0

Setzen von PORTA:

MOVLW .212
BSF 0x03,RP0
MOVWF TRISA


BID = 41166

McMorton

Neu hier



Beiträge: 42
Wohnort: Lippe
Zur Homepage von McMorton

Hallo
Fehler gefunden!!
Fehlerursache: eigene Blödheit

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


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


könnte mir in den A.. tretten. Mit sowas bekommt man auch ein Wochenende rum


Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 16 Beiträge im Durchschnitt pro Tag       heute wurden bisher 14 Beiträge verfasst
© x sparkkelsputz        Besucher : 182078463   Heute : 4880    Gestern : 5617    Online : 581        26.9.2024    20:19
3 Besucher in den letzten 60 Sekunden        alle 20.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0203518867493