Part Number: MSP430F5529
Hi all,
I am working on a project where i want to read the data of a sensor at a rate of 90 - 100 Hz. For this sensor-read i wrote a function which consists of a transaction over UART where a command gets send and a response is send back and is processed. The respons of the sensor is triggered by the UART receive ISR which receives the bytes and pushes them into ring buffer. Back in the function, the data gets processed and is then returned to the main code.
Now, this functions for reading the data runs perfectly when i run in the main in a while(1) loop. But the moment i run this function within the timer ISR, the UART receive ISR doesn't get triggered at every byte. While the function expects 83 Bytes it goes into the ISR only once. I checked the priority and the UART (USCI_A0) has a higher priority then the timer (timer_A), so that can't be the problem.
Is this because MSP430 doesn't allow nesting of ISR's? or is it because triggering the UART ISR multiple times in the timer ISR isn't possible? and how could i make this work without using flagbits to trigger the data-read in my main code?
Cheers,
Caspar