PIC16F690 läuft nicht

Gast #3649817
Lesenswert?

Hallo ich habe gerade echt ein Problem wo ich nicht weiterkomme.

Ich habe für meine Steuerung einen PIC16F690 eingesetzt. Ich möchte den 
Internen Oszillator verwenden, da ich nicht auf genaue Timings 
angewiesen bin.

Jetzt habe ich erstmal das Config.-Word eingefügt, die ANSEL-Register 
auf null gesetzt (alle I/Os digital), TRIS-Register und OSCCON gesetzt.

Watchdog und der ganze andere Schnickschnack ist ausgeschaltet.

Zum Testen habe ich dann mal verschiedene Ausgänge mit je einem LED dran 
auf 1 gesetzt, aber es passiert nie etwas. Speisung habe ich gemessen, 
sind stabile 5V. Kondensator 100nF ist auch drübergehängt.

Programmieren über ICSP klappt auch, nur zeigt er keinerlei 
"Lebenszeichen", sprich, ich kann keine Ausgänge auf 1 schalten.

Habe eigentlich in MPLABX eingestellt, dass MCLR als I/O verwendet 
werden kann.
Widerstand über MCLR habe ich aber auch schon auf Vcc gehängt, hat nix 
geändert.

Die FOSC Einstellung in den Config-Bits habe ich auf INTRCIO. Ist das 
Richitg?

Bin gerade ziemlich hilflos, früher habe ich das auch noch hinbekommen. 
Hat jemand eine Ahnung, an was das liegen kann? Wäre sehr sehr dankbar.

Im Anhang ist noch das C-File, vielleicht findet ja jemand einen Fehler.

Liebe Grüsse
Horst
Angehängte Dateien:
#3649823
Lesenswert?

Horst Hans schrieb:
> vielleicht findet ja jemand einen Fehler.

Versuch mal mikroC von mikroElektronika.
http://www.mikroe.com/mikroc/pic/
oder Basic:
http://www.mikroe.com/mikrobasic/pic/
Da kannst du DEIN Programm via Einzelschritt durchsteppen (aka debuggen) 
und parallel dazu deine Variablen beobachten. So machen das alle, wenn 
ein Programm nicht das tut, was es soll. Vielleicht kommst du damit 
besser zurecht.

Stell dir vor, das Internet existiert nicht und du müßtest dir das alles 
selbst erarbeiten.

Du kannst natürlich hier weiter fragen, falls du auch damit nicht 
zurechtkommst bzw. es dich überfordert.
#3649827
Lesenswert?

Peter Sander schrieb:
> Versuch mal mikroC von mikroElektronika.
> http://www.mikroe.com/mikroc/pic/
> oder Basic:
> http://www.mikroe.com/mikrobasic/pic/
> Da kannst du DEIN Programm via Einzelschritt durchsteppen (aka debuggen)
> und parallel dazu deine Variablen beobachten.
Das geht in C im MPLAB X genauso gut,... Direkt in der Schaltung oder 
auch als Simulation.

Und ein einfacher Blick (siehe Anhang) ins Datenblatt hätte viel mehr 
als jeder Debugger dieser Welt gebracht...

Dein PIC hat keinen PORTB<3:0>. Wo hast du die LEDs, die du mit 
PORTB<3:0> ansteuern willst eigentlich angeschlossen?
Angehängte Dateien:
Gast #3649831
Lesenswert?

Danke für die Antworten.

Max. H. :
Da hast du natürlich Recht, Die Ausgabe auf PORTB ist nicht sinnvoll.

Aber das ist nicht das Problem. Wenn du die Definitionen für die LEDs im 
Code anschaust, siehst du, dass ich keine LEDs an PORTB <3:0> habe, 
sondern erst ab Bit 4.

Ich habe auch schon andere Bits auf anderen PORTs versucht, klappt 
nicht.

LG
Gast #3649835
Lesenswert?

Unglaublich, ich habe tatsächlich die TRIS-Register von der falschen 
Seite her gesetzt... da muss ich komplett abwesend gewesen sein, als ich 
das geschrieben habe.

Sorry für den unnötigen Post und trotzdem vielen Dank!!

Lg

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren