一種基于C8051F350的無線同步數(shù)據(jù)采集方法
從傳感器輸出的信號往往是很微弱的毫伏級信號,需要用放大器對信號加以放大。信號經(jīng)放大、濾波后接入C805lF350的模擬信號輸入端。
射頻芯片nRF24L01是一款工作在2.4 GHz~2.5 GHz,世界通用ISM頻段的單片無線收發(fā)器芯片,不僅具有自動應(yīng)答及自動重發(fā)功能,而且在增強型ShockBurst模式下還具有數(shù)據(jù)包識別、地址及循環(huán)冗余校驗方式(Cyclic Redundancy Check,CRC)校驗的功能,減少了外部CPU的工作量,增強了數(shù)據(jù)傳輸?shù)目煽啃浴?/p>本文引用地址:http://m.butianyuan.cn/article/195482.htm
3 采集系統(tǒng)同步設(shè)計
3.1 系統(tǒng)軟件設(shè)計
安裝在操縱桿手柄上的采集系統(tǒng)作為主采集器(簡稱A),實現(xiàn)對操縱桿/舵操縱的施力信號的采集。和操縱連桿相連的采集系統(tǒng)為從采集器(簡稱B),實現(xiàn)對操縱連桿位移信號的采集?,F(xiàn)有的同步數(shù)據(jù)采集系統(tǒng)一般是由l臺控制器控制1片具有多通道的同步數(shù)據(jù)采集芯片,或者同時控制多片同步數(shù)據(jù)采集芯片來實現(xiàn)的。而本系統(tǒng)要完成的是由2片單片機分別控制,對力和位移進行同步數(shù)據(jù)采集。由A控制采集過程的開始和結(jié)束,2個采集器由2片C8051F350分別控制,所以在數(shù)據(jù)采集開始前必須使A和B系統(tǒng)同步。A和B的程序流程圖分別如圖2、圖3所示。
3.2 系統(tǒng)同步的實現(xiàn)
A和B系統(tǒng)同步是指2個采集系統(tǒng)開始采集力數(shù)據(jù)和位移數(shù)據(jù)的時間是一致的,先計算出2片C805lF350控制無線模塊通信過程中的時間差,經(jīng)過時間補償后使2個采集系統(tǒng)開始同步數(shù)據(jù)采集。A和B進行系統(tǒng)同步的流程圖分別如圖4、圖5所示。
A同步初始化后向B發(fā)送一個準(zhǔn)備開始采集的同步信號,隨即檢測是否接收到B發(fā)來的應(yīng)答信號(同步信號和應(yīng)答信號為相同字節(jié)),同時A使用定時器中斷監(jiān)測同步信號是否丟失,定時時間要遠(yuǎn)大于從發(fā)送同步信號到接收到應(yīng)答信號所用時間的理論計算值。若定時內(nèi)沒有收到應(yīng)答信號則認(rèn)為同步信號丟失,觸發(fā)中斷,在中斷子程序中將重新發(fā)送同步信號并裝載定時初值,直到收到應(yīng)答信號。
A的定時時間包括發(fā)送同步信號的時間、同步信號的傳輸時間、B檢測判斷該信號的時間、發(fā)送應(yīng)答信號的時間、應(yīng)答信號的傳輸時間和關(guān)定時器的時間。
其中A發(fā)送同步信號需m個機器周期,B檢測判斷同步信號需n個機器周期,發(fā)送應(yīng)答信號需p個機器周期(p=m),關(guān)定時器需q個機器周期,C8051F350的機器周期為T,則執(zhí)行這些指令的時間S=(m+n+p+q)T。nRF24L0l的數(shù)據(jù)傳輸率為l Mbps,同步信號的傳輸時間為tl,應(yīng)答信號的傳輸時間為t2(t2=t1),這一過程共用時G=t1+t2+S,定時時間為H>>G。
B接收到同步信號后,向A發(fā)送一個應(yīng)答信號,經(jīng)過X的延時后2個采集系統(tǒng)便完成了系統(tǒng)同步。由于測試環(huán)境的不同,X也是不確定的,可由另外的測試程序測試后加以計算獲得。
評論