久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

利用PLL(LM567)做頻率解調的實例

作者:佚名   來源:本站原創   點擊數:  更新時間:2012年10月10日   【字體:


    這是最近做的一個很有意思的案子,是一個玩具上用的藍牙控制器。


    條件限定為:一個MONO的藍牙音頻模塊,把它做成藍牙遙控器,而且,控制的時候還要播放主機走藍牙過來的聲音。

    同時,這個藍牙模塊沒有數據片可以走,直接輸出載著直流的音頻差分信號。

    討論的結果就是,在要播放的聲音里混音進人耳聽不到的頻率部分,然后在藍牙音頻模塊輸出端把數據解調出來。


解調部分

 

 
    核心部分就是LM567的解調端,中心頻率設定在人耳基本聽不到的18.5Khz

    核心的部分是音調檢測,用了一款NS家很老的專門做音調檢測的LM567。




 
其原理就是利用本地RC震蕩產生一個頻率,與輸入頻率進行鑒頻,8腳是專門做鑒頻輸出用。

f0的公式電容用uF,電阻用KOmh,頻率為kHz


 
算出來18.5Khz下
Cx=6.8nF
Rx=7.5K
但實際調試的時候RX建議用10K的微調電阻,因為其他器件可能會有誤差

 
帶寬跟C2和輸入信號的有效值有關。
Vi是直接取藍牙輸出的還沒過功放的小信號,振幅很小,所以實際上電路的帶寬會很小,這是有利于做頻率辨識的,以防諧波以及聲音文件里夾雜的各種頻率信號的干擾。
這里C2用的0.1uF,C3用的10uF。測量出來帶寬在500~1kHz左右。

電源用5V,跟后端解碼的單片機電壓一致。
有18.5Khz輸入的時候,8腳輸出低電平。

焊好的板子如下~





聲音部分

首先用一個叫做SweepGen的軟件來做音頻發生,用Total Recorder的虛擬聲卡映射把生成的聲音捕捉下來。

 

 
注意SweepGen和Total Recoder默認的電平和音量不是0db,記得調節到0db的原始聲音狀態。
SweepGen里面記得把波形設置成正弦,因為18.5Khz的方波的諧波能聽出來。
編輯聲音妥妥的就得靠Adobe Audition了,cool edit是它的前身。其實聲音生產也可以用它,只是我沒找到在哪生成正弦波形。

 
 
 

 
Audition里面可以看到,剪輯的聲音頻譜落點很明顯。



解調部分

因為播放器在播放的時候可能會淡出淡入,以及藍牙模塊剛開始播放的時候會開啟內部codec所以正式的編碼數據前要加一段靜音。

 
經過測試,18.5Khz的信號要維持50ms以上,LM567的輸出低電平才跟著18.5Khz的持續時間接近,所以一幀數據長度暫時設置為50ms。

 
由于無輸入的時候解調部分輸出為高,所以同步頭用一個低電平來做下降沿觸發,在觸發MCU這邊的中斷后對IO進行采樣,1ms采樣一次,50ms為一個幀,算上采樣內執行延時,一幀共采樣32次,超過16次為低就認為是0。

 
MCU用的是8051核的新塘N79E8132,2塊錢一顆的單片機

 
采樣的代碼段:
for (cntbit=0;cntbit<8;cntbit++)
{
sample=0;
   for(samcnt=0;samcnt<32;samcnt++)
{
    sample=sample+(P0&0X1);        //
    Delay1ms(1);              //read process
}//
//printf("sample%d = %d \n",cntbit,sample);
if(sample <16)   //HIGH/LOW LEVEL SET
{
state_t=state_t | (0x1<<cntbit);   
}   
}

 
這里的delay是新塘的bsp包里用定時器標志位來做的,并且用一個IO反轉測過執行延時才得出32次循環50ms的結果。
RC的頻率是22M。
同步頭設定為0101,后面四位作為命令位

 
比如01011110的波形就是下圖

 
 

 

 

頭尾1秒靜音用來避免播放器的截頭截尾效應導致數據不全。

 
下圖是用示波器測藍牙的音頻輸出和解調器的輸出

 
 

 
黃色的CH1是解調器輸出,藍色的CH2是音頻輸入

 
下圖是另外一組01011101的波形

 

 

 
基本出來這個波形,解調就不是問題了。

 

 
延時問題

如果你真的需要用LM567,以下這個問題你必須要考慮

 
咱們看圖

 
 
 

 
LM567的鑒頻腳 PIN8的鎖定延時以及失鎖以后恢復高電平的延時如圖

 
鎖定延時大概5ms

 
失鎖的延時大概是10ms

 
而且鎖定延時和失鎖延時會浮動,不是每一次都一樣。觀察下來的結果,這個浮動多的時候會到上面數據的50%之多。

 
也就是表明,你的最小幀長度必須大于15ms的2倍+幀持續長度

 
這也是為什么一幀數據要50ms之長,并且要在一幀的采樣周期里采樣這么多次,還得用閾值來判別采樣期間的電平的原因。
關閉窗口

相關文章

主站蜘蛛池模板: 国产精品日韩欧美一区二区三区 | 欧美一区免费 | 资源首页二三区 | 精品日韩在线 | 精品国产91久久久久久 | 国产精品夜色一区二区三区 | 亚洲国产网址 | 日韩成人在线观看 | 黑人巨大精品欧美一区二区免费 | 欧美精品在线免费观看 | www久久久 | 91精品国产91久久久久久最新 | 一级黄在线观看 | 久久一区精品 | 日韩欧美国产电影 | 成人免费观看男女羞羞视频 | 国产精品精品视频一区二区三区 | 国产一级片免费在线观看 | 国产高清区 | 一区二区三区影院 | 521av网站| 一级毛片免费完整视频 | 欧美日韩国产精品一区二区 | 国产精品国产三级国产aⅴ中文 | 久草电影网 | 久久久久久av | 二区在线视频 | 欧美激情视频一区二区三区在线播放 | 欧美一级毛片久久99精品蜜桃 | 亚洲国产aⅴ成人精品无吗 欧美激情欧美激情在线五月 | 欧美一卡二卡在线观看 | 波多野结衣精品在线 | 91看片网 | 日本一区二区高清不卡 | 国产在线精品一区二区三区 | jizz18国产| 黄视频在线网站 | 成人精品一区二区三区四区 | 精品真实国产乱文在线 | 在线看无码的免费网站 | 成人亚洲网站 |