CH340E芯片在Linux Ubuntu16.04下高波特率下接收數(shù)據(jù)丟失

使用CH340E芯片開發(fā)了一款工具,波特率用的比較高1500000,在Window上使用沒有任何問題。但在Ubuntu16.04上使用,發(fā)現(xiàn)接收數(shù)據(jù)時存在數(shù)據(jù)丟失的情況。發(fā)送端數(shù)據(jù)是每秒發(fā)送2500個21個Byte組成的數(shù)據(jù)包,安裝了官方的驅(qū)動也是這樣,用Python、C++都重寫了串口收發(fā)代碼,現(xiàn)象還是一樣的。同樣的Python代碼在windows上運(yùn)行沒有問題。數(shù)據(jù)丟失情況如下:

160????????????//接收了160個Byte

66cc0011b10103000006660801020a0b0c0d0e0f88? ? //正常的數(shù)據(jù)

66cc0011b101030000066666cc0011b10103000006660801020a0b0c0d0e0f88? ? //不正常的數(shù)據(jù)?0666后數(shù)據(jù)丟失

66cc0011b101030000066666cc0011b10103000006660801020a0b0c0d0e0f88? ??//不正常的數(shù)據(jù)?0666后數(shù)據(jù)丟失

66cc0011b101030000066666cc0011b10103000006660801020a0b0c0d0e0f88? ???//不正常的數(shù)據(jù)?0666后數(shù)據(jù)丟失

66cc0011b10103000006660801020a0b0c0d0e0f88??//正常的數(shù)據(jù)

66cc0011b10103000006660801020a0b0c0d0e0f88??//正常的數(shù)據(jù)

66

有沒有碰到類似問題的,謝謝!


該問題是usb驅(qū)動效率的問題,因為系統(tǒng)自帶的340串口驅(qū)動讀取不夠快,導(dǎo)致應(yīng)用層接收數(shù)據(jù)丟失,可以嘗試使用如下鏈接的驅(qū)動:

icon_rar.gifch34x-acm_V1.01.tar.gz



謝謝,我試一下。


您好,這個是驅(qū)動嗎?解壓后是一個1556418582177606的文件,還有亂碼。麻煩重新提供一下,謝謝。


您好,重命名文件后可以了。里面有2個驅(qū)動,ch34x-acm和cdc-acm,ch34x-acm編譯成功,cdc-acm編譯不成功。將ch34x-acm.ko重命名后替換掉?/lib/modules/$(uname -r)/kernel/drivers/usb/serial/ch341.ko?下面的老驅(qū)動,重啟后設(shè)備識別為/dev/ttyUSBACM0,應(yīng)該是加載成功了。但測試現(xiàn)象依舊會出現(xiàn)數(shù)據(jù)丟失的情況,沒有改善。請問是哪里操作不對嗎?謝謝。


只有登錄才能回復(fù),可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频