hallo,
wie bekomme ich denn bei nem arm 9 (at91sam9263) den SWI zum laufen?
in dem ref-man steht null komma nix darüber. nur dass es einen software interrupt gibt. selbst im instruction set manual steht nur was von einer supervisor address bei 0xFFFF0008.
ein versuch da meinen handler einzutragen scheitert leider.
statt die interrupt service routine auszuführen springt er in die swi_handler exception. die kommt auch, wenn ich keine isr definiert habe und SWI ausführe. also nehme ich an, er ist nicht richtig initialisiert.
Code:
/* hinzufügen oder weglassen dieses prototypen bringt nix*/
void softw_interrupt_routine() __attribute__((interrupt("SWI")));
void softw_interrupt_routine()
{
// stuff
}
int main()
{
unsigned int* SPVAddr = 0xFFFF0008;
*SPVAddr = (unsigned int) softw_interrupt_routine;
while (1)
{
// stuff2
asm volatile (" SWI \n" ); // call software interrupt
}
}
hiiiiiiiiiilllffffeeeeeeeeeeeeeeeeeeeeeeeeeeääääää äääääääää!
ich vegetiere schon seit gestern an diesem problem herum.
weiss vielleicht irgendwer was ich sonst tun könnte?[/code]
Lesezeichen