嵌入式藍牙PSTN網關的設計與實現
3.3 電話機模塊
SHL603C是采用單5 V供電的用戶接口電路芯片,集成了用戶接口電路的所有功能,簡化了用戶外圍電路的設計。其中RC引腳是饋鈴饋電控制引腳:當高電平時模塊振鈴;低電平時模塊饋電。設計中將BC4-ext芯片的PIO4和PIO5分別分配給SHK2引腳和RC引腳。其詳細電路如圖5所示。本文引用地址:http://www.104case.com/article/148835.htm
3.4 語音編解碼模塊
語言編解碼模塊負責對語音數據進行A/D和D/A轉換。藍牙模塊通過PCM數據接口構成其與語音芯片MC145483的收發數據通道,并通過PCM_SYNC控制語音同步,通過PCM_CLK控制控制送給語音芯片的時鐘信號。設計電路如圖6所示。
4 軟件設計
應剛程序的開發,選擇CSR公司的Bluelab。BlueLab的藍牙軟件開發包主要由以下幾部分組成:
(1)xIDE集成開發環境。
(2)包含藍牙協議棧的BlueCore固件。
(3)常用的幾種藍牙剖面。
(4)庫文件和相應的頭文件。
BlueLab允許程序員根據特殊的需要以靈活的方式開發應用程序,使用參考示例代碼簡化開發進程。在對藍牙語音收發組件的軟件進行設計時,就可以以相關剖面(Profile)進行開發。
軟件部分的設計主要包括按鍵處理子程序、顯示處理子程序以及主程序。主程序用于進行系統的初始化,負責藍牙語音設備的配對連接,并響應按鍵模塊的命令,處理手機和同定電話之間的語音切換,同時負責將獲取的狀態信息,如通話狀態、來電顯示等傳遞給液晶顯示模塊進行顯示。按鍵子模塊分為3個按鍵功能:(1)“固話”按鍵;(2)“手機”按鍵;(3)“拒接”按鍵。當PSTN網絡或移動通信網有來電呼叫時,對應的“固話”或“手機”按鍵的指示燈會閃爍,這時通過按鍵即可進行不同通信網絡問的切換。顯示部分子程序包含了顯示驅動芯片的初始化函數,并定義了分屏顯示、顯示漢字、顯示圖形等函數。
4.1 主程序設計
Bluelab提供了一種虛擬多任務的體系架構VM(Virtual Machine),使得應用程序可以處理多任務。該機制把應用程序中需要處理的各種消息分類,設立多個消息隊列,每個消息隊列的消息都采用一個單獨的TASK來處理,如同有不同的TASK在處理不同的事物,實現了多任務機制。
數字通信相關文章:數字通信原理
通信相關文章:通信原理
藍牙技術相關文章:藍牙技術原理
評論