Hallo gute µC-Gemeinde, ich bin beim durchstöbern von Threads zu den Themen Reset, Software etc. pp auf folgende Fragestellung gekommen: Fallbeispiel: µC: Atmega644, nur ISP Programmierung, funktionierende HW, kein Glitch, alles tutti. SW: WinAVR-GCC (vermutlich AVR-Studio) SW-Prog: Etwas sinnvolles :-) Es kommt ja schonmal vor, dass jmd. eine SW schreibt wo keine Fehlermeldung beim Compiler ausgegeben werden (gibt es ja schließlich) und der Compiler aus dem Code/ Prog heraus immer wieder einen Reset durchführt (JMP 0) etc. Angenommen ein User kann das nicht aus dem Assemlber-COde entnehmen und wundert sich, dass der µC immer wieder neu resettet wird. Ist es möglich (ohne ein JTAG) ein Reset festzustellen? Der Resetpegel wird dabei ja nicht von dem µC als Ausgang auf low gelegt. Der Reset ist ja ein Eingang. Oder wäre dies mit einem JTAG-ADapter möglich? z.B. wie dem USB-Prog 4.0 ? Danke für die Diskussion. Grüße
Was genau willst du. Es ist eine relativ einfache Übung das Programm so umzuändern, dass es bei einem Reset erst mal zb eine LED 1 Sekunde einschaltet. Kommt die LED, dann war ein Reset. Ansonsten bleibt nur durch Beobachten und logisches Rückschlüsse ziehen, aus dem Verhalten des Programmes mögliche Resets zu erschliessen. Die LED Methode ist bei weitem einfacher.
HI Im Register MCUCR kann nach einem Programmstart die Resetquelle ausgelesen werden. Muss halt nur entsprechend interpretiert werden. MfG Spess
Hi, danke der Antwort. Das würde bedeuten, ich könnte eine ISR auf den Reset setzen? Nr. Adresse Interruptname Beschreibung 1 0x000 RESET Reset bzw. Einschalten der Stromversorgung wie z.B:: ISR (Reset_vect) {}
Reset_Erkenn schrieb: > Hi, > > danke der Antwort. > > Das würde bedeuten, ich könnte eine ISR auf den Reset setzen? > > Nr. Adresse Interruptname Beschreibung > 1 0x000 RESET Reset bzw. Einschalten der Stromversorgung > > wie z.B:: > ISR (Reset_vect) > {} Wozu?
1 | int main() |
2 | {
|
3 | <<<----- jetztz hier an dieser Stelle ist der µC Resettet worden |
4 | }
|
spess53 schrieb: > HI > > Im Register MCUCR kann nach einem Programmstart die Resetquelle > ausgelesen werden. Muss halt nur entsprechend interpretiert werden. > > MfG Spess i.O., dann lese ich mal das Datasheet durch, ob ich dort ne Idee bekomme.. Danke
Reset_Erkenn schrieb: > i.O., dann lese ich mal das Datasheet durch, ob ich dort ne Idee > bekomme.. Das sollte der erste Schritt sein.
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.