天天看點

【工業序列槽和網絡軟體通訊平台(SuperIO)教程】九.重寫通訊接口函數,實作特殊通訊方式

SuperIO相關資料下載下傳: http://pan.baidu.com/s/1pJ7lZWf

1.1    統一的IO接口

開發一套裝置驅動同時具備序列槽和網絡通訊能力,通訊接口在邏輯上是統一的,在此基礎上序列槽和網絡也有自己的IO通訊特點,根據不同的通訊方式,可以把IIOChannel執行個體轉換成ISessionSocket或ISessionCom執行個體。如下圖:

【工業序列槽和網絡軟體通訊平台(SuperIO)教程】九.重寫通訊接口函數,實作特殊通訊方式

1.2     通訊要求

一個請求指令分兩次發送,每次發送資料時的序列槽校驗位不同。先發送位址資訊,這時序列槽的配置為Baud,m,8,1;再發送請求指令資訊,這時的序列槽配置為Baud,s,8,1。這樣完成一次請求資料的指令。如下圖:

【工業序列槽和網絡軟體通訊平台(SuperIO)教程】九.重寫通訊接口函數,實作特殊通訊方式

1.3    重寫通訊接口

裝置驅動繼承SuperIO.Device.RunDevice1抽象類,裡邊有一個虛函數Send(IIOChannel io, byte[] sendbytes),io參數為通訊操作執行個體,sendbytes參數為要發送的資料資訊,可以重寫這個接口函數,完成特殊的發送資料要求。如下圖:

【工業序列槽和網絡軟體通訊平台(SuperIO)教程】九.重寫通訊接口函數,實作特殊通訊方式

接收完資料,需要把序列槽設定修改成預設的配置,避免影響其他裝置驅動的通訊,如下圖:

【工業序列槽和網絡軟體通訊平台(SuperIO)教程】九.重寫通訊接口函數,實作特殊通訊方式

作者QQ:504547114

交流QQ群:54256083

官方網址: http://www.bmpj.net

繼續閱讀