Max wrote:
> Hallo.
>
> Ich programmiere AT91SAM7S256 und benutze als Entwicklungumgebung
> Eclipse.
Da hat nichts mit Eclipse zu tun. Eclipse ist ein "besserer Editor". Die
Fragen betreffen den Quellcode der Anwendung.
> Kann mir jemand die genaue Bedeutung von crt.s isrsupport.c
> lowlevelinit.c erklähren?
Dateien mit diesen Namen enthalten typischerweise:
crt.s - Startup-code für den ARM-code (Exceptions, Stack-Init,
C-Runtime-Init)
isrsupport.c - Funktionen um IRQ (und evtl. FIQ) auf core-level zu
aktivieren/zu deaktivieren
lowlevelinit.c - enthält oft nur eine einzige in C implementierte
Funktion mit der einige Register "früh" gesetzt werden, wird meist vom
Startup-Code gerufen (im System-Mode mit temporärem Stack-Pointer). Bei
AT91 üblich: Watchdog einstellen/ausschalten, Frequenzen setzen (PLL,
Core, PCLK)
> Vor allem crt.s verstehe überhaupt nicht.
Es gibt ein Tutorial von Jim Lynch, darin wird der Startup-Code ganz gut
beschrieben, weiterhin Application-Notes von Atmel (AT91 startup o.ä.)
> In
> isrsupport.c gibt es eine Funktion enableIRQ. Was macht diese genauer?
Im Prinzip das IRQ-Bit im CPSR löschen. Grundvoraussetzung dafür, dass
IRQs verarbeitet werden.
> Aktiviert alle Interrupts, nee oder?
IRQ Interrupts, ja. Zudem ist aber auch der AIC noch entsprechend zu
konfigurieren.
>Ich glaube bei mir treten öfters
> Probleme/Unregelmäßigkeiten mit Interrupts auf.
Zu wenig Information, ...Glaskugel...