曼彻斯特解密_曼彻斯特编码解码方法与流程
本發(fā)明涉及一種曼徹斯特編碼解碼方法,屬于集成電路技術(shù)領(lǐng)域。
背景技術(shù):
RFID在電子領(lǐng)域被廣泛采用,解125KHz RFID編碼可以通過專用芯片或者單片機軟件來解決。使用專用芯片會增加硬件復(fù)雜度,增加生產(chǎn)成本,而通常的單片機軟件解曼徹斯特編碼都需要開啟定時器的邊沿捕捉,并存儲高低電平的持續(xù)時間,通過高低電平的持續(xù)時間來判定翻轉(zhuǎn)的電平是高還是低或是空跳轉(zhuǎn),這種方法需要邊沿捕計時,并且考慮空閑跳變的干擾,浪費程序資源空間。
技術(shù)實現(xiàn)要素:
為了解決上述問題,本發(fā)明提供一種曼徹斯特編碼解碼方法,該方法僅需要1個定時器即可,只需要記錄跳變時間,可以大大降低軟件開銷,節(jié)省RAM與ROM。
解決上述問題的技術(shù)方案為:一種曼徹斯特編碼解碼方法,包括以下步驟:
S1、起始幀讀取,起始幀為連續(xù)N個1,因為停止位為0,緊隨其后的起始幀必然為1,起始幀的第一個比特位必然為1個跳變,即在N個T0周期里,每隔1/2*T0必有跳變,有2*N-1個跳變邊沿,在N*T0時間內(nèi)檢測是否有2*N-1個跳變,如果有則說明起始幀判定正確,此時讀取數(shù)據(jù)并記錄;
S2、數(shù)據(jù)幀讀取,起始幀讀取結(jié)束后立即進(jìn)入數(shù)據(jù)幀讀取階段,延時大于1/2*T0小于T0,等待跳變邊沿,跳變后的電平數(shù)據(jù)即為當(dāng)前數(shù)據(jù)幀比特位數(shù)據(jù);
S3、校驗數(shù)據(jù)讀取是否正確。
進(jìn)一步地,S1中具體步驟為,設(shè)置起始幀有效跳變時間在20*T1~30*T1之間,如果在此區(qū)間內(nèi)產(chǎn)生跳變,則起始幀有效計數(shù)加1,否則起始幀有效計數(shù)清零;如果起始幀有效計數(shù)計數(shù)值大于等于2*N-2,則進(jìn)入數(shù)據(jù)幀讀取階段。
進(jìn)一步地,S2中具體步驟為,起始幀讀取完畢后,直接進(jìn)入數(shù)據(jù)幀讀取階段,延時4/5*T0,即40*T1,等待邊沿跳變,記錄跳變后的電平數(shù)據(jù)并將數(shù)據(jù)計數(shù)器加1;數(shù)據(jù)計數(shù)器大于等于55個比特,則表示數(shù)據(jù)幀讀取完畢。
進(jìn)一步地,S3中采用行列行列奇偶校驗或冗余校驗。
進(jìn)一步地,對數(shù)據(jù)幀進(jìn)行奇偶校驗的具體步驟為,每行第五個與每列第十個數(shù)分別奇偶校驗,如果行列校驗都通過則表明RFID標(biāo)簽接收正確。
本發(fā)明的優(yōu)點在于:通過對起始幀的判斷和數(shù)據(jù)讀取省去了邊沿捕計時,該方法僅需要1個定時器即可,只需要記錄跳變時間,可以大大降低軟件開銷,節(jié)省RAM與ROM。
下面結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)描述。
附圖說明
圖1為起始幀判斷示意圖;
圖2為數(shù)據(jù)幀判斷示意圖;
圖3為起始幀判斷代碼流程圖;
圖4為數(shù)據(jù)幀代碼流程圖。
具體實施方式
為了加深對本發(fā)明的理解,下面將結(jié)合實施例和附圖對本發(fā)明作進(jìn)一步詳述,該實施例僅用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明保護(hù)范圍的限定。
參見圖1-4所示,本發(fā)明所提供的一種曼徹斯特編碼解碼方法,包括
125KHz RFID信號的載波頻率為125KHz,被調(diào)制信號的頻率為2KHz,采用曼徹斯特編碼,曼徹斯特編碼的編碼方式如下:電平由高到低翻轉(zhuǎn)代表1,由低到高代表0。
通過檢測邊沿變換的時間計數(shù)判斷起始幀,記錄下起始幀結(jié)束位置,幀結(jié)束位置確定后,延時3/4個周期等待邊沿跳變,記錄跳變后的電平信號,跳變后的信號,就是所需的RFID解碼數(shù)據(jù)。該方法僅需要1個定時器即可,只需要記錄跳變時間,可以大大降低軟件開銷,節(jié)省RAM與ROM。
具體實施方法:
設(shè)解調(diào)信號的周期為T0,采樣周期為T1,T1遠(yuǎn)小于T0,在此設(shè)置50*T1=T0。起始幀1的個數(shù)為N個。
1、起始幀讀取:
起始幀為連續(xù)N個1,因為停止位為0,緊隨其后的起始幀必然為1,起始幀的第一個比特位必然為1個跳變,即在N個T0周期里,有2*N-1個跳變邊沿。設(shè)置起始幀有效跳變時間在20*T1~30*T1之間,如果在此區(qū)間內(nèi)產(chǎn)生跳變,則起始幀有效計數(shù)加1,否則起始幀有效計數(shù)清零。如果起始幀有效計數(shù)值大于等于2*N-2,則進(jìn)入數(shù)據(jù)幀讀取階段;
2、數(shù)據(jù)幀讀取:
起始幀讀取完畢后,直接進(jìn)入數(shù)據(jù)幀讀取階段,延時4/5*T0,即40*T1,等待邊沿跳變,記錄跳變后的電平數(shù)據(jù)并將數(shù)據(jù)計數(shù)器加1。數(shù)據(jù)計數(shù)器大于等于55個比特,則表示數(shù)據(jù)幀讀取完畢。
3、奇偶校驗
為防止數(shù)據(jù)接收錯誤,要對數(shù)據(jù)幀進(jìn)行奇偶校驗。每行第五個與每列第十個數(shù)分別奇偶校驗。如果行列校驗都通過則表明RFID標(biāo)簽接收正確。
上述步驟所對應(yīng)的的代碼為:
1.1、起始幀判斷代碼:
1.2、數(shù)據(jù)幀判斷代碼
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
總結(jié)
以上是生活随笔為你收集整理的曼彻斯特解密_曼彻斯特编码解码方法与流程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用animate实现页面过度_很多人都
- 下一篇: 图像数据流识别圆形_人工智能大赛视觉处理