我的st開發板需要常常送訊息給電腦。
目前使用的是dp83848來傳送網路封包,我的使用狀況來說,大概一秒會送500~1000個1600Byte的udp封包。
為了減少額外成本,希望能改為USB full speed的方式來傳輸。
於是,我在網路上找到一些virtual com port的範例來嘗試,雖然設定上的baud rate是115200,但是我以程式讀取com port來看,大約可以到1Mbit/s。
由於full speed USB的速度大約是12Mbit/s,我希望至少能改進到10Mbit/s,不用virtual com port也沒關係。
我也試著從host端以libusb直接讀取usb而非透過com port,但是兩次libusb_bulk_transfer()之間總是會漏掉數量不明的訊息內容,每次收到的內容大小也不同,讓我相當苦惱。
舉例來說:
開發板持續送出"abcdefg"
host端的libusb_bulk_transfer()收到的大概會是:
第一次libusb_bulk_transfer()
defg
abcdefg
abcdefg
abcde
第二次libusb_bulk_transfer()
有沒有什麼建議呢?謝謝。