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

?

激光打靶多路數(shù)據(jù)通信系統(tǒng)設(shè)計(jì)

2012-09-12 03:22:48銳,
電子測試 2012年11期
關(guān)鍵詞:數(shù)據(jù)通信控件串口

周 銳, 周 健

(1. 中北大學(xué) 信息與通信工程學(xué)院, 太原 030051; 2.國營781廠, 蘭州 730000)

0 引言

在我國部隊(duì)中,戰(zhàn)士在進(jìn)行射擊打靶訓(xùn)練時(shí),現(xiàn)在一般仍采取傳統(tǒng)的實(shí)彈射擊訓(xùn)練方法,激光模擬訓(xùn)練器材還沒有裝備使用,實(shí)彈射擊訓(xùn)練不僅浪費(fèi)彈藥,而且危險(xiǎn)性高,組織實(shí)施比較困難。用激光射擊系統(tǒng)模擬實(shí)彈射擊,節(jié)省了彈藥的同時(shí)又能提高訓(xùn)練的安全性并獲得實(shí)彈射擊同樣的效果,大大提高戰(zhàn)士們的實(shí)際水平。利用含有激光技術(shù)、單片機(jī)技術(shù)、傳感器和微電子技術(shù)的模擬射擊訓(xùn)練系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn),對國防建設(shè)現(xiàn)代化,軍事訓(xùn)練智能化、提高部隊(duì)整體素質(zhì),以及節(jié)約國防開支都具有重要意義。

1 系統(tǒng)總體設(shè)計(jì)

為了提高系統(tǒng)在通信過程中的性能,本系統(tǒng)在設(shè)計(jì)時(shí)采用RS485總線進(jìn)行串行數(shù)據(jù)的通信。系統(tǒng)中計(jì)算機(jī)通過調(diào)用串口控件與外部的RS232C進(jìn)行通信,RS232C與RS485總線標(biāo)準(zhǔn)間的轉(zhuǎn)換通過RS232/RS485轉(zhuǎn)換器來實(shí)現(xiàn)。各單片機(jī)與RS485總線的連接通過SN75176芯片來實(shí)現(xiàn)。

本系統(tǒng)的設(shè)計(jì)容量為12個(gè)終端和一臺控制器(計(jì)算機(jī)),2者都與RS485總線進(jìn)行連接通信,根據(jù)系統(tǒng)設(shè)計(jì)的具體要求,其總體設(shè)計(jì)框圖如圖1所示。

圖1 多路數(shù)據(jù)通信系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)

2 系統(tǒng)硬件和軟件設(shè)計(jì)

2.1 RS485總線電路設(shè)計(jì)

RS485是一種多發(fā)送器的電路標(biāo)準(zhǔn),電路結(jié)構(gòu)是在平衡連接電纜兩端由終端電阻,在平衡電纜上掛發(fā)送器、接收器、組合收發(fā)器。在一般的RS485總線多機(jī)串行通信系統(tǒng)設(shè)計(jì)中,均采用主從式結(jié)構(gòu)。圖2所示為采用SN75176芯片和RS485總線構(gòu)成的單片機(jī)間多機(jī)通信的原理圖。

圖2 采用RS485構(gòu)成的多單片機(jī)通信原理圖

如圖2所示,在總線末端需要接一個(gè)匹配電阻,來吸收總線上的反射信號,保證正常傳輸信號干凈、無毛刺。匹配電阻的取值應(yīng)該與總線的特性阻抗相當(dāng)。

2.2 微機(jī)的串行通信協(xié)議設(shè)計(jì)

要保證通信的可靠性,必須有嚴(yán)格的通信協(xié)議。下面是本設(shè)計(jì)中涉及到的最基本的幾條協(xié)議:

(1)系統(tǒng)中從機(jī)容量最多可為255臺,分別設(shè)置其地址為00H~FEH;

(2)地址FFH是對所有從機(jī)都起作用的一條控制命令,命令各個(gè)從機(jī)可以恢復(fù)SM2=1時(shí)的狀態(tài);

(3)數(shù)據(jù)塊的長度設(shè)為16個(gè)字節(jié);

(4)主從機(jī)間的聯(lián)絡(luò)過程為:主機(jī)首先發(fā)送地址,被尋址從機(jī)返回本機(jī)地址給主機(jī),如果判斷其地址相符后,主機(jī)給其發(fā)送控制命令,該從機(jī)根據(jù)主機(jī)的命令回送主機(jī)本機(jī)的狀態(tài),如果主機(jī)判斷狀態(tài)正常,則開始發(fā)送或接收數(shù)據(jù),其第一個(gè)字節(jié)是數(shù)據(jù)塊的長度;

(5)設(shè)定主機(jī)發(fā)送的控制命令代碼為:

00:要求從機(jī)接收數(shù)據(jù)塊;

01:要求從機(jī)發(fā)送數(shù)據(jù)塊;

(6)從機(jī)狀態(tài)字的基本格式為:

D7 D6 D5 D4 D3 D2 D1 D0 ERR 0 0 0 0 0 TRDY RRDY

ERR=1,從機(jī)接收到非法命令;

TRDY=1,從機(jī)發(fā)送準(zhǔn)備就緒;

RRDY=1,從機(jī)接收準(zhǔn)備就緒。

本系統(tǒng)采用的標(biāo)準(zhǔn)是異步串行通信模式,傳輸?shù)臄?shù)據(jù)格式設(shè)置為11位,即:1位起始位、8位數(shù)據(jù)位、1位校驗(yàn)位、1位停止位。

通信協(xié)議包括3種幀格式:呼叫幀、應(yīng)答幀和數(shù)據(jù)幀。

呼叫幀是由上位機(jī)發(fā)出的,它的格式為起始字符、下位機(jī)地址和異或校驗(yàn)位。依據(jù)其功能細(xì)分為呼叫幀1和呼叫幀2,呼叫幀1用來輪詢各臺下位機(jī)的狀態(tài);呼叫幀2則用來關(guān)閉輪詢,而只與一臺下位機(jī)進(jìn)行通信,接下來上位機(jī)開始與某一臺下位機(jī)通過數(shù)據(jù)幀進(jìn)行一對一的大量數(shù)據(jù)通信。

應(yīng)答幀只能由下位機(jī)發(fā)出。當(dāng)下位機(jī)收到呼叫幀后,把本機(jī)地址和當(dāng)前狀態(tài)回發(fā)給上位機(jī)。

上下位機(jī)都能發(fā)出數(shù)據(jù)幀,這是上下位機(jī)間進(jìn)行大量數(shù)據(jù)傳輸?shù)幕靖袷健T诎l(fā)數(shù)據(jù)幀前,上位機(jī)通過呼叫幀2與某一臺下位機(jī)形成一對一的連接。

2.3 通信功能實(shí)現(xiàn)的軟件設(shè)計(jì)

控制AT89S52單片機(jī)串行口的控制寄存器共有2個(gè):特殊功能寄存器SCON和PCON,分別用于設(shè)定4種不同的通信方式及定義波特率。它的串行口工作方式3是可變波特率的9位數(shù)據(jù)異步通信方式,發(fā)送或接收一幀數(shù)據(jù)為11位:1位起始位(0)、8位數(shù)據(jù)位、l位附加的校驗(yàn)位和1位停止位(1)。其中附加的第9位數(shù)據(jù)是可編程的,利用這一可控的第9位數(shù)據(jù),同時(shí)設(shè)置好傳輸波特率和數(shù)據(jù)傳輸格式就可以實(shí)現(xiàn)多機(jī)通信。主機(jī)與從機(jī)的通信程序流程框圖如圖3所示。其中:左圖為發(fā)送流程圖;右圖為接收流程圖。

圖3 通信程序設(shè)計(jì)流程圖

2.4 Visual C++編程實(shí)現(xiàn)串口通信

本系統(tǒng)使用Visual C++中的MScomm控件實(shí)現(xiàn)串口通信功能。MScomm是Microsoft公司提供的簡化Windows下串行通信編程的ActiveX控件,它為應(yīng)用程序提供了通過串行接口收發(fā)數(shù)據(jù)的簡便方法。

(1)在建立的Project中添加了類CMSComm,打開“Project->Add to Project ->Components->and Controls-> Registered ActiveX Controls”菜單選擇Components: Microsoft Communi -cations Control version 6.0;(2)在對話框上添加MSComm控件及其ID的控制變量;(3)對串口進(jìn)行初始化,設(shè)置MSComm控件的屬性;(4)添加串口事件的消息處理函數(shù)OnComm()函數(shù),在函數(shù)中編寫數(shù)據(jù)處理代碼;(5)編寫串口發(fā)送等其它代碼;(6)關(guān)閉串口。

3 系統(tǒng)測試與結(jié)論

圖4是用Microsoft Visual Studio 2008編寫測測試程序,從圖中可以看出,系統(tǒng)達(dá)到了設(shè)計(jì)目標(biāo),基本實(shí)現(xiàn)了激光打靶數(shù)據(jù)通信的功能。后續(xù)的工作還要完善計(jì)算機(jī)上位機(jī)程序,完成激光打靶數(shù)據(jù)處理系統(tǒng)和數(shù)據(jù)庫的建立。

圖4 測試程序顯示結(jié)果

本文所述的激光打靶多路數(shù)據(jù)通信系統(tǒng)滿足了我軍部隊(duì)射擊模擬訓(xùn)練的需要。體積小,經(jīng)濟(jì)實(shí)用,完全擺脫了其他電子訓(xùn)練設(shè)備臃腫的外貌。操作方便,維護(hù)簡單,提高了部隊(duì)進(jìn)行群體射擊訓(xùn)練的效率。解決了激光打靶系統(tǒng)的連網(wǎng)問題,滿足了部隊(duì)群體訓(xùn)練的需要。

[1]馬明建,周長城.數(shù)據(jù)采集與處理技術(shù)[M].西安:西安交通大學(xué)出版社,1999.

[2]Intel Corporation.MCS51 Microcontroller Family Programmer’s Guide and Instruction Set[R].Intel Corporation ,1997.

[3]蔡美琴.MCS-51系列單片機(jī)系統(tǒng)及其應(yīng)用[M].北京:高等教育出版社,1992.

[4]毛謙敏.單片機(jī)原理及應(yīng)用教程[M].北京:國防工業(yè)出版社,2005.

[5]周志光,劉定良.單片機(jī)技術(shù)與應(yīng)用[M].長沙:中南大學(xué)出版社,2005.

[6]M Asim Khan.PC RS422 INTERFACE,2002[EB/OL].http://wenku.baidu.com/view/0b790dd6 360cba1aa811da09.html.

[7]東方人華,李秀敏,凌宇欣.Visual C++ 6.0范例入門與提高[M].北京:清華大學(xué)出版社,2003.

[8]劉曉華.精通MFC[M].北京:電子工業(yè)出版社,2003.

猜你喜歡
數(shù)據(jù)通信控件串口
淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
基于快牙平臺實(shí)現(xiàn)全站儀與計(jì)算機(jī)的數(shù)據(jù)通信
關(guān)于.net控件數(shù)組的探討
軟件(2018年7期)2018-08-13 09:44:42
監(jiān)測系統(tǒng)接口數(shù)據(jù)通信方式
USB接口的多串口數(shù)據(jù)并行接收方法探索
一種高效可靠的串行數(shù)據(jù)通信協(xié)議及處理算法
基于藍(lán)牙串口適配器的GPS接收機(jī)與AutoCAD的實(shí)時(shí)無線通信
地礦測繪(2015年3期)2015-12-22 06:27:26
TCN實(shí)時(shí)協(xié)議棧過程數(shù)據(jù)通信研究
基于并行控制的FPGA多串口拓展實(shí)現(xiàn)
就這樣玩會VBA中常見的自定義控件
電腦迷(2012年24期)2012-04-29 00:44:03
弥勒县| 大宁县| 竹溪县| 竹山县| 三门县| 天祝| 垫江县| 大同县| 休宁县| 密山市| 莆田市| 电白县| 敦煌市| 威宁| 石河子市| 正阳县| 九江市| 邳州市| 肇源县| 磴口县| 从江县| 南昌县| 临汾市| 奉节县| 新宁县| 永吉县| 达孜县| 扶绥县| 营口市| 炎陵县| 西宁市| 霍林郭勒市| 北辰区| 龙州县| 富蕴县| 泰兴市| 长宁区| 临海市| 永吉县| 香河县| 潞西市|