摘要:以PIC單片機(jī)和CC1000為核心器件,設(shè)計(jì)并實(shí)現(xiàn)無線數(shù)據(jù)傳輸發(fā)射機(jī);介紹PIC16C73芯片和CC1000芯片的性能,詳細(xì)討論發(fā)射機(jī)的硬件和軟件系統(tǒng)設(shè)計(jì)并予以實(shí)現(xiàn)。
本文介紹以PIC16C73和CC1000為基本部件,設(shè)計(jì)并實(shí)現(xiàn)無線數(shù)據(jù)傳輸發(fā)射機(jī)的過程。
1 PIC16C73及CC1000簡介
PIC16C73是Microchip公司生產(chǎn)的一種高性價(jià)比的8位嵌入式微控制器。CC1000是為在無線條件下應(yīng)用所設(shè)計(jì)的一種極低功率單芯片射頻收發(fā)器。它主要是為315、433、868和915MHz的ISM和SRD設(shè)備所設(shè)計(jì),可以編程工作在300~1000MHz范圍之間的任一頻率上。它具有極低的電流消耗、高靈敏度、體積小、低供電電壓、FSK數(shù)據(jù)傳輸率可達(dá)76.8kbps、FSK調(diào)制頻譜修正等特點(diǎn),它還為用戶提供了簡單易用的開發(fā)包。使用CC1000芯片設(shè)計(jì)電路簡單,不需要使用極少的外部元件、不需要外部射頻轉(zhuǎn)換和中頻濾波器。
2 系統(tǒng)設(shè)計(jì)
本無線數(shù)據(jù)傳輸發(fā)射機(jī)框圖如圖1所示。
圖中,PIC16C73接收數(shù)字或模擬信號,經(jīng)過緩存、組幀后,將數(shù)據(jù)傳送到射頻發(fā)射機(jī),由CC1000實(shí)現(xiàn)FSK調(diào)制后發(fā)射出去。
本設(shè)計(jì)中PIC16C73的振蕩周期為4MHz,指令周期為1μs。CC1000工作在發(fā)射狀態(tài),發(fā)射頻率306.874457MHz,頻偏64kHz,速率7638Kbps,發(fā)射功率10dBm。發(fā)射數(shù)據(jù)采用自定義幀格式,其格式為:
4字節(jié)位同步字—0AAH,0AAH,0AAH,0AAH;
2字節(jié)幀同步字(3位0加13位巴克碼)—1FH,35H;
1字節(jié)地址或命令;
50字節(jié)數(shù)據(jù)。
上述57字節(jié)組成一幀,每兩幀之間間隔為8.25ms。
3 硬件設(shè)計(jì)
單片機(jī)PCI16C73與CC1000的連接如圖2所示。
單片機(jī)通過對3-wire串行設(shè)置接口(PDATA,PCLK和PALE)編程,使CC1000處在不同工作模式下。為實(shí)現(xiàn)數(shù)據(jù)回讀,PDATA必須使能雙向引腳,另一個雙向引腳被用來實(shí)現(xiàn)數(shù)據(jù)(DIO)的發(fā)送和接收。提供數(shù)據(jù)定位的位置寄存器,完全設(shè)置CC1000需要發(fā)送29個16位的數(shù)據(jù)幀(7位地址位、1位讀/寫位和8位數(shù)據(jù)位)。
在每個寫循環(huán)中,編程數(shù)據(jù)PDATA線上都發(fā)送16位數(shù)據(jù),每個數(shù)據(jù)幀中前7位為地址位,下一位是讀/寫位(高電平寫,低電平讀),后8位是數(shù)據(jù)。在地址和讀/寫位傳送過程中,程序地址鎖存器使能PALE線必須保持低電平,然后傳送8位數(shù)據(jù)位。PDATA上的數(shù)據(jù)同步在編程時鐘PCLK的負(fù)沿完成。當(dāng)D0,即8位數(shù)據(jù)位的最后一位已經(jīng)載入時,數(shù)據(jù)就會被載入內(nèi)部設(shè)置寄存器,時序如圖3所示。
這些設(shè)置寄存器也可被單片機(jī)通過同樣的設(shè)置接口讀取。7位地址首先被發(fā)送,然后讀/寫位被置為低來,開始數(shù)據(jù)回讀,時序如圖4所示。
作者:北京理工大學(xué) 閆冬 何遵文 來源:單片機(jī)與嵌入式系統(tǒng)