Hello,
I want to set up an interrupt service routine for the C6748 (OMAP-L138 EVM board) without using dspbios.
I am starting with a simple test: triggering and catching the TMR1 interrupt. Even this is proving too difficult without help.
I have read the relevant hardware documentation and I think I now have a clear-ish picture of what to put in which register . What I don't know is how to do that from C.
Specifically, I need to know:
* How to globally enable and disable interrupts. E.g. how do I access the CSR register, etc.
* How to access registers like EVTMASK or INTMUX without using a raw pointer.
* How to register an ISR without having to put the pointer myself in the vector table.
...
These are all simple steps but there are too many of them to do this by trial and error or brute force.
I have read the manual of the compiler but it didn't help. I have read the sources of the bsl for my board ( C:\CCStudio_v3.3\boards\evmc6748_v1) but could not find the information I need.
I don't even know where to start looking for the relevant include files in the CCS install folder, so I can't get a clue by looking at them.
The examples that came with the bsl don't use interrupts and I could not find anything in the forum or the wiki that does not use dspbios.
Righ now, I am able to trigger a TMR1 interrupt and see it appear on the EVTFLAG register. But I don't know how to enable interrupts globally from C, or how to access said EVTFLAG register without using a pointer, and much less how to properly put the address of my ISR in the vector table (short of actually writing the address there myself ). There's a long way from 'event raised' to 'ISR entered' and every step of the way is uncertain to some extent. It will take me days of trial and error to get this right unless someone points me in the right direction (i.e. documents or ready made example).
Somebody must have passed through this before, there must be some documentation somewhere. I must be missing something.
Thank you!