《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > 基于單片機應用系統(tǒng)的串行通信設計[圖]
基于單片機應用系統(tǒng)的串行通信設計[圖]
C114
C114
摘要: 在紅外成像技術的電力設備狀態(tài)檢測系統(tǒng)中,基于AT89C51單片機的應用系統(tǒng),,采用美國雷態(tài)公司的型號為3iLRL3的非接觸式紅外測溫儀,。該測溫儀采用的是RS232C串行通信標準接口,該接口在很多通信設備中通用,,目前與PC機的直接串行通信也是RS 232C接口,。
Abstract:
Key words :
 

1 引 言

在紅外成像技術的電力設備狀態(tài)檢測系統(tǒng)中,基于AT89C51單片機的應用系統(tǒng),,采用美國雷態(tài)公司的型號為3iLRL3的非接觸式紅外測溫儀,。該測溫儀采用的是RS232C串行通信標準接口,,該接口在很多通信設備中通用,目前與PC機的直接串行通信也是RS 232C接口,。盡管RS232C性能指標并非很好,,但還是有廣泛的市場支持。就可以方便的在2個數(shù)字設備之間進行信息的交換,,實現(xiàn)全雙工的傳送數(shù)據(jù),,硬件成本低。而且通用性好,。

2 串行通信的硬件設計

串行通信是指 使用一條數(shù)據(jù)線,,將數(shù)據(jù)一位一位地依次傳輸,每一位數(shù)據(jù)占據(jù)一個固定的時間長度,。其只需要少數(shù)幾條線就可以在系統(tǒng)間交換信息,,特別使用于計算機與計算機、計算機與外設之間的遠距離通信,。

在所開發(fā)的系統(tǒng)中,。紅外測溫儀將檢測電力沒備的工作和環(huán)境溫度,通過RS 232C串口傳給單片機,,同時由單片機控制檢測裝置的在線工作組態(tài),,紅外檢測裝置的工作組態(tài)的制訂和選擇是由上位PC機來完成的,這樣,,以單片機為核心組成的控制電路是數(shù)據(jù)的中轉(zhuǎn)站,,上位PC機下傳紅外測溫儀的在線工作組態(tài)。在這里單片機與PC機的串行通信接口還是RS 232C的標準通信,。AT89C51單片機僅有一個串口,,這就要解決另一個串口外擴問題,系統(tǒng)利用的通用串行通信接口芯片8251A來擴展,。該系統(tǒng)的串行通信的硬件電路如圖1所示,。

基于單片機應用系統(tǒng)的串行通信設計

RS-232是EIA(Electronics Industries Association)電平。信號電平采用負邏輯,,邏輯"1"=一12V,,邏輯"0"=+12V。這與單片機的TTL信號電平不兼容,,所以RS232C與89C51單片機的串口RXD(串行接收口)和TXD(串行發(fā)送口)不能直接連接,,需要跨接一個轉(zhuǎn)換器在RS232C與TTL電路之間進行電平轉(zhuǎn)換。輸出RS 232C電平,。MC1489是接收RS 232C電平,,輸出TTL電平,該電平轉(zhuǎn)換接口的不便之處是需要±12V工作電壓,,并且功耗較大,。不適用于低功耗的系統(tǒng),。

在系統(tǒng)中,紅外測溫儀與PC機2個串行口,,而89C51只有1個串口,,利用可編程通用串行接口芯片8251A實現(xiàn)與上位Pc機通信,由于8251A串口芯片的片選端CS接到74LS138譯碼器的Y2,。因此8251A的口地址為OA000H,,RXCLK和TXCLK接收和發(fā)送時鐘都連接51的T1口,利用T1作為波特率發(fā)生器[1],。

3 軟件設計

AT89C51是一種帶4K字節(jié)FLASH存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓,、高性能CMOS 8位微處理器,俗稱單片機,。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復擦除1000次,。該器件采用ATMEL高密度非易失存儲器制造技術制造,,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,,ATMEL的AT89C51是一種高效微控制器,,AT89C2051是它的一種精簡版本。AT89C單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案,。

主要特性:

·與MCS-51 兼

128×8位內(nèi)部RAM

·32可編程I/O線

·兩個16位定時器/計數(shù)器

·5個中斷源

·可編程串行通道

·低功耗的閑置和掉電模式

·片內(nèi)振蕩器和時鐘電路

紅外測溫儀的串口通過MAX232直接與89C15連接,,所以紅外掃描傳感頭按給定的掃描策略掃描電力設備,讀入溫度掃描信號,,做最大值,、最小值、平均值及異常剔除處理,,單片機記錄掃描時間和溫度值,,等待PC機命令。向PC機發(fā)送數(shù)據(jù),,發(fā)送數(shù)據(jù)流程如圖2所示,。紅外傳感器通過Pc機下傳的在線工作組態(tài)控制檢測電力設備的狀態(tài),其接收數(shù)據(jù)的流程如圖3所示,。單片機與PC機之間的串行通信通過825lA,,所以在通信程序中首先對825lA進行初始化編程,設置串口通信方式,,確定通信協(xié)議,。這些是通信程序設計的關鍵點。

基于單片機應用系統(tǒng)的串行通信設計

基于單片機應用系統(tǒng)的串行通信設計

(1)串口的工作方式設置

通過對單片機的串口控制寄存器(SCON)的設置來完成,,由于采用一幀11位的數(shù)據(jù)格式,,所以89C51的串口的工作方式只能設置成方式2和方式3,,數(shù)據(jù)傳輸?shù)牟ㄌ芈视卸〞r器控制,本系統(tǒng)采用方式3,,單片機的串行接收的l幀數(shù)據(jù)中,,奇偶校驗位由SCON的TB8和RB8(第9位數(shù)據(jù))來完成校驗功能。

(2)串口波特率的設定

基于單片機應用系統(tǒng)的串行通信設計

通過此公式的計算可以進一步驗證在設計系統(tǒng)選用的晶振的頻率為11.0592MHz時計算出來的T1初值沒有誤差,。

(3)握手信號的規(guī)定

請求信號定為FFH,、應答信號定為FEH、錯誤信號定為FDH,、結(jié)束信號定為FCH,。

(4)數(shù)據(jù)傳送方式

利用RS 232C的2根傳輸線實現(xiàn)全雙工的發(fā)送和接收數(shù)據(jù)。

(5)通信方式

異步通信方式,,以字為單位傳送數(shù)據(jù),,由于發(fā)送與接收雙方使用各自的時鐘,所以在異步通信中嚴格規(guī)定數(shù)據(jù)幀的格式,。

(6)數(shù)據(jù)幀的格式

一幀數(shù)據(jù)為11位,,包括起始位、數(shù)據(jù)位,、奇偶檢驗位,、停止位,數(shù)據(jù)格式如下[2]:

基于單片機應用系統(tǒng)的串行通信設計

所以8251A初始化方式控制字為7DH,。

PC機采用Visual basic編程,,VB支持面向?qū)ο蟮某绦蛟O計,具有結(jié)構(gòu)化的事件驅(qū)動編程模式并可以使用無限擴增的控件,,而且可以十分簡便地做出良好的人機界面,。在標準的串口通信方面,在發(fā)送或接收數(shù)據(jù)的過程中觸發(fā)onComm事件,,通過編程訪問CommEvent屬性了解通信事件的類型,,分別各自的處理。VB串行初始化通信軟件如下[3]:

基于單片機應用系統(tǒng)的串行通信設計

基于單片機應用系統(tǒng)的串行通信設計

4 結(jié) 語

串行通信技術目前在很多測控系統(tǒng)中廣泛被使用,,而且遠距離的通信使用的更為突出,,本系統(tǒng)的RS 232C只是用于近距離的通信,在改進的系統(tǒng)中使用RS 485可以擴大傳輸距離,,并是系統(tǒng)穩(wěn)定性增強,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載,。