蔣信
摘 要科技的發(fā)展日新月異,機(jī)電一體化的發(fā)展對(duì)自動(dòng)化系統(tǒng)的可靠性提出了更高的要求,在這樣的背景下,單片機(jī)在工業(yè)控制領(lǐng)域的應(yīng)用越來(lái)越廣泛也越來(lái)越重要?;谝陨希疚膹耐ㄐ胚^(guò)程、顯示設(shè)計(jì)、鍵盤(pán)接口等方面研究了基于單片機(jī)的數(shù)據(jù)串口通信。
【關(guān)鍵詞】單片機(jī) 數(shù)據(jù)串口 通信 研究
在計(jì)算機(jī)控制領(lǐng)域中,計(jì)算機(jī)與外設(shè)數(shù)據(jù)之間的通信主要依靠單片機(jī)來(lái)實(shí)現(xiàn),單片機(jī)的串口功能能夠?qū)崿F(xiàn)數(shù)據(jù)的傳輸以及分析,這就屬于串口通信,可以預(yù)見(jiàn)的是,單片機(jī)的數(shù)據(jù)串口通信將會(huì)得到更廣泛的應(yīng)用,單片機(jī)之間的通信也有賴于其數(shù)據(jù)串口通信功能?;谝陨?,本文簡(jiǎn)要研究了基于單片機(jī)的數(shù)據(jù)串口通信。
1 串口通信的實(shí)現(xiàn)方式
設(shè)備在實(shí)現(xiàn)通信的過(guò)程中,必須樹(shù)立一個(gè)信息接發(fā)雙方都認(rèn)可的通信方式,只有這樣才能夠保證信息在傳送的過(guò)程中不發(fā)生沖突,才能夠?qū)崿F(xiàn)設(shè)備之間的通信,對(duì)于串口通信來(lái)說(shuō),主要有以下兩種方式。
1.1 異步通信方式
異步通信方式實(shí)現(xiàn)的過(guò)程中,數(shù)據(jù)傳輸方式為獨(dú)立字節(jié)的形式,不同的字節(jié)前端有著不同的起始信號(hào),不同字節(jié)的后端則會(huì)有不同的終止信號(hào),起始信號(hào)只能是一個(gè),而終止信號(hào)可以是一個(gè)也可以是多個(gè)。數(shù)據(jù)傳輸過(guò)程中,字節(jié)進(jìn)行移動(dòng),一個(gè)字節(jié)的遷移過(guò)程表示一個(gè)字節(jié)的傳輸過(guò)程,傳輸之前使用起始信號(hào)進(jìn)行傳輸,傳輸結(jié)束之后使用終止信號(hào)將傳輸線調(diào)回標(biāo)準(zhǔn)狀態(tài),一個(gè)字節(jié)傳輸完畢后進(jìn)行下一個(gè)字節(jié)的傳輸,字節(jié)傳輸有著連續(xù)性,這就是異步傳輸方式。由于沒(méi)一個(gè)字節(jié)都要附加起始信號(hào)信息和終止信號(hào)信息,因此異步傳輸方式的效率較低,但異步通信方式容許一定程度的頻率漂移,有著一定的誤差緩沖作用。
1.2 同步通信方式
同步通信方式指的是將所有字符和字節(jié)連接在一起進(jìn)行傳輸?shù)囊环N通信方式,多個(gè)字符相互連接組成數(shù)據(jù)塊,在數(shù)據(jù)塊前增加同步字符,以同步字符作為傳輸起始信號(hào),在傳輸后增加校驗(yàn)字符,以校驗(yàn)字符作為傳輸終止信號(hào),以此來(lái)校驗(yàn)傳輸過(guò)程中的錯(cuò)誤和誤差,數(shù)據(jù)塊中的各個(gè)字符之間沒(méi)有間隔,相較于異步通信方式來(lái)說(shuō),其傳輸效率較高,但其對(duì)于信息接收端和信息發(fā)送端的同步性要求較高,因此硬件的復(fù)雜程度也就更高。
2 基于單片機(jī)的數(shù)據(jù)串口通信
2.1 單片機(jī)數(shù)據(jù)串口通信過(guò)程
單片機(jī)數(shù)據(jù)串口通信功能的實(shí)現(xiàn)主要依賴于數(shù)據(jù)寄存器,這個(gè)數(shù)據(jù)寄存器一般設(shè)置在單片機(jī)的串行端口上,其能夠?qū)崿F(xiàn)數(shù)據(jù)的接收和發(fā)送,從而為實(shí)現(xiàn)通信提供了可能。一般來(lái)說(shuō),數(shù)據(jù)在寫(xiě)入寄存器的時(shí)候同時(shí)會(huì)進(jìn)行發(fā)送,從而進(jìn)入到數(shù)據(jù)的傳輸流程中,而數(shù)據(jù)寄存器在讀取數(shù)據(jù)的時(shí)候同時(shí)也開(kāi)始數(shù)據(jù)的接收,這就是單片機(jī)數(shù)據(jù)串口通信的簡(jiǎn)單過(guò)程。
具體來(lái)說(shuō),串行接口與單片機(jī)通信的過(guò)程中,可編程邏輯控制器會(huì)接收到單片機(jī)發(fā)送的命令幀格式,在通信結(jié)束之后,可編程邏輯控制器執(zhí)行命令,可編程邏輯控制器需要以ASCII的形式來(lái)形成接收到的信息,但是單片機(jī)的輸入方式有著一定的局限性,只能夠進(jìn)行高低電平輸入,這就需要在信息發(fā)送過(guò)程中對(duì)信息進(jìn)行格式轉(zhuǎn)化,串口通信協(xié)議中有信息幀格式,可以以此為依據(jù)將信息轉(zhuǎn)化為二進(jìn)制格式,轉(zhuǎn)化后的信息發(fā)送至數(shù)據(jù)寄存器中,從而完成單片機(jī)數(shù)據(jù)串口通信過(guò)程。
2.2 單片機(jī)的顯示設(shè)計(jì)分析
單片機(jī)顯示程序的設(shè)計(jì)一般有兩種方式:
2.2.1 動(dòng)態(tài)顯示驅(qū)動(dòng)
指的是通過(guò)數(shù)碼管來(lái)實(shí)現(xiàn)單片機(jī)動(dòng)態(tài)顯示的一種驅(qū)動(dòng)顯示方式具體來(lái)說(shuō),并聯(lián)所有選擇的線路,利用八位I/O口來(lái)控制這些并聯(lián)的線路,將除八位I/O口之外的I/O口作為數(shù)碼管選線,顯示數(shù)字的譯碼由單片機(jī)進(jìn)行輸出,此時(shí),為選通電路與各個(gè)數(shù)碼顯示管一一對(duì)應(yīng),并由對(duì)應(yīng)的數(shù)碼顯示管來(lái)進(jìn)行有效的控制,沒(méi)有對(duì)應(yīng)的數(shù)碼顯示管在此過(guò)程中不會(huì)產(chǎn)生反應(yīng),這就是動(dòng)態(tài)顯示驅(qū)動(dòng)的過(guò)程。
2.2.2 靜態(tài)顯示驅(qū)動(dòng)
靜態(tài)顯示驅(qū)動(dòng)屬于一種直流驅(qū)動(dòng)方式,數(shù)碼管有兩個(gè)極,分別是共陽(yáng)極和共陰極,在接地設(shè)置上,讓這兩個(gè)極同時(shí)接地,且同時(shí)連接電源,這就是靜態(tài)顯示驅(qū)動(dòng)方式,需要注意的是,相較于動(dòng)態(tài)顯示驅(qū)動(dòng)方式而言,靜態(tài)顯示驅(qū)動(dòng)方式會(huì)占用更多的I/O口,這就給顯示設(shè)計(jì)帶來(lái)了一定的復(fù)雜性,因此,在實(shí)際的單片機(jī)顯示設(shè)計(jì)中,一般采用動(dòng)態(tài)顯示驅(qū)動(dòng)方式較多。
2.3 矩陣式鍵盤(pán)接口分析
在單片機(jī)數(shù)據(jù)串口通信過(guò)程中,可能在鍵盤(pán)中需要較多數(shù)量的鍵盤(pán)按鍵,為了避免占用過(guò)多的I/O口,則需要對(duì)這些鍵盤(pán)按鍵進(jìn)行合理的排序。下面介紹一種矩陣形式的排列方式,以此來(lái)實(shí)現(xiàn)鍵盤(pán)按鍵的合理劃分布。在矩陣式排列的過(guò)程中,垂直線和交叉點(diǎn)在同一條水平線上不能夠直接的聯(lián)通,而是要通過(guò)按鍵來(lái)實(shí)現(xiàn)二者的連接,這就形成了一種4×4的矩陣式排列方式,這種鍵盤(pán)連接對(duì)于端口的應(yīng)用效率明顯提升。
矩陣式鍵盤(pán)連接方式適用于線路較多情況,線路越多,則其提升端口使用效率的效果越明顯。矩陣式排列分布方式下,使用端口線增加線路時(shí),一條線的增加對(duì)應(yīng)一個(gè)鍵的增加,而使用普通線,一條線的增加對(duì)應(yīng)二十鍵,此時(shí)使用矩陣式排列方式就能夠取得良好的效果。
矩陣式結(jié)構(gòu)雖然能夠避免過(guò)多的占用I/O口,但是其也有著一定的局限性,即矩陣式結(jié)構(gòu)實(shí)現(xiàn)難度較大,相對(duì)來(lái)說(shuō)比較復(fù)雜。已經(jīng)確定的矩陣式鍵盤(pán)來(lái)說(shuō),可以采用“行掃描法”來(lái)識(shí)別按鍵,對(duì)于按鍵落下與否的判斷來(lái)說(shuō),可以降低行線到低電平狀態(tài),檢測(cè)列線的狀態(tài),如果發(fā)現(xiàn)有一條列線的電平為低狀態(tài),則可以判斷鍵盤(pán)的按鍵在按下的狀態(tài),如果所有的列線都在高電平的狀態(tài),則可以判斷鍵盤(pán)按鍵處于非按下的狀態(tài)。在確定有鍵盤(pán)按鍵處于按下的狀態(tài)時(shí),則需要確認(rèn)具體是哪一個(gè)按鍵處于按下?tīng)顟B(tài),首先將某一條行線調(diào)到低電平的狀態(tài),之后對(duì)列線進(jìn)行逐條檢查,哪一列的列線處于低電平狀態(tài),則其與調(diào)到低電平狀態(tài)這條行線的交點(diǎn)按鍵就是閉合的按鍵,依此進(jìn)行判斷即可。
3 結(jié)論
信息的發(fā)展日新月異,數(shù)據(jù)通信在工業(yè)及信息領(lǐng)域的應(yīng)用越來(lái)越重要,計(jì)算機(jī)與外設(shè)數(shù)據(jù)的連接則依賴于單片機(jī)的數(shù)據(jù)串口通信,這就打破了信息傳輸?shù)牡赜蛐韵拗?。本文?jiǎn)要研究了基于單片機(jī)的數(shù)據(jù)串口通信,旨在進(jìn)一步促進(jìn)單片機(jī)數(shù)據(jù)串口通信技術(shù)的進(jìn)一步發(fā)展。
參考文獻(xiàn)
[1]佘艷.基于單片機(jī)的數(shù)據(jù)串口通信[J]. 電子技術(shù)與軟件工程,2015,01:262.
[2]王振宇.基于單片機(jī)的數(shù)據(jù)串口通信研究[J].電子技術(shù)與軟件工程,2015,07:256-257.
[3]劉遠(yuǎn)義,張銳,劉宏洋.PC機(jī)與單片機(jī)的串口通信數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].邢臺(tái)學(xué)院學(xué)報(bào),2013,02:174-176.
作者單位
湖北工程學(xué)院新技術(shù)學(xué)院12級(jí)電子信息工程 湖北省孝感市 432000