Hallo, ich versuche derzeit ein kleines Testprogramm mit einem PIC18F67J60 am laufen zu bekommen. Ich suche nach dem passenden Befehl um den Wert des Timer0 rücksetzen zu können. TMR0 = 0; Funktioniert nicht, finde auch nichts entsprechendes im Datenblatt, ich kann ledeglich das Overflowflag abfragen. Aber es muss doch irgendwie möglich sein den Timer rückzusetzen bevor er überläuft? Danke schonmal für eure Antworten.
Die Anweisung timr = 0 mag es in der normalen Mathematik zu geben, in Programmiersprachen eben nicht. Bei assembler findet man ein "=" z.B. bei: .equ timr0 = 0 Damit würde festgelegt, dass timr0 den Wert oder die adresse 0 hat. Ich weiß nicht, in welcher Programiersprache diese Anweisung gegeben wird, aber in Assembler müsste man ein Register mit 0 laden (z.b. clr r2 oder ldi r2,0x00) und diesen Wert mit mov timr0,r2 in den Zähler des timers übergeben.
In C ist das ganze. Compiler C18. Es scheint als sei TMR0 ganz unbekannt. Muss ich eventuell noch irgendetwas deklarieren um das so nutzen zu können? Habe gesehen das in der Timer0 Manual von Microchip ebenfalls der Befehl TMR0 = 0; genutzt wird, jedoch erhält man keinen einblick in die initialisierung die dort vorgenommen wurde.
Danke für den Tip Holger, wenn ich es einzeln mache gehts! Manchmal fällt man echt über die einfachsten sachen...
Wenn du in das include vom Prozessor schaust gibt es da nur die beiden einzeln, dort schau ich meist nach wenn mir sowas unterkommt. Geht mir auch oft so... Holger
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.