2.3.3語音A/D、D/A模塊設計
對於一個高質量的語音通信係統,A/D-D/A芯片的選擇至關重要。在選擇A/D-D/A芯片時,需要考慮這些芯片的信噪比和濾波性能。一般應優先考慮那些16位線性A/D-D/A芯片,以獲得較高的語音質量。對於任何一種與之相連接的A/D-D/A芯片,AMBE-1000都采用8kHz語音數據采樣率。這些8kHz數據通過串行接口輸入(或者輸出)到AMBE-1000,可以通過軟件(發送命令幀)或者硬件方式,進行A/D-D/A接口的選擇和配置。
2.3.4語音采集模塊設計
本模塊的作用是將麥克風微弱語音信號放大給A/D轉換器。本係統采用了具有自動增益控製(AGC)功能的MIC放大芯片MAX9814,該芯片是Maxim推出的低成本、高品質麥克風放大器,器件具有低噪聲前端放大器、可變增益放大器(VGA)、輸出放大器、麥克風偏置電壓發生器和AGC控製電路。
麥克風語音信號通過管腳8(MICIN)輸入MAX9814芯片,進行語音信號放大,之後從管腳6(MICOUT)輸出,輸出的信號送到模數轉換模塊即CSP1027進行A/D 轉換。
2.3.5功放模塊設計
由於井下語音節點使用環境比較嘈雜,因此需要配備功放來驅動井下的喇叭,本係統采用的功放芯片為Maxim的MAX9736,可以工作在8V至28V,並具有高PSRR,無需穩壓電源。MAX9736采用12V供電時效率可達88%。
語音數據經過解碼、D/A轉換等恢複為模擬信號。輸出的模擬信號要在經過語音模塊進行功率放大送到揚聲器。
3軟件流程設計
語音節點可以與網關節點和組內其他語音節點進行通信。
當與網關通話按鍵按下後(Button_Gate=0),打開本地MIC,關閉本地功放,AMBE-1000工作,修改發送緩衝器標識符,使僅網關節點能接收到該語音數據,等待編碼器編碼完畢(EPR=1),從AMBE-1000中讀取編碼後的數據,然後將壓縮編碼後的語音數據發送到CAN總線上。發送完畢後需要關閉本地MIC,使AMBE-1000休眠。
當與組內其他節點通話按鍵按下後(Button_Group=0),工作過程和與網關節點通話過程基本相同,隻是發送緩衝器標識符不同。
當作為接收節點時,將產生CAN接收中斷,然後判斷是否為本板數據,若是,則等待解碼器空(DPE=1),將數據寫入AMBE-1000解碼,並播放語音。
4結語
采用內置CAN控製器PIC18F458單片機作為控製器,與獨立的CAN收發器CTM8251構成CAN收發模塊;采用低傳輸速率和高通話質量的AMBE-1000芯片作為語音編碼器。應用該方法構造的語音通信係統能夠在保持良好的語音通信質量的前提下,簡化電路,降低功耗,節約成本。