各位前辈,我在采用TMS320F28335的SCI通信时,SCI的FIFO模式的深度最大为16级,接收数据最大为16字符,我想要获取一个31字符的数据,请问该如何获取正确的数据?请问需要如何对我现有的代码进行修改?
/*
* SCIA接收中断服务函数
*/
interrupt void SciaRxFifoIsr(void)
{
int i = 0;
while(SciaRegs.SCIFFRX.bit.RXFFST!=1)
{
m[i] = SciaRegs.SCIRXST.all;
i++;
}
msg = "You just sent the following characters:\r";
Scia_msg(msg);
Scia_msg(m);
//
SciaRegs.SCIFFRX.bit.RXFFOVRCLR = 1;
SciaRegs.SCIFFRX.bit.RXFFINTCLR = 1;
PieCtrlRegs.PIEACK.bit.ACK9 = 1; //PIEACK:PIE中断应答寄存器
//X=1说明来自中断组的中断向量已经向CPU发送了中断请求,该中断组的其他中断项目目前被锁存;向相应的中断位写1,可以让该位清零,并且让PIE模块产生一个脉冲给CPU中断
//以使得CPU可以响应该组中断中尚未被相应的中断
}