Hallo!
Man muss die innere Hardware in Datenblätter (DB) der diversen PIC's sehr genau vergleichen und danach alles nötige in Queldatei (*.asm) entsprechend ändern. Als Lektüre: http://www.rn-wissen.de/index.php/PI...IC_umschreiben .
Hallo zusammen.
Ich experimentiere derzeit mit einem PIC16F877 herum, aber leider verhält der PIC sich ganz merkwürdig.
Zur Beschaltung:
Aufgrund der externen Beschaltung ist der PIC an Vdd mit ca. 4,05 V versorgt, am MCLR liegen etwa 4,5 V.
An PortB sind Low Current LEDs mit 1k als Vorwiderstand angeschlossen.
Das Programm wurde in Assembler geschrieben, Low Voltage Programming wurde ausgeschaltet und die Analogpins auf digital umgeschaltet.
Wenn ich jetzt mit den Befehlen
movlw b'11111111'
movwf PORTB
versuche die LEDs an PortB gleichzeitig einzuschalten, fangen diese wie wild an zu flackern.
Ein Lauflicht an PortB funktioniert einwandfrei.
Habe beide Quellcodes mit einem 16F872 (adaptiert) getestet und da funktionieren die Programme, also am Quellcode kann es eigentlich nicht liegen.
Hat der PIC16F877 irgendwelche Besonderheiten? Muss man im Config-Word evtl noch was umstellen, was bei 872 nicht notwendig ist.
Danke schonmal für alle Hilfen!
Hallo!
Man muss die innere Hardware in Datenblätter (DB) der diversen PIC's sehr genau vergleichen und danach alles nötige in Queldatei (*.asm) entsprechend ändern. Als Lektüre: http://www.rn-wissen.de/index.php/PI...IC_umschreiben .
MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!
Danke schonmal für die Antwort! Bin leider diesbezüglich nicht fündig geworden (vorallem weil das Datenblatt für 872 und 877 gleich ist, gib ein Einheitliches das heißt 87x), bin anfangs nur in die Falle mit Low Voltage Programming getappt.
Vielleicht gibts ja hier in der Community jemand, der schon Projekte mit dem 877 gemacht hat, deshalb bin ich über jede weitere Antwort dankbar!
Mir fällt nur noch ein Montagefehler bei externer Beschaltung / Hardware ein.
MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!
Was ist denn das für eine merkwürdige Schaltung? Wo kommen denn die 4V her? Nicht das 4V ein Problem sind, aber das MCLR 4,5V hat finde ich merkwürdig.
Ohne jetzt den Schaltplan gesehen zu haben, wäre meine erste Vermutung, die Versorgung knickt ein, wenn zu viele LEDs an sind.Wenn ich jetzt mit den Befehlen
movlw b'11111111'
movwf PORTB
versuche die LEDs an PortB gleichzeitig einzuschalten, fangen diese wie wild an zu flackern.
Ein Lauflicht an PortB funktioniert einwandfrei.
MfG Klebwax
Strom fließt auch durch krumme Drähte !
Es ist eine relativ komplexe Beschaltung, wo die Versorgung über Schutzdioden und eine Treiberstufe geht. Da geht etwas an Spannung verloren, aber die PICs sollen laut Datenblatt ab 2 V laufen.
Die LEDs an PortB sind mit einem Sockel für den 877 und 872 verbunden und man kann entweder dein einen, oder den anderen PIC einstecken um zu testen.
Mit dem 872 funktioniert ja alles sauber, also scheint die Spannung zu reichen.
Und an Vdd des 877 bricht auch nichts ein, wenn er versucht alle LED einzuschalten.
Gibt es spezielle Programmierfallen beim 877? irgendetwas, was einen Reset auslöst oder so?
Ist wirklich sehr merkwürdig, weil ein Lauflicht sauber funktioniert.
Und das gleiche Programm, mit gleicher Hardware funktioniert auf dem 872 sauber!
Letzte, was mir einfällt, ist einen PIC16F877 mit provisorischem Zwischensockel für Port A (z.B. auf Lochraster) in eine geprüfte mit PIC16F872 einwandfrei funktionierende Schaltung zum Prüfen einstecken und beurteilen.
Übrigens, der PIC16F877 könnte defekt sein.
Geändert von PICture (12.05.2013 um 16:20 Uhr)
MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!
Lesezeichen