系统是远峰提供的S3C2440+WINCE4.2,通过2440的UART0接口数据,当数据量较大时(超过100K)出现丢失数据现象,通过在驱动中读取2440的UART0的出错状态寄存器,发现硬件FIFO有溢出错误,就是说数据没有来得及读取而被覆盖了,提高驱动和上层接收应用程序的优...
全文
回复(13) 2007-01-15 09:12 来自版块 - Wince 程序开发
表情
harktrip你们方向都错了~ 我的才设FIFO最低等级, 但传送接收数百MB 未见任何错误(115200-8-N-1) (只使用RXD和TXD,没CTS和RTS线) 只要AP每次下令前把Buffer清掉,就搞定了(2008-08-15 22:52)
wbcp2000我也到此问题,发送超出40个大小的字节,就有可能出现丢包现象。 我是写应用程序的,感觉需要优化驱动来解决问题。(2008-08-15 22:15)
bluefish各位老大们,我现在也遇到和楼主同样的问题,请教下各位是如何解决的?多谢(2008-03-11 11:16)
lStoneCN发数据的时候丢包有没有遇到过?我这里是发数据丢。(2007-03-13 20:23)
powerall888我在57600的波特率下,如果通过pc机向ce平台发送数据,WriteFile一次写10k字节,发现ce平台能够完整地接收到10k字节的数据; 如果在115200的波特率下,ce平台就不能完整地接收到10k字节的数据,有时丢的多,有时少。(2007-03-02 11:21)
powerall888一楼的兄弟解决没有啊? 本人碰到和你一模一样的问题。(2007-03-02 11:16)
microsun一楼的兄弟解决没有啊?我最近也在写串口的驱动,我觉得可能有这种可能: 你发送这么大的数据,在接收的同时是不是也在发送啊?如果是这样,可能需要平衡两者的CPU使用率,就是不要让发送或接收占用太多的时间. 而且你打调试信息能改善,从这个现象判断,有这两种可能:1.接收速度太快,CP...(2007-02-10 18:48)
zhengshijie事实上4.2 S3C2440 BSP默认是使能AFC(自动流控),可以看到s2440.h有定义: #define USE_AFC 1 但是板子侧有流控,而发送方没有流控反而更会出问题,所以要么发送方使能流控,或把板子侧流控禁掉。还有就是系统的主频最好...(2007-02-06 13:19)
zhoumc“往串口输出一些打印信息,接收数据就没有丢了”,是不是对方忙于接收串口中的数据,从而减少了发送数据?所以你这方接收到的数据减少,从而错误率下降。你可以再作个试验,在发送方每发送一个字节睡一毫秒,看错误率是否下降。如果有改善的话,可能还是你这边的接收速率太慢所致,解决的根本办法是增...(2007-01-28 10:51)
microsun三星的系统我没有用过,不知道具体是怎么回事, 你认为是读取串口速度太低引起的,可以把从FIFO中读取数据的代码移到ISR中, public\common\oak\drivers\serial\ISR16550目录下就是WINCE提供的ISR代码,可以看看能否适用于你的系统.(2007-01-27 17:12)

返回顶部