Hallo @ all Ich habe ein AT91SAM7X-256-EK Board. Zudem verwende ich den IAR-Compiler. Dort gibt es viele Beispielprojekte. Ich habe mal das "GETTING STARTED" Projekt geöffnet (Dies mit den blinkenden LEDs). Anschließend habe ich den Debug Button im IAR-Compiler angeklick. Das compilierte Programm wird in den AT91SAM7X-256 übertragen. Nebenbei habe ich noch das Hypertherminal geöffnet und die RS232-Schnittstelle konfiguriert. Und siehe da über die Debug-RS232-Schnittstelle kommen genau die Informationen wie erwartet. Nun habe ich die Reset-Button auf dem EK-Board gedrückt und das Programm startet auch von vorne. Diese habe ich öfters ausprobiert. Wenn ich jedoch das USP-Kabel abziehe, ist die Spannungsversorgung unterbrochen. Stecke ich das USB-Kabel wieder an startet das Programm auch wieder. Es gibt nur ein Problem. Ich kann den Reset-Knopf auf dem Board so oft und lange drücken wie ich will. Es hat keine Auswirkung. Das Programm wird weder unterbrochen, noch neu gestartet. Weiß jemand woran es liegt?
>Weiß jemand woran es liegt?
ja, ich vermute mal der user reset ist in den beispiel-programmen nicht
freigegeben. schau mal in das datenblatt, kapitel "User Reset".
gruss
gerhard
Aber warum funktioniert er denn wenn ich das Programm mit dem IAR-Compiler draufkopiere? Er funktioniert nur nicht mehr wenn ich einmal die Spannungsversorgung wegnehme.
>Aber warum funktioniert er denn wenn ich das Programm mit dem >IAR-Compiler draufkopiere? ein compiler kopiert nichts auf eine hardware! ich nehme mal an du hast einen jtag-ice (z.b.: j-link) in verwendung. dieser kann den prozessor über das jtag-interface rücksetzen. gruss gerhard
Ja ich habe eine JTAC-ICE. Mit hilfe des JTAC-ICE kopiert IAR das Programm in den Flash. Ich kann dann den Reset-Knopf auf dem Board drücken und das Programm startet von vorne, wenn ich die Spannungsversorgung unterbrochen habe und anschließend wieder herstelle, wird das Programm aus dem Flash geladen, jedoch hat bewirkt das Drücken des Reset-Knopfes nichts mehr.
du hast vermutlich in der iar workbench eine konfiguraton gewählt, welche den programmcode in das ram lädt un dnicht ins flash. welches beispiel verwendest du denn und welceh konfiguration hast du ausgewählt? gruss gerhard
Falls Programm im RAM müsste der RAM-Speicherinhalt bei Stromversorgungsunterbrechnung erhalten bleiben (wg. "...startet das Programm auch wieder..."). Das mag zwar für kurze Zeit möglich sein, wenn irgendwelche Kondensatoren als Pseudo-Stützbatterie agieren, ist aber bei längerer Unterbrechung unwahrscheinlich. Kenne EWARM zwar kaum aber tippe eher darauf, dass vor dem Flashvorgang der User-Reset mittels einer (Script-)Anweisung aktiviert wird, mit der direkt in die Speicheradresse für Reset-Control geschrieben wird. Wenn dem so ist, ist die Aktivierung des "Resetknopfs" dann nicht Teil der Anwendung sondern Teil der Initialisierung des Controllers durch EWARM/J-Link zum Flashen. Vorschlag im Beitrag von gerhard 24.2 14:19 überhaupt ausprobiert?
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.