在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 用單片機(jī)設(shè)計(jì)15s倒計(jì)時(shí)器

            用單片機(jī)設(shè)計(jì)15s倒計(jì)時(shí)器

            作者: 時(shí)間:2012-11-10 來源:網(wǎng)絡(luò) 收藏

            /*
            跳線設(shè)置:默認(rèn)跳線位置,注意選擇跳線J5要選23端
            程序效果:利用的定時(shí)/計(jì)數(shù)器設(shè)計(jì)一個(gè)15到0,
            按S4后啟動,要求精確顯示到百分之一秒。
            發(fā)揮部分:
            1、定時(shí)結(jié)束后有提示音報(bào)警,并可重新定時(shí)
            2、定時(shí)過程中按獨(dú)立鍵盤s5可暫停,按S4繼續(xù)
            運(yùn)行環(huán)境:51hei學(xué)習(xí)板
            */
            ORG 0000H
            LJMP START //主程序必須避開地址000BH
            ORG 000BH //定時(shí)器0的中段服務(wù)程序,起始地址為000BH
            LJMP IT00
            ORG 0030H
            START: MOV TH0,#0EBH //裝入初始值,定時(shí)時(shí)間為10ms
            MOV TL0,#64H
            MOV TMOD,#01H //工作方式1
            MOV 33H,#01 //顯示初值為15s
            MOV 32H,#05
            MOV 31H,#00
            MOV 30H,#00
            SETB ET0 //打開定時(shí)0
            SETB EA //開總中斷
            LOOP1: JB P3.6,LOOP //判斷高低位,即按鍵KEY0是否按 下
            LCALL DISPLAY //為低,即按鍵按下,延時(shí)消抖
            LCALL DISPLAY
            JB P3.6,LOOP //按鍵真的按下,并不是外界的干擾
            SETB TR0 //啟動定時(shí)器
            HERE: LCALL DISPLAY //調(diào)用顯示
            JB P3.7,LOOP3 //判斷高低,即KEY1按鍵是否按下
            CLR TR0 //按下,關(guān)閉定時(shí)器,這里并沒有消抖
            LJMP LOOP1 //等待KEY0的按下
            LOOP3: SJMP HERE //KEY1沒有按下,就需顯示
            LOOP: LCALL DISPLAY //KEY1沒有按下,就需顯示
            LJMP LOOP1
            //減10ms子程序
            SUB1: DEC 30H //百分位減1
            MOV A,30H
            CJNE A,#0FFH,LOOP2 //判斷百分位減到0之后是否 再減1
            MOV 30H,#09 //是,裝入初值9
            DEC 31H //十分位減1
            MOV A,31H
            CJNE A,#0FFH,LOOP2 //判斷百分位減到0之后是否 再減1
            MOV 31H,#09
            DEC 32H
            MOV A,32H
            CJNE A,#0FFH,LOOP2
            MOV 32H,#09
            DEC 33H
            MOV A,33H
            CJNE A,#0FFH,LOOP2
            clr P2.2 //從15s減到0s后,驅(qū)動
            LCALL DELAY //延時(shí)
            LCALL DELAY
            SETB P2.2 //關(guān)閉
            MOV 33H,#01 //裝入初值15s
            MOV 32H,#05
            MOV 31H,#00
            MOV 30H,#00
            LOOP2: NOP //空指令
            RET //返回
            //顯示子程序
            DISPLAY: MOV DPTR,#TAB //賦表首地址
            MOV A,#0FBH

            SETB P2.7
            MOV P0,A //亮最左邊的數(shù)碼管
            CLR P2.7
            XCH A,R0 //暫存A的值
            MOV A,33H
            MOVC A,@A+DPTR //根據(jù)表值查找所需的值
            SETB P2.6
            MOV P0,A //顯示值
            CLR P2.6
            LCALL DELAY //延時(shí)
            XCH A,R0 //恢復(fù)原值
            RL A //循環(huán)左移,為下次做準(zhǔn)備
            SETB P2.7
            MOV P0,A
            CLR P2.7
            XCH A,R0
            MOV A,32H
            MOVC A,@A+DPTR
            SETB P2.6
            MOV P0,A
            CLR P2.6
            LCALL DELAY
            XCH A,R0
            RL A

            SETB P2.7
            MOV P0,A
            clr P2.7

            XCH A,R0
            MOV A,31H
            MOVC A,@A+DPTR
            SETB P2.6
            MOV P0,A
            clr P2.6
            LCALL DELAY
            XCH A,R0
            RL A
            SETB P2.7
            MOV P0,A
            clr P2.7
            XCH A,R0
            MOV A,30H
            MOVC A,@A+DPTR
            SETB P2.6
            MOV P0,A
            clr P2.6
            LCALL DELAY
            RET
            TAB: DB 3FH,06H,5BH,4FH,66H ;數(shù)碼管顯示的數(shù)值
            DB 6DH,7DH,07H,7FH,6FH
            IT00: MOV TH0,#0EBH //裝入初值,時(shí)間為10ms
            MOV TL0,#64H
            LCALL SUB1 //減10ms
            RETI //返回
            DELAY: MOV R7,#04 //延時(shí)子程序,時(shí)間大約為:2us*4*250
            DEL2: MOV R6,#250
            DEL1: DJNZ R6,DEL1
            DJNZ R7,DEL2
            RET
            END //結(jié)束

            蜂鳴器相關(guān)文章:蜂鳴器原理


            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉