Hallo,
die Sache sieht so aus: Ein Zähler wird in einer Schleife um den Wert einer Variablen bei jedem Durchlauf verringert. Sobald der Zähler überläuft, muss ich das wissen. Gibts da ein Befehl? ATMega8
Bin ein Anfänger.
Druckbare Version
Hallo,
die Sache sieht so aus: Ein Zähler wird in einer Schleife um den Wert einer Variablen bei jedem Durchlauf verringert. Sobald der Zähler überläuft, muss ich das wissen. Gibts da ein Befehl? ATMega8
Bin ein Anfänger.
Bei einem Underflow (Unterlauf) wird das Carry gesetzt. Also sollte BCS gehen.
Den Befehl finde ich in der Dokumentation nicht. Wie benutze ich ihn?
branch on carry set
Der Befehl sollte BRCS heissen.
Eine andere durchaus übliche Art und Weise ist übrigens rückwärts bis Null zu zählen. Der Befehl um das zu prüfen ist ein simples BREQ direkt nach der Subtraktion.
Grüße,
Hanni
Aber wenn das Ergebnis nach der Subtraktion nicht 0 sondern 255 ist? Ich ziehe ja nicht immer 1 ab ...Zitat:
Zitat von Hanni
Ich will die Sache jetzt mit einem Timer lösen. Die Timer in ATMega8 bieten dafür sogar schon Lösungen. Den Tipp habe ich in einem anderen Forum bekommen. Aber ich weiß leider nicht, wie man die Timer konfiguriert. Hier auf roboternetz.de gibts ein Artikel über Timer, doch leider steht nichts drin, wie man das in Assembler löst.
Schau mal hier nach, ich hab da einen Artikel über Timer geschrieben.Zitat:
Aber ich weiß leider nicht, wie man die Timer konfiguriert
Gruß Sebastian
1. im Datenblatt das Kapitel über die Timer raussuchen.Zitat:
Zitat von cipoint
2. die Bits für den gewünschen Modi notieren
3. die entsprechenden Register setzen.
4. fertig ....
Kaum zu glauben, aber ich hatte schon vor, dir eine Mail zu schreiben, dass du eine Tut über Timer machst. =D>Zitat:
Zitat von izaseba
Tja, geplannt waren Timer sowieso, ich wäre auch gerne weiter damit, aber man hat nicht immer Zeit und Lust weiterzuschreiben....Zitat:
Kaum zu glauben, aber ich hatte schon vor, dir eine Mail zu schreiben, dass du eine Tut über Timer machst.
Ich hoffe, daß Du damit was anfangen kannst, sonst lohnt es sich hin und wieder mal vorbeizuschauen, ob was neues dazugekommen ist :-)
Gruß Sebastian