Tornador 2.2 Vxworks+S3C2440+摄像头
串口0:和模块通讯
串口1:控制台
遇到的问题是:
摄像头一直拍照的情况下,同时发送大量数据到模块,
非常容易出现串口0死掉的情况就是,接收还能正常接收,发送根本无法发送数据(接示波器无信号)
串口发送的原理是要发送数据的时候调用TxStart,写数据到串口FIFO,FIFO数据发完后产生中断后再写数据到FIFO
如此循环。
我加了写trace发现,TxtStart没有被调用,所以发送的动作根本无法启动。
请教各位这可能是什么原因?谢谢大家了
------解决方案--------------------------------------------------------
恩我也正好遇到类似的问题
,没搞定,关注中。
------解决方案--------------------------------------------------------
有没有可能由于某种原因FIFO的数据一直发送不完,导致循环退不出,所以驱动不会再去调用Txstart ?
------解决方案--------------------------------------------------------
另外的原因就是你的任务优先级设的不合理!
------解决方案--------------------------------------------------------
以前调试串口的时候也遇到类似的问题,大致是因为发生了溢出错误后导致 不能接受到数据了。
你可以试试把串口的中断优先级设置为最高,或者把波特率设置的小一点。
最好使用硬件协议通讯,或者软件协议XON/XOFF协议