This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Problems with using DINT and EINT with Flash API

Other Parts Discussed in Thread: TMS320F2811

Hi,

I am using a TMS320F2811 device. Currently I am using the Flash API to flash a particular sector. I am using the Flash API and its functions by copying to RAM when the application begins using ramfuncs. 

I am receiving data from SCI and put it in a buffer in RAM and then use it to flash the sector. I use a Rx and Tx interrupt to send and receive data via SCI.

Once i receive the first command from SCI, i try to erase the flash, so during this erase operation, I use DINT and EINT command to disable interrupts before flash erase and once its successful, i try to enable interrupts.

After EINT call, i receive some data via my SCI port, but i do not see anything in my SCI interrupt and i am unable to send data via Tx interrupt as well. Using a SCI port sniffer i can see that i am receiving data in my SCI port, but it does not come inside my code.

Is there anything wrong in the usage of DINT and EINT? How do i use them properly to get my SCI interrupts to work again normally if i use DINT and EINT for every flash api usage.

I even put the SCI Tx an Rx interrupt ISR in ram via the ramfuncs pragma.

Thanks in advance,

Aviinaash S