国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MFC的機(jī)器人串口通訊軟件的設(shè)計(jì)*

2013-09-07 09:32:16丁素英
濰坊學(xué)院學(xué)報(bào) 2013年4期
關(guān)鍵詞:浮點(diǎn)數(shù)數(shù)據(jù)格式控件

丁素英,徐 剛

(1.濰坊學(xué)院,山東 濰坊 261061;2.南昌大學(xué),江西 南昌 330031)

無線數(shù)據(jù)傳送技術(shù)是當(dāng)今工業(yè)控制、計(jì)算機(jī)應(yīng)用、交通智能化等技術(shù)發(fā)展的一個(gè)熱點(diǎn)。本軟件借助藍(lán)牙模塊對(duì)機(jī)器人進(jìn)行無線控制。此模塊會(huì)在電腦端虛擬一個(gè)串口,通過MFC設(shè)計(jì),利用該串口對(duì)機(jī)器人進(jìn)行控制,可以對(duì)機(jī)器人發(fā)送控制命令并能夠記錄機(jī)器人回傳的數(shù)據(jù)。軟件能夠自由選擇串口,滿足不同電腦的要求;能夠顯示已經(jīng)發(fā)送的數(shù)據(jù);顯示已接受到的數(shù)據(jù)。由于串口波特率的限制,數(shù)據(jù)通過IEEE754協(xié)議轉(zhuǎn)換為四字節(jié)。電腦端發(fā)送數(shù)據(jù)格式,采用“0xA5+命令+數(shù)據(jù)類型和讀/寫/保存+四個(gè)字節(jié)的數(shù)據(jù)+0x5A”(共8個(gè)字節(jié));電腦端接收數(shù)據(jù)格式,采用“0xA5+命令+數(shù)據(jù)類型+四個(gè)字節(jié)的數(shù)據(jù)+0x5A”(共8個(gè)字節(jié))。

1 IEEE754協(xié)議

1985年IEEE提出了IEEE754標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)規(guī)定基數(shù)為2,階碼E用移碼表示,尾數(shù)M用原碼表示,根據(jù)二進(jìn)制的規(guī)格化方法,數(shù)值的最高位總是1,該標(biāo)準(zhǔn)將這個(gè)1缺省存儲(chǔ),使得尾數(shù)表示范圍比實(shí)際存儲(chǔ)的多一位。IEEE754標(biāo)準(zhǔn)中有三種形式的浮點(diǎn)數(shù):短浮點(diǎn)數(shù)、長(zhǎng)浮點(diǎn)數(shù)和臨時(shí)浮點(diǎn)數(shù),具體格式見表1。此軟件設(shè)計(jì)采用了短浮點(diǎn)數(shù)據(jù)進(jìn)行傳輸。

表1 IEEE標(biāo)準(zhǔn)格式

2 功能模塊設(shè)計(jì)

2.1 MFC串口通訊控件設(shè)計(jì)

在VC開發(fā)環(huán)境下新建一個(gè)基于對(duì)話框的MFC程序,根據(jù)需要,選擇相應(yīng)的控件。此軟件中添加了靜態(tài)文本框,EDIT box,BUTTON BOX,CHECK BOX,這幾類控件,排版布局,添加控件相應(yīng)的函數(shù)。

添加工程->Components and Controls->Registered ActiveX Controls文件夾,選擇 Microsoft Communications Controls,version 6.0。然后insert,安裝控件后,在控件欄最下面會(huì)多出一個(gè)電話一樣的控件,這就是MSCOMM串口控件,把它拖出來放到空白處即可。添加串口控件后,對(duì)選擇串口的四個(gè)按鈕添加相應(yīng)的處理函數(shù),在函數(shù)內(nèi)加入相應(yīng)串口處理程序。

以COM1為例,對(duì)應(yīng)Button1按鍵,程序代碼如下:

按照類似方式,對(duì)四個(gè)串口選擇按鈕編寫對(duì)應(yīng)函數(shù)。

2.2 發(fā)送數(shù)據(jù)格式設(shè)計(jì)

在發(fā)送區(qū)域選擇操作類型、數(shù)據(jù)格式,填寫對(duì)應(yīng)命令號(hào)與數(shù)據(jù),生成一幀指令。相應(yīng)程序代碼如下:

2.3 接收數(shù)據(jù)處理設(shè)計(jì)

對(duì)串口接收到的所有數(shù)據(jù)進(jìn)行處理。相應(yīng)程序代碼如下:

3 結(jié)論

在電腦端建立一對(duì)模擬串口com3、com2,模擬電腦與機(jī)器人間的數(shù)據(jù)傳輸。

通過填寫發(fā)送區(qū)域,生成一幀命令,發(fā)送后,發(fā)送框顯示發(fā)送結(jié)果,串口助手受到8字節(jié)16進(jìn)制數(shù)據(jù):01為命令號(hào),float型與讀操作組成第三個(gè)字節(jié)11,0000F642為123按照IEEE754轉(zhuǎn)換后的四字節(jié)數(shù)據(jù),命令兩端為校驗(yàn)碼,如圖1所示。

圖1 數(shù)據(jù)發(fā)送檢驗(yàn)

串口助手發(fā)送A501110000F6425A。軟件接收到命令號(hào)為01,顯示“1單片機(jī)接收成功”。串口助手發(fā)送A502110000F6425A。軟件接收,接收框顯示數(shù)據(jù),將123用科學(xué)技術(shù)法表示。數(shù)據(jù)接收如圖2所示。

圖2 數(shù)據(jù)接收檢測(cè)

通過串口通訊、發(fā)送數(shù)據(jù)格式處理和接收數(shù)據(jù)處理的設(shè)計(jì),成功實(shí)現(xiàn)了軟件的設(shè)計(jì)要求,完成了軟件功能。

[1]孫鑫.VC++深入詳解[M].北京:電子工業(yè)出版社,2006.

[2]辛長(zhǎng)安.VC++編程技術(shù)與難點(diǎn)剖析[M].北京:清華大學(xué)出版社,2002.

[3]吳乃陵,李海文.C++程序設(shè)計(jì)實(shí)踐教程[M].北京:高等教育出版社,2006.

[4]沈顯君,楊進(jìn)才,張勇.C++語(yǔ)言程序設(shè)計(jì)教程[M].2版.北京:清華大學(xué)出版社出版,2010.

猜你喜歡
浮點(diǎn)數(shù)數(shù)據(jù)格式控件
四種Python均勻浮點(diǎn)數(shù)生成方法
關(guān)于.net控件數(shù)組的探討
軟件(2018年7期)2018-08-13 09:44:42
在智能交通系統(tǒng)中PLC數(shù)據(jù)格式轉(zhuǎn)換方法的研究
在C語(yǔ)言中雙精度浮點(diǎn)數(shù)線性化相等比較的研究
非精確浮點(diǎn)數(shù)乘法器設(shè)計(jì)
論子函數(shù)在C語(yǔ)言數(shù)據(jù)格式輸出中的應(yīng)用
DWG與SHP數(shù)據(jù)格式互轉(zhuǎn)換方法研究——以龍巖規(guī)劃測(cè)繪數(shù)據(jù)為例
基于ArcGIS的規(guī)劃數(shù)據(jù)格式轉(zhuǎn)換研究
就這樣玩會(huì)VBA中常見的自定義控件
電腦迷(2012年24期)2012-04-29 00:44:03
Visual Basic處理浮點(diǎn)DSP芯片數(shù)據(jù)的方法
炎陵县| 吉水县| 汕尾市| 中山市| 新建县| 花莲县| 乐东| 庆云县| 耿马| 余干县| 泾阳县| 花莲县| 肇源县| 方城县| 郁南县| 犍为县| 乐都县| 绥中县| 西乌珠穆沁旗| 都匀市| 英超| 旬邑县| 筠连县| 湛江市| 固镇县| 朝阳县| 黔西| 龙州县| 巴林右旗| 巴青县| 全椒县| 阿坝县| 嘉定区| 康乐县| 福安市| 大姚县| 北宁市| 通许县| 巴里| 合阳县| 廉江市|