關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 單片機(jī)與PC機(jī)電話遠(yuǎn)程通信系統(tǒng)

單片機(jī)與PC機(jī)電話遠(yuǎn)程通信系統(tǒng)

——
作者: 時(shí)間:2006-05-07 來(lái)源: 收藏

1.引言
   隨著通信技術(shù)的不斷發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)通信是當(dāng)今技術(shù)發(fā)展的一個(gè)重要的方向,然而在網(wǎng)絡(luò)系統(tǒng)中利用現(xiàn)有電話網(wǎng)作為通信信道則是最經(jīng)濟(jì)、最方便和最可靠的方法。當(dāng)前現(xiàn)代電話通信網(wǎng)已經(jīng)進(jìn)入程控交換時(shí)代,技術(shù)比較先進(jìn),速度快,容量大,因此采用電話通信網(wǎng)建立數(shù)據(jù)通信系統(tǒng)確實(shí)具有其獨(dú)特的優(yōu)越性。
   利用單片機(jī)系統(tǒng)采集灌區(qū)水位、水流量,實(shí)現(xiàn)無(wú)人職守和科學(xué)的管理水資源具有實(shí)際意義,特別對(duì)少雨缺水地區(qū)更具有應(yīng)用價(jià)值。

2.系統(tǒng)硬件設(shè)計(jì)
   本系統(tǒng)采用了MODEM將前端單片機(jī)采集的數(shù)據(jù)通過(guò)電話網(wǎng)遠(yuǎn)程傳輸?shù)街行恼綪C機(jī),并實(shí)現(xiàn)一對(duì)多點(diǎn)通信(站點(diǎn)數(shù)、通信距離均不限),后臺(tái)PC機(jī)通過(guò)撥號(hào)的方式對(duì)各站點(diǎn)進(jìn)行數(shù)據(jù)接收并實(shí)時(shí)存儲(chǔ)記錄、查詢、打印。系統(tǒng)框圖如圖1所示。


圖1 系統(tǒng)框圖

  單片機(jī)系統(tǒng)從傳感器(含數(shù)字編碼器)直接采集數(shù)字信號(hào),通過(guò)RS232接口送給本端的MODEM,MODEM將數(shù)字信號(hào)調(diào)制成音頻模擬信號(hào)在電話線上傳輸,再經(jīng)中心站MODEM調(diào)制成數(shù)字信號(hào)送往PC機(jī)。系統(tǒng)中MODEM采用外置式Hayes144型,用戶使用賀氏標(biāo)準(zhǔn)AT命令呼叫和應(yīng)答,實(shí)現(xiàn)與遠(yuǎn)程系統(tǒng)的通信。
   上述單片機(jī)系統(tǒng)的硬件設(shè)計(jì)關(guān)鍵在于:(1)單片機(jī)89C51與異步收發(fā)器8250的接口,8250具有與MODEM接口和控制串行通信的能力。8250輸入輸出均為TTL電平,按EIA(國(guó)際電子工業(yè)合作會(huì))RS232標(biāo)準(zhǔn),采用串行收發(fā)驅(qū)動(dòng)器芯片ICL232或MAX232進(jìn)行電平轉(zhuǎn)換和驅(qū)動(dòng)。(2)SRAM的選擇與連接,靜態(tài)RAM保存加有時(shí)標(biāo)的數(shù)據(jù),選擇DALLAS公司生產(chǎn)的DS1216D,內(nèi)帶有電池和實(shí)時(shí)日歷時(shí)鐘功能,內(nèi)含RAM為628128,容量為128K,該芯片掉電自動(dòng)保存數(shù)據(jù)和時(shí)鐘運(yùn)行。(3)MODEM的連接,采用9芯接口插座完成各信號(hào)的連接。具體電路原理如圖2所示。





圖2 單片機(jī)系統(tǒng)原理圖

3.系統(tǒng)軟件設(shè)計(jì)
   該系統(tǒng)前臺(tái)機(jī)軟件由MCS51匯編程序設(shè)計(jì),后臺(tái)機(jī)軟件由VB5.0程序設(shè)計(jì)(略述),前臺(tái)單片機(jī)系統(tǒng)通信軟件主程序框圖如圖3所示。


按此在新窗口瀏覽圖片
圖3 單片機(jī)系統(tǒng)程序流程圖

3.1 MODEM通信中的AT命令
   MODEM使用AT命令可以分三個(gè)階段:初始化、呼叫與應(yīng)答、拆鏈掛機(jī)。
   MODEM初始化主要包括:設(shè)定振鈴次數(shù)、設(shè)定返回結(jié)果碼形式和復(fù)位MODEM ,例如:
ATS0=3V0   ‘3次響鈴,結(jié)果碼為數(shù)值型;
ATZ      ‘復(fù)位MODEM ;
   上述命令的第一句可以采用WINDOWS 95超級(jí)終端編程固化在MODEM內(nèi)非易失性RAM中,也可以同ATZ一起放在8250初始化程序中。
   MODEM 具有自動(dòng)呼叫與應(yīng)答功能,在電話交換網(wǎng)中,MODEM之間如同普通電話機(jī)相互通信,只要呼叫方發(fā)出撥號(hào)命令:ATDT6688787(數(shù)字表示電話號(hào)),便可形成通信鏈路,該命令用在PC機(jī)通信軟件的編程中。
   通信完成后,雙方MODEM要拆鏈掛機(jī),在PC機(jī)通信軟件的編程中采用如下AT命令完成掛機(jī):
   + + +     ‘轉(zhuǎn)義序列
   延遲1秒     ‘1s靜寂
   ATH0      ‘掛機(jī)
3.2 8250初始化
   8250初始化主要包括四項(xiàng)內(nèi)容:(1)波特率的設(shè)置,向地址為3F8H和3F9H兩個(gè)寄存器置數(shù),本系統(tǒng)采用2400bps;(2)對(duì)線控制寄存器設(shè)置字符代碼傳送格式參數(shù),即:數(shù)據(jù)位、奇偶校驗(yàn)位、停止位;(3)對(duì)MODEM控制寄存器初始化,即控制發(fā)出發(fā)向?qū)Ψ降男盘?hào)及管理中斷;(4)對(duì)中斷允許寄存器的初始化,用于決定在接收的數(shù)據(jù)準(zhǔn)備好時(shí),在發(fā)送保持寄存器空時(shí)、在接收字符出錯(cuò)及MODEM 狀態(tài)改變時(shí)是否發(fā)中斷。
3.3 數(shù)據(jù)通信
   當(dāng)某一方單片機(jī)接收到呼叫振鈴后,RI信號(hào)有效,8250的INTRPT引腳高電平中斷,系統(tǒng)便進(jìn)入數(shù)據(jù)通信狀態(tài),為了使數(shù)據(jù)傳送準(zhǔn)確無(wú)誤,編程采用XMODEM協(xié)議對(duì)數(shù)據(jù)打包處理,單片機(jī)數(shù)據(jù)通信程序流程圖如圖4。



數(shù)據(jù)發(fā)送流程圖        



數(shù)據(jù)接受流程圖

圖4 單片機(jī)數(shù)據(jù)通信程序流程圖

4 結(jié)束語(yǔ)
   本文就多點(diǎn)單片機(jī)與PC機(jī)的電話遠(yuǎn)程通信,比較詳細(xì)地介紹了軟、硬件設(shè)計(jì)思想,該系統(tǒng)由于采用普通電話網(wǎng)作為通信信道,實(shí)現(xiàn)一網(wǎng)多用,十分經(jīng)濟(jì)。而且后臺(tái)PC機(jī)用VB5.0開(kāi)發(fā)通信和數(shù)據(jù)管理系統(tǒng)軟件既方便、可視又易操作、可靠。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉