日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀] 一個(gè)防盜門的控制程序,采用無線遙控方式開門,步進(jìn)馬達(dá)執(zhí)行動(dòng)作。;2009.11.22修正,采用AT89C2051單片機(jī)控制,liweiqiang;P3.3接峰鳴器;P3.5接門狀態(tài)開關(guān)信號(hào)輸入,低電位表示門已關(guān)上,高電位表示門已打

一個(gè)防盜門控制程序,采用無線遙控方式開門,步進(jìn)馬達(dá)執(zhí)行動(dòng)作。
;2009.11.22修正,采用AT89C2051單片機(jī)控制,liweiqiang
;P3.3接峰鳴器
;P3.5接門狀態(tài)開關(guān)信號(hào)輸入,低電位表示門已關(guān)上,高電位表示門已打開
;P3.7搖控開門信號(hào)輸入,低電位表示有開門信號(hào)。
org 0000h
ljmp start
org 000bh
ljmp int_0

start:
mov sp,#60h
mov tmod,#01h
mov th0,#0b0h
mov tl0,#0b8h
mov r1,#00h
mov r0,#00h
setb ea
setb et0
setb tr0
;============================================
main:;主循環(huán)開始
jb p3.5,kss;P35=0,表示門已關(guān)門.向下執(zhí)行
jnb 20H.0,kss;20H.0=0表示已鎖門.轉(zhuǎn)手工開鎖信號(hào)檢測(cè)處
lcall gs;關(guān)鎖
clr 20H.0;置20H.0=0,表示已鎖一次門.
kss:;;手工開鎖信號(hào)檢測(cè)
jnb p3.5,kst;如果門被手動(dòng)從里面打開過就向下執(zhí)行清鎖門標(biāo)志位。
ajmp ddjm
kst:;搖控開鎖信號(hào)檢測(cè)
jb p3.7,kmjs;有低電平開鎖信號(hào)?是向下執(zhí)行
lcall delay;延時(shí)消抖動(dòng)
jnb p3.7,kmjs;確認(rèn)開鎖按鍵是否已放開。是向下執(zhí)行
lcall ks;開鎖
setb tr0;開鎖後計(jì)時(shí)
kmjs:;開門計(jì)時(shí)
cjne r0,#30,main;開門計(jì)時(shí)15秒後檢測(cè)門的狀態(tài)
mov r0,#00h
clr tr0

ddjm:
jb p3.5,$;等待門被關(guān)上
setb 20h.0;門關(guān)上后清已鎖門標(biāo)志位,
clr tr0; 停止計(jì)數(shù)
jmp main;反回主程式
;===========================================

int_0:
push psw
push aCC
inc r1
cjne r1,#14,ext
inc r0
mov r1,#00h
ext:
mov th0,#0b0h
mov tl0,#0b8h
pop acc
pop psw
reti


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;開鎖子程序

ks:
mov r0,#3
loop1:
mov p1,#10101111b
acall delay
mov p1,#11001111b
acall delay
mov p1,#11010111b
acall delay
mov p1,#10110111b
acall delay
djnz r0,loop1
mov p1,#0ffh
lcall delay1
lcall bz
mov r1,#00h
setb tr0
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;關(guān)鎖子程序
gs:
lcall delay1
lcall delay1
lcall delay1
lcall delay1
mov r0,#3
loop2:
mov p1,#10110111b
acall delay
mov p1,#11010111b
acall delay
mov p1,#11001111b
acall delay
mov p1,#10101111b
acall delay
djnz r0,loop2
mov p1,#0ffh
lcall delay1
lcall bz
lcall delay
lcall bz

ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
bz:
clr p3.3
lcall delay1
setb p3.3
ret
delay:
mov r6,#30
d1:mov r7,#0
d2:djnz r7,d2
djnz r6,d1
ret


delay1:
mov r5,#200
dd1: mov r4,#100
dd2: mov r3,#10
dd3: djnz r3,dd3
djnz r4,dd2
djnz r5,dd1
ret
end


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉