關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 基于RS232及紅外接口的多功能通訊實(shí)驗(yàn)板設(shè)計(jì)

基于RS232及紅外接口的多功能通訊實(shí)驗(yàn)板設(shè)計(jì)

作者: 時(shí)間:2007-10-17 來(lái)源:網(wǎng)絡(luò) 收藏
1 引言

計(jì)算機(jī)控制系統(tǒng)中經(jīng)常采用多機(jī)系統(tǒng)進(jìn)行通信,在由PC機(jī)和單片機(jī)構(gòu)成的分布式控制系統(tǒng)中,往往以PC機(jī)為上位機(jī)完成較為復(fù)雜的數(shù)據(jù)處理和對(duì)前沿機(jī)的監(jiān)督管理,以及對(duì)下位機(jī)進(jìn)行多機(jī)協(xié)調(diào),單片機(jī)主要執(zhí)行上位機(jī)的命令,對(duì)來(lái)自微機(jī)串行口的命令進(jìn)行操作,完成對(duì)被控對(duì)象的直接控制,并把被控對(duì)象的信息上報(bào)給上位機(jī),異步串行通信是一種常用的多機(jī)通信手段,本文介紹一種將485,及集成在一起的PC機(jī)--單片機(jī)通訊實(shí)驗(yàn)板,用于實(shí)現(xiàn)PC機(jī)與單片機(jī)間的串口通信、紅外通信及PC機(jī)與PC機(jī)間的通訊實(shí)驗(yàn)。

2 實(shí)驗(yàn)板的組成原理與設(shè)計(jì)

2.1 串行通信


串行通信是指通信的發(fā)送方和接收方之間數(shù)據(jù)信息的傳輸是在單根數(shù)據(jù)線
,以每次一個(gè)二進(jìn)制位移動(dòng)的,他的優(yōu)點(diǎn)是只需一對(duì)傳輸線進(jìn)行傳送信息,因此其成本低,適用于遠(yuǎn)距離通信,他的缺點(diǎn)是傳送速度低,串行通信有異步通行和同步通信兩種基本通信方式,同步通信適用于傳送速度高的情況,其硬件復(fù)雜,而異步通信應(yīng)用于傳送速度在50-19200波特之間,是比較常用的傳送方式,在異步通信中,數(shù)據(jù)是一幀一幀傳送的,每一串行幀的數(shù)據(jù)格式由1位起始位,5-8位的數(shù)據(jù)位,1位的奇偶校驗(yàn)位(可省略)和1位停止位4部分組成,在串行通信前,發(fā)送方和接收方要約定具體的數(shù)據(jù)格式和波特率(通信協(xié)議)。

2.2 AT89C51微控制器

AT89C51單片機(jī)系統(tǒng)具有設(shè)計(jì)簡(jiǎn)單、性能可靠、功耗低等優(yōu)點(diǎn),它為用戶(hù)預(yù)留下足夠的軟硬件資源,可供用戶(hù)進(jìn)行再開(kāi)發(fā)應(yīng)用,該系統(tǒng)除內(nèi)部已有的4K FLASH存儲(chǔ)器外,還可以擴(kuò)展選址64K ROM區(qū)和64K RAM區(qū),供用戶(hù)使用,用戶(hù)在系統(tǒng)開(kāi)發(fā)時(shí),可以將自己的數(shù)據(jù)塊和程序段、數(shù)據(jù)表,以若干控制子程序、數(shù)據(jù)塊形式存放于AT89C51單片機(jī)的擴(kuò)展ROM或RAM區(qū)中,以便系統(tǒng)工作時(shí)重復(fù)使用和反復(fù)調(diào)用。

2.3 C通信接口

RSC是一種電壓型總線標(biāo)準(zhǔn),可用于設(shè)計(jì)計(jì)算機(jī)接口與終端或外設(shè)之間的連接,以不同的極性的電壓表示邏輯值。-3~-25V表示邏輯"1"。+3~+25V表示邏輯"0"。其電平與TTL和CMOS電平是不同的,所以在通信時(shí)必須進(jìn)行電平轉(zhuǎn)換。

2.4 MAX232芯片

MAXIM公司的MAX232/MAX232A接收/發(fā)送器是MAXIM公司特別為滿(mǎn)足EIA/TEA2232E的標(biāo)準(zhǔn)而設(shè)計(jì)的,他們?cè)贓IA/TIA2232E標(biāo)準(zhǔn)串行通信接口中日益得到廣泛的應(yīng)用,他們具有功耗低、工作電源為單電源、外接電容僅為0.1μF或1μF,采用雙列直插封裝形式、接收器輸出為三態(tài)TTL/CMOS等優(yōu)越性,為雙組RS 232接收發(fā)送器,工作電源為+5V,波特率高,僅需外接0.1μF或1μF的電容,其價(jià)格低,可在一般需要串行通信的系統(tǒng)中使用,MAX232外圍需要4個(gè)電解電容,是內(nèi)部電源轉(zhuǎn)換所需電容,其取值均為1μF/25V宜選用鉭電容并且應(yīng)盡量靠近芯片。如圖1所示。
MAX232內(nèi)部結(jié)構(gòu)

2.5 紅外發(fā)送、接收電路

紅外通訊以紅外線作為通訊載體,通過(guò)紅外光在空中的傳播來(lái)傳輸數(shù)據(jù),他由紅外發(fā)射器和紅外接收器來(lái)完成,在發(fā)射端,發(fā)送的數(shù)字信號(hào)經(jīng)過(guò)適當(dāng)?shù)恼{(diào)制編碼后,送入電光變換電路,經(jīng)紅外發(fā)射管轉(zhuǎn)變?yōu)榧t外脈沖發(fā)射到空中;在接收端,紅外接收器對(duì)接收到的紅外光脈沖進(jìn)行光電變換,解調(diào)譯碼后恢復(fù)出原信號(hào)。

紅外發(fā)送電路中采用的紅外發(fā)射器件是塑封的TSAL6200紅外發(fā)射二極管,他將周期的電信號(hào)轉(zhuǎn)變成一定頻率的紅外光信號(hào),他是一種時(shí)斷時(shí)續(xù)的高頻紅外脈沖信號(hào),但脈沖串時(shí)間長(zhǎng)度是恒定的,根據(jù)脈沖串之間的間隔大小,表示傳輸?shù)氖菙?shù)據(jù)"0"還是"1"。紅外接收器對(duì)接收到的紅外光脈沖進(jìn)行光電變換,解調(diào)譯碼后恢復(fù)出原信號(hào)。紅外載波為頻率38KHz的方波,采用脈寬調(diào)制PWM方式發(fā)送,通過(guò)待發(fā)送二進(jìn)制數(shù)據(jù)的"0"或"1"控制兩個(gè)脈沖串之間的時(shí)間間隔,即PWM的占空比。

紅外載波可以使用單片機(jī)內(nèi)部的定時(shí)器的PWM功能實(shí)現(xiàn),也可以通過(guò)外圍硬件電路實(shí)現(xiàn),紅外接收采用HS0038B紅外接收器,當(dāng)接收收到38KHz的載波信號(hào)時(shí),HS0038B接收器會(huì)輸出低電平,否則輸出高電平,從而可以將"時(shí)斷時(shí)續(xù)"的紅外光信號(hào)解調(diào)成一定周期的連續(xù)方波信號(hào),經(jīng)單片機(jī)處理,便可以恢復(fù)出原數(shù)據(jù)信號(hào)。

2.6 設(shè)計(jì)思路

本實(shí)驗(yàn)板選用的ATMEL公司的AT89C51單片機(jī)為核心,RS232C接口選用9芯接頭,電平轉(zhuǎn)換芯片選用MAX232A,用來(lái)實(shí)現(xiàn)232電平與TTL電平的轉(zhuǎn)換,RS485接口芯片選用65LBC184,他使用單一電源,電壓在+3

~+5.5V范圍內(nèi)都能正常工作,能完成TTL與RS485電平之間的轉(zhuǎn)換,紅外發(fā)送電路中采用的紅外發(fā)射器件是紅外發(fā)射二極管,他將周期的電信號(hào)轉(zhuǎn)變成一定頻率的紅外光信號(hào)。

單片機(jī)通信程序設(shè)計(jì)框圖


紅外接收芯片HS0038B是能夠接收紅外信號(hào)的小型化接收器,通過(guò)外圍的自激振蕩電路產(chǎn)生38KHz的載波頻率。為了及時(shí)顯示各接口發(fā)送、接收數(shù)據(jù)的狀態(tài),在實(shí)驗(yàn)板上還設(shè)置了狀態(tài)顯示電路,由接口信號(hào)通過(guò)放大電路驅(qū)動(dòng)相應(yīng)發(fā)光二極管,例如,當(dāng)232芯片接收到PC機(jī)的數(shù)據(jù)時(shí),232芯片的接收端會(huì)使相應(yīng)的二極管閃爍,紅外發(fā)送電路在發(fā)送數(shù)據(jù)時(shí),其相應(yīng)的發(fā)光管也會(huì)及時(shí)閃爍,而PC機(jī)上的串口通信程序使用一個(gè)叫做串口助手的程序,他可以設(shè)置串口,波特率,并發(fā)送/接收串口數(shù)據(jù),故本文只介紹單片機(jī)部分的通信程序。

2.7 單片機(jī)軟件設(shè)計(jì)

在實(shí)驗(yàn)板上還集成了51單片機(jī)來(lái)組成最小控制系統(tǒng),所選用的AT51單片機(jī)的串口有4種工作方式,用于多機(jī)異步通信時(shí)選用方式2或方式3,數(shù)據(jù)幀格式為:1位起始位,8位數(shù)據(jù)位,1位停止位,進(jìn)行串行通信前要對(duì)串口進(jìn)行初始化,設(shè)置波特率和串行口工作模式,設(shè)定單片機(jī)的地址碼為F1H1,在傳送數(shù)據(jù)前先聯(lián)絡(luò)地址碼,如地址碼正確則傳送數(shù)據(jù),否則繼續(xù)聯(lián)絡(luò)地址碼,數(shù)據(jù)的通信采用累加和校驗(yàn)的方法,即每傳送一組數(shù)據(jù)(個(gè)數(shù)自定,設(shè)為100個(gè)),校驗(yàn)一次累加和是否正確,正確則回送00H,否則回送FFH1,通信可以由中斷傳送方式和查詢(xún)方式,本文采用查詢(xún)方式,選擇波特率為1200b/s,定時(shí)器T1作為波特率發(fā)生器,選用晶振為12MHz,定時(shí)器T1工作于模式2,定時(shí)器初值為0E6H,AT89C51單片機(jī)的通信程序框圖如圖2。

2.8 通訊實(shí)驗(yàn)示例

實(shí)驗(yàn)1 利用RS232接口及MAX232電平轉(zhuǎn)換芯片來(lái)實(shí)現(xiàn)PC機(jī)與單片機(jī)的串口通信。

PC機(jī)與實(shí)驗(yàn)板的串口通訊
PC機(jī)PC機(jī)通過(guò)RS485的通訊實(shí)驗(yàn)


實(shí)驗(yàn)2 首先通過(guò)RS232接口將PC機(jī)1與實(shí)驗(yàn)板1連接,將232電平轉(zhuǎn)換為T(mén)TL電平,然后通過(guò)RS485接口把TTL電平轉(zhuǎn)換為485電平并連接到實(shí)驗(yàn)板2上,再通過(guò)RS232實(shí)現(xiàn)與PC機(jī)2的串口通信。

實(shí)驗(yàn)3 通過(guò)RS232接口將PC機(jī)1與實(shí)驗(yàn)板1連接,將232電平轉(zhuǎn)換為T(mén)TL電平,然后通過(guò)紅外發(fā)送電路將信號(hào)無(wú)線傳送到實(shí)驗(yàn)板2上,再通過(guò)安裝在實(shí)驗(yàn)板2上的RS232接口與PC機(jī)2完成通信。

PC機(jī)串口通過(guò)紅外電路通訊實(shí)驗(yàn)



3 結(jié)語(yǔ)

本文利用RS232,RS485接口芯片,紅外發(fā)送/接收電路設(shè)計(jì)了PC機(jī)與單片機(jī)及PC機(jī)之間的通訊實(shí)驗(yàn)板,該系統(tǒng)硬件結(jié)構(gòu)簡(jiǎn)單,功能可靠,硬件與軟件均調(diào)試通過(guò),在實(shí)際現(xiàn)場(chǎng)的應(yīng)用中具有一定的實(shí)用價(jià)值,對(duì)于為了解并掌握多機(jī)間串行通信,紅外通信的初學(xué)者是一個(gè)理想的實(shí)驗(yàn)工具。



關(guān)鍵詞: 232 RS 紅外接口 多功能

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉