Hi,
I have a few questions that I'm unable to find the answer for in the documentation.
The CPU interrupt vector INT13 is muxed with Timer0 and XINT13 (SPRUFN3C, page 120). However I'm unable to find any information regarding XINT13 (apart from an input to the MUX in figure 37 in the same document) . What is XINT13?
The same goes for the DATALOG interrupt vector, no information about it whatsoever except its prescence in the vector table.
Also, a few resources are marked "for RTOS use" (INT13/INT14/RTOSINT) but not consistently (page 120 states that INT14 is "for TI/RTOS use"). I assume that if youre NOT using an RTOS, these resources are free for any use in my application? And that stuff marked for "TI use" is... well... what?
On page 129 it is stated that "When using the OR IER and AND IER instructions to modify IER bits make sure they do not modify the state of bit 15 (RTOSINT) unless a real-time operating system is present.". However, many (if not all) TI examples modify this bit even though they are not using an RTOS. This information is somewhat confusing. Exactly how is the RTOSINT fired and how do I prevent that if I'm not using an RTOS?
The compiler intrinsics __enable_interrupts() and __disable_interrupts(), when should they be used? Most of the TI samples just use the EINT/DINT macro that just modify the INTM bit. The SPRU514D doesnt explain why and how the intrinsic functions should be used. Should I just ignore them? For other compilers I've used, the __enable_interrupt() and __disable_interrupt() intrinsics usually push/pop the interrupt state so that you can call these functions nested and not accidentally enable interrupts (call disable twice requires two calls to enable for the interrupts to be enabled again). These intrinsics doesnt seem to work like that, instead they push/pop the pointer to the interrupt vector table?
Sorry if I'm asking obvious stuff, I'm quite new to this microcontroller.
/Mikael