單片機(jī)遙控解碼源代碼核心代碼
(僅供參考)
org 0300h
zh: push dph ;將識(shí)別后的遙控信號(hào)轉(zhuǎn)換成16位動(dòng)作代碼
push dpl
push acc
push psw
setb psw.3 ;進(jìn)入?yún)^(qū)i
clr psw.4
mov r0,#2fh ;轉(zhuǎn)換2fh個(gè)單元
mov r1,#07h ;8位一小組
jnb 00h,h01 ;允許轉(zhuǎn)換否?
h0:inc r0 ;取第一組第一位
cjne r0,#51h,h1 ;是否干擾?
sjmp h00 ;是則返回
h1:jc h2
sjmp h00
h2:cjne @r0,#03h,h0 ;開始轉(zhuǎn)換第一組第一位
inc r0
cjne @r0,#03h,h0
inc r0
cjne @r0,#03h,h0
inc r0
cjne @r0,#01h,h0
inc r0
cjne @r0,#01h,h0
inc r0
cjne @r0,#01h,h0
inc r0
cjne @r0,#03h,h0
inc r0
cjne @r0,#01h,h0
cjne r0,#59h,h3 ;地址碼正確否?
sjmp h00
;單片機(jī)遙控解碼源代碼
h3:jc h4
sjmp h00
h4:inc r0 ;地址碼正確則開始轉(zhuǎn)換指令碼
mov a,@r0
jb acc.1,h5
clr 08h
sjmp h6
h5:setb 08h
h6:mov a,21h
rl a
mov 21h,a
djnz r1,h4 ;8位指令碼轉(zhuǎn)換完否?
setb 02h ;設(shè)允許執(zhí)行該動(dòng)作標(biāo)志位
clr 01h ;恢復(fù)轉(zhuǎn)換標(biāo)志位
h00:mov 08h,#2fh
mov 09h,#07h
h01:pop psw
pop acc
pop dpl
pop dph
ret
責(zé)任編輯 LK
-
單片機(jī)
+關(guān)注
關(guān)注
6037文章
44558瀏覽量
635303 -
源代碼
+關(guān)注
關(guān)注
96文章
2945瀏覽量
66747 -
遙控解碼
+關(guān)注
關(guān)注
0文章
9瀏覽量
1726
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論