旋轉導向工具中聲波短傳的信號處理方法研究
單片機傳送數據到AD9833的時序如圖4所示。FSYNC引腳是使能引腳,電平觸發(fā)方式,低電平有效。進行串行數據傳輸時,FSYNC引腳必須置低。需要注意的是,在FSYNC開始變?yōu)榈颓埃磳㈤_始寫數據時),SCLK必須為高電平。
圖4 單元機傳送數據到AD9833的時序圖
單片機寫16位數據到AD9833時,高位在前,低位在后。用軟件模擬時鐘信號和片選信號。傳送數據的程序如下:
SCLK=1;
FSYNC=1;
Delay(100);
FSYNC=0;
for(i=0;i16;i++)
{ SDATA=datas0x8000;
SCLK=0;
Delay(50) ;
SCLK=1;
datas=datas1;
}
Delay(50);
FSYNC=1;
SCLK=0;
輸出波形
在示波器上觀測FSK調制信號,可看到頻率為7230Hz的正弦信號輸出,實際輸出頻率為7.22985kHz。
接收信號處理
接收處理過程
由于聲波傳感器輸出的是模擬信號,因此在進行ADC采樣之前必須進行信號的預濾波處理??紤]到最大限度降低信號紋波的要求和濾波器的通帶濾波特性,本設計中采用Butterworth型濾波器。
經過調理后的傳感器信號還不能立即被單片機采樣。這是因為,傳感器輸出信號的范圍是-5V~+5V,而單片機ADC模塊的輸入電壓范圍是0V~2.5V,所以調理后的傳感器信號必須經過電壓轉換電路,由精密電壓芯片AD780為單片機提供2.5V標準的ADC參考信號。
程序設計
上位機應用程序是運用MATLAB的類(Serial)和m語言開發(fā),輔以MATLAB的GUIDE工具箱,程序開發(fā)相對簡單。SoC的程序應用C語言編制。下位機MCU接收到上位PC機的下發(fā)命令后,通過串口中斷程序轉入相應的子程序,執(zhí)行相應操作,最后返回一個握手信號作為狀態(tài)標志,確認命令是否被正確執(zhí)行。
幀同步識別
同步過程實際上就是尋找最大相關峰的過程。
先確定一個門限GATE,只有當乘累加的值大于GATE以后才開始比較相關峰。GATE必須設定的意義有兩條:
(1)減少不必要的比較次數,提高程序執(zhí)行效率;
(2)將隨機噪聲和lfm信號乘累加得出的偽最大相關峰濾掉。
出現大于門限GATE乘累加值時,預示著真實的lfm信號可能到來。找到相關峰值所在的位置,就可以知道信息碼的起始位。
評論