需求:開發同時支持切換不同型號CAN卡的上位機。
之前參考ZLGUSBCAN例程,調試程序,硬件型號是USBCAN-2E-U,因為以前沒用過注冊事件,它里面的接收和發送用的都是注冊事件:以前老是想知道怎樣才能像CANTest一樣可以實時收發CAN數據並顯示,看了Demo,用的是注冊事件,恍然大悟。
問題:發數據一直發布出去
用探針查了好久,發現有連線連錯了:歸根結底是“產生接收事件”和“產生發送事件”是兩個獨立的事件,不要混為一談。
注冊事件用法:
創建用戶事件>>注冊用戶事件:
>>事件結構中添加用戶事件:
>>產生用戶事件:
>>取消用戶事件>>銷毀用戶事件:
操作步驟:
OpenDevice>>設置波特率>>設置濾波(可略)>>InitCAN>>StartCAN>>Tx>>Rx>>CloseDevice
DeviceInd指設備數量,從0開始,Reserved默認0.
設置波特率:1000Kps 0x00060003 800Kps 0x00060004 500Kps 0x 0006 0007 250Kps 0x001C 0008
InitCAN:
StartCAN:
Ttansmit:
Len指發送數量,這里設成1,每次發送1條;如果設N,就是每次發送N條,所以發送的pSend是一個數組。
Receive:
Receive由兩部分組成,一個是GetReceiveNumber,ReturnType是不是返回的數量?一個是Receive,
CloseDevice: