基于單片機的韋根信號的接收
DT1: PUSH PSW ;
PUSH ACC
SETB RS1
CLR RS0 ;第二組寄存器
SETB C ;DATA1
MOV R7,#4 ;26位用4字節(jié)
MOV R0,#WGBUF ;緩沖器首地址
DT11:MOV A,@R0
RLC A
MOV@R0,A
INC R0
DJNZ R7,DT11
DJNZ WXH0,DTlE ;26位接收完畢?
MOV WXH0,#26 ;韋根數(shù)據(jù)位數(shù)
ACALL WG26 ;韋根處理
DT1E:POP ACC
POP PSW
RETI ;中斷返回
提供的兩個中斷服務程序可共同完成26位韋根碼的接收。其中,外中斷0負責DATA0的接收;外中斷1負責DATA1的接收。
當26位的韋根碼接收完整后調(diào)用子程序WG26,在子程序中進行韋根碼的奇偶校驗、存儲、發(fā)送等處理。程序使用4個字節(jié)作為韋根碼存儲單元,即前三個字節(jié)的全部和第四字節(jié)的最低2位。
4 結(jié)束語
應用單片機的中斷技術(shù)實現(xiàn)了韋根信號的接受,設(shè)計的電路和程序均已通過調(diào)試,并設(shè)計調(diào)試方案如圖3所示。本文引用地址:http://2s4d.com/article/171634.htm
經(jīng)測試,讀卡成功率100%,未發(fā)現(xiàn)差錯,通信正確率100%。設(shè)計完全達到預期效果,并在實際項目實施過程中運行正常。文章中給出了完整的接收程序。由于篇幅所限,初始化程序、信號處理程序未與列出,需要者可與作者聯(lián)系,愿予提供、交流。
評論