單片機與數字電臺的串行通信
*一個指令由3字節(jié)構成,第二字節(jié)等于第一字節(jié)加上35H,第3字節(jié)等于第二字節(jié)加上36H。如果收到的指令不符合此規(guī)則,則重發(fā)該命令,連續(xù)三次錯誤時停發(fā)。
*主控站每發(fā)一個指令,測量站都回送一個應答信號。該應答信號中包含原指令樣本。
下面給出單片機串行口與電臺的基本通信程序。
初始化程序:
BTL EQU 2FH ;波特率放在內部RAM的2FH單元
MOV TMOD,#21H;T0方式1,16位計數器,T1方式2,串口用
SETB TR0 ;啟動T0
MOV BTL,#0F3H ;波特率設定為1200
MOV SCON,#0C0H;串口方式3,9位數據,禁止接收
接收及驗證程序:
NUM EQU 2BH ;同步符個數值存放在內部RAM的2BH單元
TEMP EQU 2CH
ROM-CH:DB 55H,55H,55H,55H,55H,55H,55H,55H,55H,55H
DB 55H,55H,55H,55H,55H,55H,55H,55H,55H,55H ;20字節(jié)同步符
MIM DB 'WSC':3字節(jié)密碼“WSC”
SETB P3.5 ;置電臺收狀態(tài)
SETB REN ;允許串口接收
A1:MOV NUM,#0 ;記錄連續(xù)到同步符55H的個數
A2:JB RI,A2 ;串口有數據轉A3
A3:CLR RI ;清接收中斷標志
MOV A,SBUF ;讀串口數據
CJNE A,#55H,A1;不是同步符轉A1
INC NUM ;收到的同步符個數加1
MOV A,NUM ;取收到的同步符個數
CJNE A,#5,A2 ;未收夠連續(xù)5個55H轉A2
A4:MOV NUM,#0 ;密碼驗證,記錄收到密碼字節(jié)數
A5:MOV DPTR,#MIM;密碼字符首址
MOV A,NUM
MOVC A,@A+DPTR;查表取密碼
MOV TEMP,A ;保存密碼
JB RI,A6 ;串口收完一個字節(jié)轉A6
…
A6:CLR RI ;清接收中斷標志
MOV A,SBUF ;讀串口數據
CJNE A,TEMP,A4;與密碼不符轉A4
INC NUM ;收到的密碼個數加1
MOV A,NUM ;取已收到的密碼字節(jié)數
CJNE A,#3,A5 ;密碼未收完轉A5
發(fā)送程序:
CLR P3.5 ;置電臺發(fā)狀態(tài)
MOV B,#23
MOV DPTR,#ROM-CH
B1:CLR A
MOVC A,@A+DPTR;查表發(fā)送同步符和密碼共24字節(jié)
INC DPTR
LCALL SEND-CH ;調發(fā)送單字節(jié)子程序
DJNZ B,B1
…
CLR A
MOV DPTR,#7000H;外部RAM數據首址,發(fā)送外部RAM中的數據到電臺
B2:CJNE R4,#0,B3
CJNE R3,#0,B3;R4R3=發(fā)送字節(jié)數
B3:MOVX A,@DPTR;取數據
INC DPTR
LCALL SEND-CH
CJNE R3,#0,B4
CJNE R4,#0,B5
B4:DEC R3
LJMP B2
DEC R3
DEC R4
LJMP B2
…
SEND-CH:SETB TB8
MOV SBUF,A
DB 0,0,0,0,0,0,0,0
JNB TI,$ ;延時4μs
CLR TI
RET
結語
無線數據傳輸系統(tǒng)建成后,已經使用了兩年多,運行結果表明,系統(tǒng)工作穩(wěn)定可靠。由于采用了較完善的軟硬件設計和抗干擾措施,保證了系統(tǒng)工作的安全性和可靠性。測量站把采集的現場信號及時傳送到主控站,提高了數據處理的實時性。單片機和數字電臺接口的軟硬件設計具有很強的適用性,可廣泛應用于無線數傳設備
51單片機相關文章:51單片機教程
單片機相關文章:單片機教程
單片機相關文章:單片機視頻教程
單片機相關文章:單片機工作原理
通信相關文章:通信原理
cdma相關文章:cdma原理
負離子發(fā)生器相關文章:負離子發(fā)生器原理 晶振相關文章:晶振原理 數字濾波器相關文章:數字濾波器原理 離子色譜儀相關文章:離子色譜儀原理
評論