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.

想请问下SCI中FIFO中断的触发过程?

Other Parts Discussed in Thread: CONTROLSUITE

我看了下sci loopback例程里定义了以下数组

Uint16 sdataA[2]; // Send data for SCI-A
Uint16 rdataA[2]; // Received data for SCI-A
Uint16 rdata_pointA; // Used for checking the received data

然后主函数里给sdata数组写入数据

for(i = 0; i<2; i++)
{
sdataA[i] = i;
}

rdata_pointA = sdataA[0];

然后interrupt void sciaRxFifoIsr(void)就被触发了?

主要有以下疑惑:

1.sdata[]和fifo的关系是什么呢?程序里这两个好像完全没有关联,为什么给sdata写入数据后fifo就能进入中断开始发送数据呢?

2.看了下数据手册fifo的数据手册,好像并没有16个字节存放数据的FIFO寄存器,那么是怎么访问FIFO中的数据的呢?