最近使用28335给上位机通讯,上位机查询28335工作状态,28335每次需要回复20字节数据,288335发送fifo只有16字节,不知道能不能这样写
for(i=0;i<20;i++)
SciaRegs.SCITXBUF = a;
如果每次发送完成判断发送状态位是肯定没有问题,这样的话程序发送等待时间是不是就很长了,不知道有没有好的解决方法
for(i=0;i<20;i++)
{
while (ScicRegs.SCICTL2.bit.TXRDY == 0);
SciaRegs.SCITXBUF = a;
}
yi zhang16:
回复 rookiecalf:
好像目前只有这种方法了,查看FIFO剩余空间决定是否发送剩余字节,我测试过,16字节发送占用cpu时间2us不到,如果查询等待的话,9600波特率一个字节是1ms左右