基于ARM的醫(yī)用數(shù)據(jù)采集系統(tǒng)的人機(jī)接口設(shè)計(jì)
K1=(Read_x[1]-Read_x[0])/Set_X[1]-Set_x[0]);
K2=(Read_X[3]-Read_X[2])/Set_X[3]-Set_x[2]);
KX=(K1+K2)/2;∥對(duì)兩次運(yùn)算的值求平均得到最終的X比例系數(shù)
求得比例系數(shù)后,再以設(shè)置的第5點(diǎn)作為基準(zhǔn)點(diǎn)(Set_X[4]),這樣就可求出任意觸摸點(diǎn)的物理坐標(biāo):
X=(ReadX-Read_X[5])/KX+Set_X[4];
同理,也可求出Y軸的物理坐標(biāo)。
2.2 Modbus通信協(xié)議
本系統(tǒng)采用Modbus作為手柄控制器與核心板之間的通信協(xié)議。Modbus通信使用主-從技術(shù),即僅一設(shè)備(主設(shè)備)能初始化傳輸(查詢),其它設(shè)備(從設(shè)備)根據(jù)主設(shè)備查詢提供的數(shù)據(jù)作出相應(yīng)反應(yīng),主機(jī)查詢和從機(jī)回復(fù)的消息結(jié)構(gòu)如圖7所示。主設(shè)備可單獨(dú)和從設(shè)備通信,也可以廣播方式和所有從設(shè)備進(jìn)行通信。如果單獨(dú)通信,則從設(shè)備返回一消息作為回應(yīng);而如果是以廣播方式查詢。則不作任何回應(yīng)。Modbus協(xié)議建立了主設(shè)備查詢格式,包括設(shè)備(或廣播)地址、功能代碼、所有要發(fā)送的數(shù)據(jù)錯(cuò)誤檢測域。從設(shè)備回應(yīng)消息也由Modbus協(xié)議構(gòu)成,包括確認(rèn)要行動(dòng)的域、任何要返回的數(shù)據(jù)、和錯(cuò)誤檢測域。如果在消息接收過程中發(fā)生錯(cuò)誤,或從設(shè)備不能執(zhí)行其命令,那么,從設(shè)備將建立一個(gè)錯(cuò)誤消息并把它作為回應(yīng)發(fā)送出去。
Modbus協(xié)議有ASCII和RTU兩種傳輸模式,但在同一個(gè)Modbus網(wǎng)絡(luò)上的所有設(shè)備都必須選擇相同的傳輸模式和串口參數(shù)。本設(shè)計(jì)采用RTU模式,即在消息中的每8 Bit字節(jié)都包含兩個(gè)4 Bit的十六進(jìn)制字符,因而在同樣的波特率下,可比ASCII方式傳送更多的數(shù)據(jù)。RTU模式的消息結(jié)構(gòu)如圖8所示。當(dāng)手柄控制器檢測到有按鍵被按下時(shí),就將被按下鍵的鍵碼按RTU消息幀的結(jié)構(gòu)并通過串口發(fā)送給核心板。核心板接收到手柄控制器發(fā)送的信息后,首先進(jìn)行CRC校驗(yàn),校驗(yàn)正確后,核心板將根據(jù)鍵碼進(jìn)行相應(yīng)操作,并且回應(yīng)手柄控制器,若CRC校驗(yàn)出錯(cuò),則核心板回應(yīng)手柄控制器錯(cuò)誤信息,從而完成一次通信后,系統(tǒng)便等待下一次通信。
3 結(jié)束語
本文所設(shè)計(jì)的人機(jī)接口通過實(shí)際使用證明其通訊穩(wěn)定可靠,操作簡單方便,完全可以滿足醫(yī)用數(shù)據(jù)采集系統(tǒng)的要求。并且該設(shè)計(jì)具有很強(qiáng)的移植性,可以根據(jù)使用系統(tǒng)的復(fù)雜性進(jìn)行完善。因而具有相當(dāng)廣泛的使用范圍。
評(píng)論