Forum: Mikrocontroller und Digitale Elektronik AT91SAM7S Programmausführung nach Stromausfall


von James (Gast)


Lesenswert?

Hallo,

Für den AT91SAM7S64 habe ich ein Programm geschrieben mit CrossStudio, 
welches zufriedenstellen läuft. Leider hab ich es nicht geschafft, dass 
das Programm auf dem uC automatisch wieder startet, wenn ich die 
Spannungsversorgung ab- und wieder anschalte. Ich muss das Programm 
immer mit "Build and Run" ausführen (rüber geladen wird es über die 
Paralelle Schnittstelle an einem JTAG Adapter von Olimex).

Das Board auf dem ich das getestet habe ist ein Testboard von Olimex 
(http://www.olimex.com/dev/sam7-p64.html) und eben ein eigenes.
Die aktive Konfiguration ist 'ARM Flash Release'.

Hoffe ihr könnt mir weiterhelfen und besten Dank im Voraus.

James

von Peter (Gast)


Lesenswert?

Hast Du das Programm ins SRAM oder ins EEPROM geladen?

von Nobbie (Gast)


Lesenswert?

Hallo James,

beim CrossStudio hast du ein Startup Skript, in denen mehrere 
Preprocessor Definitions beschrieben sind. Für dich ist:
1
* STARTUP_FROM_RESET
2
 *
3
 *   If defined, the program will startup from power-on/reset. If not defined
4
 *   the program will just loop endlessly from power-on/reset.
5
 *
6
 *   This definition is not defined by default on this target because the
7
 *   debugger is unable to reset this target and maintain control of it over the
8
 *   JTAG interface. The advantage of doing this is that it allows the debugger
9
 *   to reset the CPU and run programs from a known reset CPU state on each run.
10
 *   It also acts as a safety net if you accidently download a program in FLASH
11
 *   that crashes and prevents the debugger from taking control over JTAG
12
 *   rendering the target unusable over JTAG. The obvious disadvantage of doing
13
 *   this is that your application will not startup without the debugger.

interessant. Also schau dir das Skript kurz an, und setze dann 
entsprechend die definitions.

Gruss Nobbie

von James (Gast)


Lesenswert?

Hallo Peter, und danke.

Wie kriege ich das raus?

Wenn ich auf 'Build' -> 'Build Projektname' gehe sagt er mir, dass 
44.4KB ins FLASH gehen und 14KB ins SRAM.

Fall es da am falschen Ort ist... wie krieg ich das ans richtige Ort.

von James (Gast)


Lesenswert?

Tach Nobbie, besten Dank.

Wo befindet sich dieses Skript?

von Nobbie (Gast)


Lesenswert?

wenn du im CrossStudio ein Projekt generiert hast, dann findest du im 
"Project Explorer" den Eintrag "System Files". Dort findest du das file 
"AT91SAM7_Statup.s". Dieses öffnest du und liest dir die Beschreibungen 
durch. Das Setzen der Preprocessor definitions erfolgt dann über die 
"project preferences"

Gruss Nobbie

von James (Gast)


Lesenswert?

Nobie, ... you made my day.

Vielen Dank

von Nobbie (Gast)


Lesenswert?

You`re welcome...

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
Noch kein Account? Hier anmelden.