嵌入式智能射頻光傳輸模塊設計
本設計采用射頻收發(fā)芯片CC1000作為數傳芯片。CC1000是根據Chipcon 公司的SmartRF技術制造出的可編程高頻單片收發(fā)芯片,主要用于工作頻帶在315、868 及915MHz 的ISM(工業(yè)、科學及醫(yī)療)方面和SDR(短距離通訊)方面,可在300-1000MHz 范圍內通過編程工作。其主要工作參數能通過串行總線接口編程改變,這樣使CC1000 使用更方便更靈活。CC1000 芯片含有三條串行數據線接口PDATA、PCLK、PALE 用于配置內部寄存器實現收發(fā)等各種功能控制,能夠與多種單片機(MSC51、ARM、AVR、PIC 等)直接兼容連接。
CC1000 與C8051F023的連接圖如圖3 所示。單片機使用三個輸出管腳用于連接CC1000的三串行配置口(PDATA、PCLK、PALE),以配置CC1000的工作模式,其中PDATA 必須是雙向管腳,用于程序數據的輸入輸出。信號接口由DIO和DCLK組成,在本設計中它們分別與單片機的TXD1和RXD1連接,實現數據的半雙工式收發(fā)。管腳CHP_OUT用于監(jiān)視頻率鎖定狀態(tài),當CC1000內部的PLL鎖定時,該引腳輸出高電平。另外單片機可通過A/D轉換檢測RSSI信號的強度。
近端模塊與遠端模塊之間采用FSK通信,在圖3 中,引腳RF_OUT和RF_IN分別用于發(fā)送FSK_OUT信號和接收FSK_IN信號。通信數據FSK_OUT由近端模塊中的CC1000發(fā)出,結合圖2 可知,FSK_OUT信號通過耦合器耦合到射頻信號中,經過光/電轉換進入光纖傳輸至遠端模塊;在遠端,光信號被還原為射頻信號,通過低通濾波得到FSK信號,此時稱FSK_IN信號,該信號被遠端模塊的CC1000接收。遠端模塊發(fā)送給近端模塊的數據依據同樣的原理傳輸。模塊之間的FSK通信大大提高了對光模塊的監(jiān)測和控制能力。
C8051F023有兩個UART接口,在本設計中UART0與上位機通信,UART1則用于與CC1000的數據傳輸。
3.系統軟件設計
3.1 系統軟件總體設計
軟件總體功能主要分為四個部分:參數監(jiān)測、數據存儲、數據收發(fā)和性能控制。在主程序中采用兩個中斷:定時器中斷和串口中斷。定時器中斷實時采集參數數據,實現模塊的實時監(jiān)測;串口中斷實時收發(fā)上位機和FSK數據,實現命令的處理和監(jiān)控數據的傳輸。
主程序的結構如圖4所示,程序對上位機命令進行鑒權處理之后,根據通信協議解析處理命令,并執(zhí)行相應的操作。
3.2 CC1000參數編程
CCl000作為數傳芯片,需要進行參數配置以決定其工作性能,因而CC1000參數編程是一個重要的過程。通過可編程配置寄存器能改變以下主要參數:接收/發(fā)送模式、射頻輸出功率、射頻輸出頻率、FSK分頻、晶振參考頻率、傳輸速率和數據格式等。在本設計中,CC1000 采用曼徹斯特編碼方式,進行數據譯碼和同步工作,這通過設置CC1000 的MODEM1 寄存器的參數完成。在同步編碼方式中,曼徹斯特編碼不需要鎖定平均值濾波器,傳輸效率高。設計要求CC1000采用11.0592MHz晶振,接收本振頻率為433.766MHz,發(fā)射中心頻率為433.916MHz(連發(fā)“1”)、433.948MHz (連發(fā)“0”),調制頻偏為32KHz,載頻穩(wěn)定度為10KHz。根據以上參數,可通過Chipcon 公司提供的CC1000配置軟件SmartRF Studio來產生配置信息,這些配置信息將被輸入到單片機中。另外該軟件還可以提供輸入/輸出匹配電路和VCO電感所需的元件參數值。
完成配置信息后,要對CC1000進行初始化,初始化主要完成對CC1000內部寄存器的設置。在初始化時需復位CC1000內部寄存器。當完成寄存器的設置后,為了避免芯片運行過程中頻率產生的漂移,應當校正CC1000內部VCO和PLL寄存器中的值。校正完成后,對MAIN寄存器進行設置,將CC1000輸出功率初始值設為0,功耗模式設置為低電平模式,以降低功耗。初始化流程如圖5所示。
看屁屁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);
})();
linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論