<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > 基于AT89S52型單片機的紅外無線PPM發(fā)射機設(shè)計

          基于AT89S52型單片機的紅外無線PPM發(fā)射機設(shè)計

          ——
          作者:徐荃1,許大奎1,李思敏2 時間:2007-01-26 來源:《國外電子元器件》 收藏

          1 引言

          在工業(yè)和生活環(huán)境中,便攜式信息終端設(shè)備的出現(xiàn)加速了無線數(shù)字通信線路和局域網(wǎng)的引進,然而,由于無線電的局限性,使它在無線高速數(shù)據(jù)鏈路應(yīng)用方面受阻。在此情況下紅外(ir)無線光通信得到人們的重視[1]。作為一種室內(nèi)短距離通信的傳輸介質(zhì),ir具有勝過無線電的顯著優(yōu)點:ir有巨大的帶寬且不需許可證,可以進行高速數(shù)據(jù)傳輸;ir不穿透墻壁,因而消除了在不同房間進行通信時可能帶來的干擾,而且通信時不容易被偵聽,提高了通信的安全性;ir探測器的尺寸比ir無的波長大得多,避免了多徑衰落;ir可強度調(diào)制,ir通信設(shè)備比無線電通信設(shè)備要便宜簡單得多。

          本文引用地址:http://www.ex-cimer.com/article/21337.htm

          對室內(nèi)無線電局域網(wǎng),要求紅外數(shù)據(jù)鏈路的峰值-平均光功率比高,高峰值功率可提高系統(tǒng)的靈敏度,低平均功率可滿足人眼安全和低功耗的要求,脈沖位置調(diào)制(ppm)通信方式就符合這些要求,目前,ppm已被ieee無列入無線局域網(wǎng)ieee802.11標(biāo)準(zhǔn)。用純硬件設(shè)計實現(xiàn)ppm光發(fā)射機是比較復(fù)雜和困難的,筆者利用功能強大的at89s52型單片機和編程軟件vc++設(shè)計了一種基于計算機串口和的紅外無線ppm發(fā)射機。at89s52通過串口從計算機獲取數(shù)據(jù),編碼得到脈沖寬度調(diào)制(pwm)信號后通過輸出端口輸出,輸出的pwm信號經(jīng)過波形轉(zhuǎn)換電路得到ppm電脈沖信號,再通過光源驅(qū)動電路轉(zhuǎn)換為ppm光脈沖信號,從而完成紅外無線ppm發(fā)射機的設(shè)計。

          2 ppm信號格式

          ppm采用斷續(xù)的周期性光脈沖作為載波,調(diào)制信號受到信源二進制符號地控制,脈沖的時間位置隨之發(fā)生變化而傳遞信息,ppm信號結(jié)構(gòu)如圖1所示,在數(shù)字ppm通信中,同步是至關(guān)重要的。為了實現(xiàn)幀同步,應(yīng)在傳送信息幀之前發(fā)送一次幀同步頭,為接收端提供同步信息,同時在信息幀的前面和后面分別安排2個標(biāo)志幀以表示信息的開始和結(jié)束,這樣接收機捕獲到同步信號和起始標(biāo)志符后,開始解調(diào)隨后的脈沖信號,直到接收到結(jié)束標(biāo)志,表明數(shù)據(jù)接收完畢。

          每一個信息幀又分為信息段和保護段(由光源和信道的特性決定),共m個時隙,每個時隙的寬度為ts,其中前q個時隙為信息段tq=(qts),后d個時隙為保護段td=(dts)。對q元ppm,平均光功率為pa,光脈沖峰值功率為qpa,又一幀表示log2q位的二進制信息,因此數(shù)據(jù)傳輸速率r為

          r=log2q/t=log2q/mts=log2q/(q+d)tsbit/s (1)

          其中,t為一幀的時間長度。

          在t不變的條件下,ppm的傳信率和峰值功率隨時隙數(shù)q增大,但是q值過大,也就是一幀分成的時隙數(shù)過多,會給信號的傳輸和解調(diào)帶來困難,信息和q值成對數(shù)關(guān)系,例如,當(dāng)q=256時,一個脈沖表示8比特信息,而q=512表示9比特信息,由此可見,q較大時,脈沖攜帶的信息量隨q值的增大并沒有明顯增加,綜合考慮以上情況和實際設(shè)計需要,筆者采用q=16的ppm調(diào)制方式,時隙寬度ts設(shè)為15μs。

          3 at89s52的特點

          at89s52是一種低功耗、高性能cmos 8位單片機,片內(nèi)含8kb isp(in-system programmable)的可反復(fù)擦寫1000次的flash只讀程序存儲器、該器件采用atmel公司的高密度、非易失性存儲技術(shù)制造、兼容標(biāo)準(zhǔn)mcs-51指令系統(tǒng)及80c51引腳結(jié)構(gòu)。片內(nèi)集成了通用的8位cpu和isp flash為存儲單元,可為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、高性價比的解決方案。

          ta89s52具有如下特點:40個引腳,8kb flash片內(nèi)程序存儲器,256 bytes的隨機存儲數(shù)據(jù)存儲器(ram),32個外部雙向輸入/輸出(i/o)口,1個6向量2級中斷結(jié)構(gòu);3個16位可編程定時計數(shù)器,2個全雙工串行通信口,看門狗(wdt)電路和片內(nèi)時鐘振蕩器。

          此外,at89s52設(shè)計和配置了振蕩頻率可為0hz并可通過軟件設(shè)置的省電模式。在空閑模式下,cpu暫停工作,而ram、定時計數(shù)器、串行口、外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存ram的數(shù)據(jù),禁止電路的其他功能直至外中斷激活或硬件復(fù)位。同時該電路還具有pdip、tqfp和plcc等封裝形式,以適應(yīng)不同產(chǎn)品的設(shè)計要求。

          4 硬件設(shè)計

          紅外線ppm發(fā)射機由at89s52型單片機與計算機的串行通信電路,pwm到ppm波形轉(zhuǎn)換電路和光源驅(qū)動電路構(gòu)成,其系統(tǒng)結(jié)構(gòu)框圖如圖2所示。

          4.1 串行通信電路

          為了能使單片機和計算機通信,必須使其遵循相同的通信協(xié)議,at89c51的串行口輸入/輸出為ttl邏輯電平,抗干擾性較差,而計算機的串行接口是符合eia rs-232c規(guī)范的外部總線標(biāo)準(zhǔn)接口,具有較強的抗干擾性,為了解決電平不一致的矛盾,該系統(tǒng)設(shè)計選用了maxim公司的max232型電平轉(zhuǎn)換器實現(xiàn)電平轉(zhuǎn)換,max232屬于通用串行接收/發(fā)送驅(qū)動器,其外圍電路非常簡單,只需外接4個0.1μf的電容器。

          at89s52具有串行通信接口(sci),sci是能與計算機等外設(shè)通信的全雙工異步系統(tǒng),at89s52與計算機采用rs-232c接口方式,這種方式下,sci采用標(biāo)準(zhǔn)的不歸零(nrz)格式,開始是1位起始位,以邏輯“0”表示,接著是8位數(shù)據(jù)位,最后是1位停止位,以邏輯“1”表示故一次傳送據(jù)長度為10比特,計算機發(fā)送數(shù)據(jù),at89s52接收數(shù)據(jù),at89s52將接收到的數(shù)據(jù)進行pwm編碼,得到幀周期固定,而脈沖寬度隨外部信號不斷變化的pwm信號,然后通過p1.0端口輸出。

          4.2 波形轉(zhuǎn)換電路

          經(jīng)過單片機編碼輸出的pwm信號經(jīng)過一個下降沿觸發(fā)器即可得到ppm脈沖信號,波形轉(zhuǎn)換如圖3所示[7]。當(dāng)p1.0端口輸出的信號由高電平變?yōu)榈碗娖綍r,觸發(fā)器的輸出端產(chǎn)生所需的ppm脈沖信號,其脈沖寬度由外部定時電路決定。

          4.3 驅(qū)動電路

          對于無線紅外通信系統(tǒng)來說,半導(dǎo)體發(fā)光二極管(led)是可以選用的最佳光源,筆者采用帶有溫度補償特性的射極耦合led驅(qū)動電路[8],該電路看上去像一個線性差分放大器,實際上是一個電流開關(guān)電路,ppm信號加在驅(qū)動電路的輸入端,當(dāng)ppm信號的電位低于設(shè)定的參考電位時,led無脈沖電流通過,led不發(fā)光;反之,脈沖電流通過led而使led發(fā)光。如圖4所示,注入電流if相等的條件下,led的輸出光功率p隨著溫度的上升而下降,所以設(shè)計中采用溫度補償電路進行溫度補償,當(dāng)溫度升高時,led的注入電流也隨之增加,從而補償led的功率變化。

          5 軟件設(shè)計

          5.1 計算機軟件編程

          計算機的主要作用是通過串口傳送源數(shù)據(jù)給單片機。

          利用visual c++編制串行通信程序一般有3種方法:調(diào)用microsoft win32應(yīng)用程序接口(api)提供的串行通信函數(shù),利用vc++的mfc類庫函數(shù)實現(xiàn);用active x通信控件(mscomm)開發(fā)串口通信程序,筆者利用vc++提供的mscomm控件來實現(xiàn)計算機與單片機之間的串行通信,利用vc++的通信控件mscomm進行軟件設(shè)計只需對串口進行簡單的設(shè)置即可。程序?qū)崿F(xiàn)非常簡單,結(jié)構(gòu)清晰,在windows環(huán)境下,串口是系統(tǒng)資源的一部分,應(yīng)用程序要使用串口進行通信,必須在使用之前向系統(tǒng)提出資源申請要求(打開串口),通信完成后必須釋放資源(關(guān)閉串口)。

          5.2 單片機軟件編程

          單片機的主要作用是從發(fā)送端(計算機)接收數(shù)據(jù),并對接收到的數(shù)據(jù)進行pwm編碼,然后通過輸出端口輸出,單片機部分的編程主要由串口初始化子函數(shù),接收數(shù)據(jù)子函數(shù)和pwm信號發(fā)送子函數(shù)組成。

          5.2.1 串口初始化子函數(shù)

          使用串口之前,應(yīng)動其進行初始化,初始化程序如下:

          5.2.2 接收數(shù)據(jù)子函數(shù)

          接收數(shù)據(jù)流程如圖5所示,程序如下:

          5.2.3 pwm發(fā)送信號子函數(shù)

          pwm信號發(fā)送包括發(fā)送pwm編碼后的同步頭、起始標(biāo)志符、接收的數(shù)據(jù)和結(jié)束標(biāo)志符、下面重點討論對接收的數(shù)據(jù)進行編碼及發(fā)送,其流程如圖6所示,程序如下:

          6 結(jié)束語

          紅外通信為構(gòu)建高速寬帶室內(nèi)無線局域網(wǎng)提供了新的選擇。ppm的脈沖峰值功率與平均功率之比很高,可以有效減小平均輻射功率和提高接收靈敏度,筆者設(shè)計的紅外無線ppm發(fā)射機利用單片機實現(xiàn)ppm調(diào)制,具有電路結(jié)構(gòu)簡單、調(diào)試容易、可靠性高、精度高、成本低和功耗低的優(yōu)點,由于設(shè)計中只采用了單只紅外led作為光源,輸出功率不大,而且受輻射角的限制,通信具有方向性,可以考慮采用多只紅外led構(gòu)成發(fā)射陣列來增加發(fā)射功率和輻射范圍。



          關(guān)鍵詞:

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();