Hallo, ich frage mich wie ich in einem GCC Programm in C sagen kann das es zum Anfang des Programmes springen soll, eben wie ein Reset. Wäre nett wenn mir jemand dabei helfen kann. Zur erklärung meines Programmes, Ich betreibe den ATMega 16 an Batterrie Spannung. Nun da der MC nicht die Batterrie Spannung leer saugt habe ich einen Eingangs Pin ebenfalls an die Batterrie Spannung gehangen, dieser Pin erkennt mir nun Spannung Batterie da Spannung Batterrie weg, wenn die Spannung wegfällt läuft ein Speichervorgang der Daten ab, dies ist möglich weil der MC und ein externer EEprom über einen Powerkondensator gebuffert wird. So nun mein Problem da die Kondensator noch ziemlich lange den MC buffert habe ich das Problem wenn ich die Batterrie Spannung wieder anlege das mein MC im Programm weitermacht wo er auf gehört hat, ich möchte ihn aber dann vom Anfang des Programmes Starten lassen. Ich hoffe ihr könnt mir helfen.
Hi, eine Moeglichkeit waere den Watchdog zu nutzen. WatchDog am Ende aktivieren und das Programm in eine Endlossschleife schicken. Der Watchdog wird sehr gut im AVR GCC Tut. (Wiki) beschrieben. Mfg Dirk
Wenn er noch nicht aufgehört hat zu laufen wird es problematisch. Eine for-Schleife die nur den Batterie-Pin abfragt würde gehen. wenn die Spannung wiederkommt ins Programm zurückspringen.
Ja mein Problem beliegt sich ja darauf das ich nicht weis wie ich an den anfang des Programmes zurückspringe, derzeit macht das Programm dort weiter wo es aufgehört hat.
Was ist der Grund, die von Dirk vorgeschlagene Watchdog-Loesung für den "Zuruecksprung" zum "Anfang des Programms" nicht zu nutzen?
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.