999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

單片機(jī)與PC串行通信在實(shí)時(shí)控制系統(tǒng)中的應(yīng)用

2011-12-31 00:00:00宣明臻
大觀周刊 2011年40期

摘要:單片機(jī)與PC串行通信可用于實(shí)時(shí)控制系統(tǒng)中。本文首先簡單介紹了實(shí)時(shí)控制系統(tǒng)中的微處理器系統(tǒng),接著定義了串口通信協(xié)議,并在此基礎(chǔ)上采用多線程編程工具CserialPort類,用VC++編寫基于對(duì)話框的MFC串口通信程序來控制移動(dòng)機(jī)器人的行進(jìn)。通過實(shí)驗(yàn)驗(yàn)證,該串口通信設(shè)計(jì)方案能較好地控制移動(dòng)機(jī)器人,達(dá)到了預(yù)期效果。

關(guān)鍵字:PC機(jī) 單片機(jī) 通信協(xié)議 CserialPort類 VC++

1 引言

對(duì)于傳統(tǒng)的移動(dòng)機(jī)器人,多采用紅外遙控的方式控制移動(dòng)機(jī)器人的行進(jìn),而目前移動(dòng)機(jī)器人的自主行進(jìn)方式還不太成熟,所以采用串口通訊的方式來控制移動(dòng)移動(dòng)機(jī)器人的行進(jìn)也是不錯(cuò)的選擇。并且串口通訊簡單靈活易控制,通訊過程中所采用的協(xié)議具有統(tǒng)一的標(biāo)準(zhǔn)。因此,無論是在工控系統(tǒng)、遙感控制、實(shí)時(shí)控制系統(tǒng)中都得到了廣泛應(yīng)用。

2 實(shí)時(shí)控制系統(tǒng)介紹

實(shí)時(shí)控制系統(tǒng)主要包括上位機(jī)(PC機(jī))、單片機(jī)、串口通信模塊以及2.4G的無線攝像頭視頻采集模塊。該系統(tǒng)主要實(shí)現(xiàn)功能是利用2.4G的無線攝像頭采集移動(dòng)機(jī)器人周邊的環(huán)境,根據(jù)不同的環(huán)境給單片機(jī)發(fā)送不同指令,實(shí)現(xiàn)方法是利用串口通信把上位機(jī)(PC機(jī))所發(fā)送指令通過串口發(fā)送到單片機(jī),進(jìn)而遠(yuǎn)程控制移動(dòng)機(jī)器人的行進(jìn)。

3 串行通信設(shè)計(jì)

串行通信設(shè)計(jì)包括選擇合適的微處理器系統(tǒng)、制定串口通信協(xié)議、串口通信編程、人機(jī)控制界面。其主要目的是通過串口通信把PC機(jī)發(fā)送的不同組合指令給單片機(jī),單片機(jī)解析出相應(yīng)指令,根據(jù)指令來控制機(jī)器人的前、后、左、右運(yùn)動(dòng)。

3.1 微處理器系統(tǒng)。AT89C2051是Atmel 公司生產(chǎn)的與MCS-51系列兼容的單片機(jī)。內(nèi)含:一個(gè)精密模擬比較器、2k字節(jié)的FlashEEPROM、15根I/O引線、128字節(jié)RAM、1個(gè)五向量兩級(jí)中斷結(jié)構(gòu)、2個(gè)16位定時(shí)器/計(jì)數(shù)器,1個(gè)全雙工串行口等。由于該系統(tǒng)用于簡單的移動(dòng)機(jī)器人控制,且從性價(jià)比方面考慮,AT89C2051完全滿足設(shè)計(jì)的要求。

3.2 串口通信協(xié)議。通訊口設(shè)置為“9600,N,8,1”,控制指令為:88HT88H ,T有四種可能,分別為01H、02H、03H、04H,對(duì)應(yīng)的控制分別為前、后、左、右。其中確認(rèn)幀為67H。當(dāng)單片機(jī)收到的控制指令為所定義的格式時(shí),即接收到的信號(hào)無差錯(cuò),確定為控制機(jī)器人行進(jìn),單片機(jī)就發(fā)送確認(rèn)幀67H給PC機(jī),如果在某一時(shí)間間隔內(nèi)未收到確認(rèn)幀就重新發(fā)送指令。

3.3 串口通信編程。PC機(jī)通過串口發(fā)送指令給單片機(jī),通過串口發(fā)送指令就必須涉及到串口通信程序。對(duì)串口通信編程的方式很多,如Cserial 類、Windows API串口編程、MSCOMM控件、Qt串口、多線程編程工具CserialPort類,在此選用了CSerialPort類。CSerialPort類是基于多線程的,由Remon Spekreijse提供的免費(fèi)串口類。在該類中,其主程序工作流程仍然是打開串口、配置串口、讀寫操作以及關(guān)閉串口。

3.3.1 設(shè)置串口參數(shù)InitPort()。串口的通信參數(shù)一般涉及到波特率、串口號(hào)、奇偶校驗(yàn)方式、數(shù)據(jù)位、停止位等。在CserialPort類中用串口初始化函數(shù)InitPort來設(shè)置串口參數(shù)。

3.3.2 串口通信檢測StartMonitoring()。在串口通信中,對(duì)于串口接收的一端,因?yàn)椴恢篮螘r(shí)數(shù)據(jù)到來,也不知道有多少數(shù)據(jù)需要被接收。因而需要一個(gè)串口通信檢測線程來檢測串口事件的響應(yīng)(串口接受數(shù)據(jù)、流控制事件以及其他串口事件)。在此就串口接收數(shù)據(jù)而言,通過開啟串口通信檢測線程StartMonitoring()來隨時(shí)檢測串口是否接受到數(shù)據(jù),一旦檢測到該事件就以消息方式來通知主程序,激發(fā)消息處理函數(shù)來進(jìn)行數(shù)據(jù)處理。對(duì)于串口發(fā)送的一端,可直接向串口發(fā)送數(shù)據(jù)。

3.3.3 串口發(fā)送數(shù)據(jù)WriteToPort()。在打開串口并啟動(dòng)串口通信檢測線程后,可調(diào)用WriteToPort()來發(fā)送數(shù)據(jù)。而對(duì)串口接收一端通過編寫串口接收函數(shù)即可。

3.3.4 停止或暫停線程檢測StopMonitoring()。用來暫停或停止對(duì)串口的檢測。

3.3.5 關(guān)閉串口ClosePort()。關(guān)閉串口和停止或暫停線程檢測有很大的區(qū)別,即使停止了對(duì)串口的檢測,但串口資源仍然被暫時(shí),為了釋放該資源,就必須調(diào)用關(guān)閉串口函數(shù)。一旦關(guān)閉串口后,要想重新對(duì)串口通信則必須從InitPort()開始。

4 控制界面設(shè)計(jì)

對(duì)移動(dòng)機(jī)器人的控制方式即通過鍵盤或按鈕控制來發(fā)送指令,鍵盤控制是利用鍵盤上的上下左右鍵控制,按鈕控制則通過界面上點(diǎn)擊四個(gè)方向控件(前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn))來發(fā)送指令,這些指令分別對(duì)應(yīng)的是移動(dòng)機(jī)器人的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)。

5 室內(nèi)行走實(shí)驗(yàn)

基于前面所述的串口通信系統(tǒng)設(shè)計(jì),在室內(nèi)對(duì)移動(dòng)機(jī)器人進(jìn)行了遙操作,該系統(tǒng)基本能實(shí)現(xiàn)以下功能:根據(jù)攝像頭采集到的移動(dòng)機(jī)器人周邊環(huán)境,可以用兩種不同的方式來控制移動(dòng)機(jī)器人的前、后、左、右運(yùn)動(dòng),基本上能實(shí)現(xiàn)機(jī)器人安全、可靠、穩(wěn)定的行進(jìn)。不過在實(shí)驗(yàn)過程中還存在一些不足之處,由于2.4G無線攝像頭傳輸?shù)臄?shù)據(jù)有一定的延遲,導(dǎo)致在控制的過程中還不能太精確。所以在接下來的工作中會(huì)利用無線傳輸模塊和相應(yīng)的視頻采集模塊來提高視頻數(shù)據(jù)的傳輸效率和質(zhì)量,進(jìn)而更加準(zhǔn)確的控制機(jī)器人的運(yùn)動(dòng)。

6 總結(jié)

該系統(tǒng)基本實(shí)現(xiàn)設(shè)計(jì)所需功能。由于軟硬件知識(shí)比較簡單,容易掌握,編程易實(shí)現(xiàn),且設(shè)計(jì)界面友好,開發(fā)周期短,比較適合小型的實(shí)時(shí)控制系統(tǒng),在實(shí)際應(yīng)用中也取得了較好的效果。

參考文獻(xiàn)

[1] 謝印忠,張保洲.MScomm控件在自動(dòng)測控系統(tǒng)中的應(yīng)用[J].電腦學(xué)習(xí),2009(4)

[2] 曾自強(qiáng),王玉菡.用VC++實(shí)現(xiàn)單片機(jī)與PC機(jī)串口通信的三種方法[J].自動(dòng)化與儀器儀表,2005(3)

[3] 杜梅,賈輝然.基于VC 的PC機(jī)與單片機(jī)無線串行通信的實(shí)現(xiàn)[J].電腦知識(shí)與技術(shù),2007(1)

主站蜘蛛池模板: 啪啪啪亚洲无码| 丝袜国产一区| 伊人国产无码高清视频| 天堂成人在线视频| 日本人妻一区二区三区不卡影院| 免费看a级毛片| 91成人在线免费观看| 国产精品视频公开费视频| 蜜臀av性久久久久蜜臀aⅴ麻豆| 亚洲第一黄色网址| 欧美在线一二区| 国产精品流白浆在线观看| 四虎影视8848永久精品| 无码一区二区波多野结衣播放搜索| 欧美日韩北条麻妃一区二区| 日韩欧美中文亚洲高清在线| 欧美成在线视频| 亚洲成年人网| 曰韩人妻一区二区三区| 国产欧美专区在线观看| 精品福利视频导航| 国产午夜福利亚洲第一| 高清色本在线www| 99热最新网址| 国产亚洲精品无码专| 欧美成一级| 午夜a级毛片| 精品久久人人爽人人玩人人妻| 亚洲中文字幕在线观看| 亚洲h视频在线| 亚洲综合专区| 国产欧美视频综合二区| 久久夜色精品国产嚕嚕亚洲av| 亚洲午夜福利精品无码不卡| 九色视频最新网址 | 国产在线观看成人91| 亚洲综合色婷婷| 国产亚洲美日韩AV中文字幕无码成人 | 色悠久久久久久久综合网伊人| 国产成人调教在线视频| 欧美黄网站免费观看| 国产黄色爱视频| 一级做a爰片久久免费| 国产精品亚洲精品爽爽| 四虎在线观看视频高清无码| 98精品全国免费观看视频| 亚洲午夜综合网| 91精品亚洲| www.99在线观看| 九九九精品视频| 国产91九色在线播放| 国产日韩久久久久无码精品| 亚洲成aⅴ人在线观看| 欧美精品影院| 尤物精品国产福利网站| 熟妇无码人妻| 91青草视频| 亚洲AV无码久久精品色欲| 制服丝袜亚洲| 色天天综合久久久久综合片| 国产超碰在线观看| 亚洲中文字幕国产av| 国产亚洲视频免费播放| 性网站在线观看| 国产爽妇精品| 99这里只有精品6| 狠狠色噜噜狠狠狠狠奇米777| 欧美色图第一页| 玩两个丰满老熟女久久网| 久久国产精品77777| 欧美黄色a| 日韩毛片免费观看| 免费不卡在线观看av| 91久久国产热精品免费| 精品无码国产一区二区三区AV| 毛片免费在线视频| 亚洲色无码专线精品观看| 怡红院美国分院一区二区| 欧美亚洲国产精品久久蜜芽| 亚洲视频三级| 日韩在线第三页| 666精品国产精品亚洲|