• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式智能射頻光傳輸模塊設計

    嵌入式智能射頻光傳輸模塊設計

    作者: 時間:2009-05-06 來源:網絡 收藏
    3.3 數據收發程序[5]
    數據的收發包括:單片機接收上位機數據,單片機向上位機發送數據,單片機接收CC1000數據和單片機向CC1000發送數據。這里僅討論單片機通過串口1接收中斷接收CC1000數據過程,這是整個數據收發程序中的難點。
    中,單片機與CC1000之間采用曼徹斯特同步模式進行數據的接收和發送。在發射模式下(單片機向CC1000發送數據),PCLK提供發送數據時鐘信號,DIO用于數據輸入,CC1000 自動完成對數據的譯碼。在接收模式下,PCLK 提供接收數據時鐘信號,在DIO提供數據,CC1000自動完成數據編碼和同步工作。
    (1)數據幀結構
    在曼徹斯特同步模式下,數據幀由訓練碼、同步碼、前導碼和有效數據構成。在本設計中,訓練碼為連續交替出現的0 和1,共40個;同步碼為連續出現的8個0;前導碼為連續的8個1。當數據中出現符合前面所有格式數據時,接下來的數據就是要接收的有效數據。當數據符合幀格式時,單片機才認為該數據為合格數據,從而進行接收,這樣可以保證接收數據的準確性,降低誤碼率。
    (2)串口1接收中斷服務程序
    在通信過程中CC1000 具有3 種狀態:IDLE(空閑)、RX(接收數據)、TX(發送數據)。由于CC1000與單片機之間是半雙工模式通信,因而RX 與TX 兩狀態要互斥。數據的接收由串口中斷完成:UART0接收中斷接收來自上位機的數據,UART1接收中斷則接收來自CC1000的數據。UART1中斷服務程序數據流程如圖6所示。在接收過程中,為了避免數據幀長度過長,當接收的有效數據超過緩沖區空間時,單片機判定此幀無效。
    3.4 參數監測與控制
    單片機通過A/D轉換完成對參數的采集和數字化,這一過程由定時器中斷完成。監測數據被存儲,并通過PC機顯示出來。增益控制和偏置電壓則通過單片機的D/A轉換來控制。有關這方面的設計,由于篇幅有限,這里不再贅述。
    4.總結
    可以實現直放站近端機和遠端機的遠程光纖通信,在此基礎上,PC 機只需通過RS232/485總線與近端機通信,便可完成對近端機和遠端機的實時監控,方便工作人員對直放站的調試和維護。經測試,CC1000之間的FSK通信在20dB 光衰條件下的誤幀率優于0.1%,保證了監控的可靠性。
    linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 北票市| 盐亭县| 和田县| 永修县| 赤城县| 佛山市| 尚义县| 辽源市| 敦煌市| 陇南市| 惠东县| 成都市| 大方县| 花垣县| 凤凰县| 依兰县| 阿尔山市| 灵璧县| 怀仁县| 广安市| 宁阳县| 银川市| 汤原县| 岑溪市| 张家界市| 九寨沟县| 湘西| 双鸭山市| 昭觉县| 桂林市| 周至县| 岳阳县| 东阳市| 龙泉市| 公主岭市| 漯河市| 鄱阳县| 锡林郭勒盟| 阿瓦提县| 根河市| 阿拉善左旗|