新聞中心

EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 基于CMX469A的無線MODEM設(shè)計(jì)

基于CMX469A的無線MODEM設(shè)計(jì)

作者: 時(shí)間:2004-12-07 來源:網(wǎng)絡(luò) 收藏

摘要:是CML公司推出的FFSK/MSK全雙工芯片,它內(nèi)部集成了載波檢測、RX時(shí)鐘恢復(fù)電路和振蕩電路,并具有很好的信噪比以及低電壓、低功耗等特性,能夠接收、發(fā)射FFSK/MSK信號(hào),同時(shí)可提供收發(fā)時(shí)鐘。文中給出了的工作原理、應(yīng)用電路和程序控制流程。

關(guān)鍵詞:快速移頻鍵控;;調(diào)制解調(diào)器

1 CMX469A的主要特點(diǎn)

CMX469A是CML(公司新推出的全雙工Modem芯片)它采用CMOS工藝制造,工作電壓為2.7V~5.5V,當(dāng)電源電壓為3V時(shí),它的典型工作電流為2mA,數(shù)據(jù)傳輸速率可設(shè)定為1200 bps、2400 bps和4800bps。在這三種波特率下,邏輯高、低電平的頻率相應(yīng)為1200/1800Hz,1200/2400Hz,2400/4800Hz。

CMX469A采用快速移頻鍵控FFSK/MSK調(diào)制方式,可廣泛應(yīng)用于通訊系統(tǒng)中(例如水文檢測系統(tǒng)、船載監(jiān)控系統(tǒng)等)。CMX469A的主要特性如下:

●具有獨(dú)立的發(fā)送、接收使能控制;

●可以接外部1.008MHz或4.032MHz晶振;

●可選擇三種波特率:1200bps、2400bps、4800bps(4800bps傳輸時(shí),需要外接4.032MHz晶振);

●具有載波檢測、接收時(shí)鐘故障恢復(fù)功能;

●低電壓、低功耗(電源為3V時(shí),典型工作電流為2mA;節(jié)能模式下,供電電流只有300μA);

●抗干擾性能優(yōu)良,在信號(hào)條件比較差的情況下具有優(yōu)良的靈敏度,同時(shí)可通過外部電容設(shè)置載波檢測周期,以使器件在高噪音環(huán)境下具有更完善的性能。

2 CMX469A的引腳說明

CMX429A有22腳PDIP、20腳SOIC、24腳TSSOP三種封裝,這三種封裝的對(duì)應(yīng)引腳不同。表1是20腳SOIC封裝所對(duì)應(yīng)的引腳功能介紹,其余兩種封裝只是引腳序號(hào)不相同。

表1 CMX469AD3的引腳說明

引 腳名 稱類 型

功 能 描 述

1CLOCK/XTALI片內(nèi)振蕩器的輸入端或外部時(shí)鐘輸入端
2XTALNO片內(nèi)振蕩器的輸出端
3Tx SYNCO發(fā)送同步時(shí)鐘輸出
4TxSIGNALOFFSK/MSK信號(hào)輸出
5TxDATAI發(fā)送數(shù)據(jù)串行輸入端
6TxENABLENI發(fā)送使能
7BAND PASS RX帶通濾波器輸出
8RxENABLEI接收使能
9VBIASBI偏置電壓輸出
10VSSP
11UNCLK DATAO接收異步數(shù)據(jù)輸出
12CLK DATAO接收同步數(shù)據(jù)輸出
13CD OUTO載波檢測輸出
14RxSIGNALIFFSK/MSK信號(hào)輸入
15RxSYNCO接收同步時(shí)鐘輸出
16BAUD SELECTI1200/2400波特率選擇
17BAUD SELECTI4800波特率選擇
18COLOCK RATEI4.032MHz/1.008MHz外晶振選擇
19CD TIME CINSTANTBI載波檢測響應(yīng)時(shí)間調(diào)整端,影響抗干擾能力
20VDDP接電源2.7~5.5V

3 與單片機(jī)的硬件接口

CMX469A的調(diào)制解調(diào)器的硬件主要包括CMX469A與電臺(tái)的接口電路以及與單片機(jī)的接口電路兩部分。

CMX469A與電臺(tái)的接口主要用于實(shí)現(xiàn)輸入、輸出模擬電路部分的放大。這部分電路非常簡單,用運(yùn)放LM358就可以實(shí)現(xiàn),這里就不再多說,以下主要說明CMX469A與單片機(jī)的接口設(shè)計(jì)。硬件接口電路如圖1所示。

CMX469A與單片機(jī)接口時(shí),CMX469A內(nèi)部產(chǎn)生的TxSYNC和RxSYNC同步時(shí)鐘線可以同步單片機(jī)的發(fā)送和接收串行數(shù)據(jù)。由于發(fā)送數(shù)據(jù)時(shí),從單片機(jī)輸出的串行數(shù)據(jù)在TxSYNC的上升沿必須有效且穩(wěn)定,因此,應(yīng)該在時(shí)鐘的下降沿輸出單片機(jī)的串行數(shù)據(jù)。同樣,在RxSYNC的下降沿讀取單片機(jī)同步數(shù)據(jù)線(CLOCK DATA)上的串行數(shù)據(jù),同時(shí)在RxSYNC的上升沿忽略同步數(shù)據(jù)線的狀態(tài)。而在接收數(shù)據(jù)時(shí),載波檢測端口的輸出狀態(tài)可表明有效的FFSK數(shù)據(jù)是否進(jìn)入CMX469A,并可通過載波檢測來防止CMX469A接收虛假的數(shù)據(jù)。

CMX469A與單片機(jī)的接口電路設(shè)計(jì)主要分為兩部分:發(fā)送接口電路設(shè)計(jì)和接收接口電路設(shè)計(jì)。發(fā)送接口電路由發(fā)送允許(TxEN)、發(fā)送時(shí)鐘線(TxSYNC)、發(fā)送數(shù)據(jù)線(TxDATA)三部分構(gòu)成。此時(shí)的FFSK數(shù)據(jù)輸出線(TxSIGNAL)用于輸出經(jīng)過調(diào)制的FFSK信號(hào)。接收接口則由接收允許(RXEN)、接收時(shí)鐘線(RxSYNC)、載波檢測(Carrier Detect)、時(shí)鐘同步接收數(shù)據(jù)線(CLOCK DATA)等四部分構(gòu)成。此時(shí),FFSK數(shù)據(jù)輸入線RxSIGNAL為需要解調(diào)的FFSK/MSK信號(hào)的輸入端口。

TXEN為發(fā)送使能控制端口,當(dāng)?shù)碗娖桨l(fā)送使能后,在時(shí)鐘信號(hào)TxSYNC的同步下,TXDATA數(shù)據(jù)線上的信號(hào)將依次被采樣,同時(shí)經(jīng)過調(diào)制即可在TxSIGNAL引腳輸出調(diào)制后的FFSK信號(hào)。在1200bps下,該系統(tǒng)可將高電平“1”轉(zhuǎn)換為1200Hz的正弦波,而將低電平“0”轉(zhuǎn)換為1800Hz的正弦波,并由TxSIGNAL端口輸出。其發(fā)送時(shí)序如圖2所示,Tx-DATA引腳信號(hào)將在時(shí)鐘信號(hào)TXSYNC的上升沿被采樣,因此,TXSYNC的上升沿必須有效并且保持穩(wěn)定。設(shè)計(jì)程序時(shí),應(yīng)該在時(shí)鐘信號(hào)的下降沿依次串行輸出要發(fā)送的數(shù)據(jù)。拉高TxEN將使發(fā)送電路進(jìn)入節(jié)能狀態(tài),這時(shí)TXSYNC將輸出邏輯高電平,TxSIGNAL進(jìn)入高阻態(tài)。TxEN由內(nèi)部上拉為VCC。

RxEN為接收使能引腳。RxEN為高時(shí),使能接收電路,為低時(shí)則使接收電路進(jìn)入節(jié)能狀態(tài)。此時(shí),RxSYNC和接收數(shù)據(jù)端將輸出固定電平。接收使能時(shí),輸入RxSIGNAL的 FFSK信號(hào)經(jīng)過內(nèi)部濾波器后可被恢復(fù)為串行數(shù)據(jù)輸出。同時(shí),從接收的數(shù)據(jù)中還可恢復(fù)出同步時(shí)鐘,單片機(jī)通過采樣此同步時(shí)鐘來同步接收數(shù)據(jù)。接收時(shí)序如圖3所示。設(shè)計(jì)該程序時(shí),應(yīng)該在同步時(shí)鐘RxSYNC的下降沿采樣CLOCK DATA引腳的數(shù)據(jù)。

4 軟件設(shè)計(jì)

該MODEM的軟件設(shè)計(jì)主要包括FFSK發(fā)送程序和FFSK接收程序,其程序流程圖如圖4所示。發(fā)送FFSK數(shù)據(jù)時(shí),首先需要拉低發(fā)送使能端口TxEN,接著檢測時(shí)鐘線(TxSYNC)?并在每一個(gè)時(shí)鐘下降沿移位輸出一位數(shù)據(jù),一直到數(shù)據(jù)全部發(fā)送完成,然后拉高發(fā)送使能端口。至此,FFSK發(fā)送數(shù)據(jù)結(jié)束。

接收FFSK數(shù)據(jù)時(shí),由于接收時(shí)鐘線RxSYNC被接在單片機(jī)的中斷引腳上,因此,只要有FFSK數(shù)據(jù)到達(dá),接收時(shí)鐘線就會(huì)輸出經(jīng)過恢復(fù)的時(shí)鐘信號(hào),并引起單片機(jī)中斷。為了防止誤操作,進(jìn)入中斷子程序以后,應(yīng)該首先判斷載波檢測端口是否有效。如果無效,表明是誤操作,此時(shí)應(yīng)退出接收子程序;如果有效,則繼續(xù)接收FFSK數(shù)據(jù)。在每一個(gè)RxSYNC時(shí)鐘的下降沿,都要鎖存接收數(shù)據(jù)線(CLOCKED DA-TA)的狀態(tài),一直到接收數(shù)據(jù)結(jié)束。同時(shí),在接收數(shù)據(jù)時(shí),為了防止單片機(jī)由于等待數(shù)據(jù)而死機(jī),必須加上碼間隔判斷,如果超過一定的時(shí)間沒有收到預(yù)期的數(shù)據(jù),則將以前接收的數(shù)據(jù)廢棄,并進(jìn)行數(shù)據(jù)接收初始化,以重新進(jìn)行接收。

發(fā)送、接收FFSK數(shù)據(jù)內(nèi)容可以按照自定義協(xié)議來完成,具體為:第一字節(jié)為數(shù)據(jù)長度,然后為若干個(gè)字節(jié)的數(shù)據(jù)內(nèi)容,最后為和校驗(yàn)碼以及異或校驗(yàn)碼。經(jīng)筆者實(shí)踐證明,這種協(xié)議可以比較有效地實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接收,同時(shí)檢測傳輸誤碼的效果也比較好。

5 結(jié)束語

利用CMX469A實(shí)現(xiàn)的無線MODEM具有抗干擾能力強(qiáng)、電路簡單、程序設(shè)計(jì)方便等優(yōu)點(diǎn),對(duì)于只有一個(gè)串行口的51系列單片機(jī)來說,由于CMX469A不占用串行口,因此,單片機(jī)可以利用串行口方便地與計(jì)算機(jī)或者其它設(shè)備進(jìn)行串口通信,從而為整個(gè)系統(tǒng)的設(shè)計(jì)提供方便。



評(píng)論


相關(guān)推薦

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

關(guān)閉