在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)4位數(shù)碼管電子時(shí)鐘

            單片機(jī)4位數(shù)碼管電子時(shí)鐘

            作者: 時(shí)間:2016-11-29 來(lái)源:網(wǎng)絡(luò) 收藏

            display:mov a,31h ;秒顯示
            mov b,#10
            div ab
            mov 20h,a ;將秒十位存20h
            mov 21h,b ;將秒個(gè)位存21h
            disp1: mov a,20h ;秒十位顯示
            mov dptr,#table ;查表
            movc a,@a+dptr ;將A與查表的值相加,回存給A
            mov p0,a ;將A的值賦給P0口
            clr p2.0 ;點(diǎn)亮秒十位
            lcall del1ms ;調(diào)用延時(shí)1MS子程序
            setb p2.0 ;滅秒十位
            disp2: mov a,21h ;秒個(gè)位顯示
            mov dptr,#table
            movc a,@a+dptr
            mov p0,a
            clr p2.1
            lcall del1ms
            setb p2.1
            disp3: mov a,32h ;分顯示
            mov b,#10
            div ab
            mov 22h,a
            mov 23h,b
            disp4: mov a,22h ;分十位顯示
            mov dptr,#table
            movc a,@a+dptr
            mov p0,a
            clr p2.6
            lcall del1ms
            setb p2.6
            disp5: mov a,23h ;分個(gè)位顯示
            mov dptr,#table
            movc a,@a+dptr
            mov p0,a
            clr p2.7
            lcall del1ms
            setb p2.7
            disp6: mov a,33h ;時(shí)顯示
            mov b,#10
            div ab
            mov 24h,a
            mov 25h,b
            disp7: mov a,24h ;時(shí)十位顯示
            mov dptr,#table
            movc a,@a+dptr
            mov p0,a
            clr p2.4
            lcall del1ms
            setb p2.4
            disp8: mov a,25h ;時(shí)個(gè)位顯示
            mov dptr,#table
            movc a,@a+dptr
            mov p0,a
            clr p2.5
            lcall del1ms
            setb p2.5
            ret
            display1:mov a,38h ;鬧鐘分顯示
            mov b,#10
            div ab
            mov 26h,a
            mov 27h,b
            dispnz1:mov a,26h ;鬧鐘分十位顯示
            mov dptr,#table
            movc a,@a+dptr
            mov p0,a
            clr p2.6
            lcall del1ms
            setb p2.6
            dispnz2:mov a,27h ;鬧鐘分個(gè)位顯示
            mov dptr,#table
            movc a,@a+dptr
            mov p0,a
            clr p2.7
            lcall del1ms
            setb p2.7
            dispnz3:mov a,39h ;鬧鐘時(shí)顯示
            mov b,#10
            div ab
            mov 28h,a
            mov 29h,b
            dispnz4:mov a,28h ;鬧鐘時(shí)十位顯示
            mov dptr,#table
            movc a,@a+dptr
            mov p0,a
            clr p2.4
            lcall del1ms
            setb p2.4
            dispnz5:mov a,29h ;鬧鐘時(shí)個(gè)位顯示
            mov dptr,#table
            movc a,@a+dptr
            mov p0,a
            clr p2.5
            lcall del1ms
            setb p2.5
            ret
            table:db 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;數(shù)字0-9的十六進(jìn)制數(shù)
            del1ms:mov r7,#10 ;1ms延時(shí)子程序
            del1: mov r6,#50
            del2:djnz r6,del2
            djnz r7,del1
            ret
            del20ms:mov r5,#40 ;20ms延時(shí)子程序
            del3:mov r4,#250
            del4:djnz r4,del4
            djnz r5,del3
            ret
            key:jnb p3.2,key1 ;時(shí)間分加1按鈕
            jnb p3.3,key2 ;時(shí)間時(shí)加1按鈕
            sjmp keyout
            key1:lcall del20ms ;20ms延時(shí)消抖
            jb p3.2,keyout
            jnb p3.2,$ ;等待按鍵放開(kāi)
            inc 32h ;分加1
            mov a,32h
            cjne a,#60,keyout ;判分是否加到60,沒(méi)有就返回
            mov 32h,#00
            sjmp keyout
            key2:lcall del20ms ;20ms延時(shí)消抖
            jb p3.3,keyout
            jnb p3.3,$ ;等待按鍵放開(kāi)
            inc 33h ;時(shí)加1
            mov a,33h
            cjne a,#24,keyout ;判時(shí)是否加到24,沒(méi)有就返回
            mov 33h,#00 ;時(shí)加到24,時(shí)清零
            sjmp keyout
            keyout:ret
            keynz:jnb p3.4,keynz1 ;鬧鐘時(shí)間和當(dāng)前時(shí)間切換按鈕
            jnb p3.5,keynz2 ;鬧鐘加分1按鈕
            jnb p3.6,keynz3 ;鬧鐘時(shí)加1按鈕
            jnb p3.7,keynz4 ;關(guān)閉鬧鐘按鈕
            sjmp nzout
            nz1:lcall display1 ;調(diào)用顯示鬧鐘時(shí)間子程序
            jnb p3.5,keynz2
            jnb p3.6,keynz3
            keynz1:jnb p3.4,nz1 ;按住按鍵不放開(kāi)顯示鬧鐘時(shí)間并可以調(diào),放開(kāi)則顯示當(dāng)前時(shí)間
            sjmp nzout
            keynz2:lcall del20ms
            jb p3.5,nzout
            jnb p3.5,$ ;等待按鍵放開(kāi)
            inc 38h ;鬧鐘分加1
            mov a,38h
            cjne a,#60,nzout ;判鬧鐘分是否加到60,沒(méi)有就返回
            mov 38h,#00 ;鬧鐘分加到60,將鬧鐘分清零
            sjmp nzout
            keynz3:lcall del20ms
            jb p3.6,nzout
            jnb p3.6,$ ;等待按鍵放開(kāi)
            inc 39h ;鬧鐘時(shí)加1
            mov a,39h
            cjne a,#24,nzout ;判鬧鐘時(shí)是否加到24,沒(méi)有就中斷返回
            mov 39h,#00 ;鬧鐘時(shí)加到24,鬧鐘時(shí)清零
            sjmp nzout
            keynz4:jb p3.7,nzout
            jnb p3.7,$ ;等待按鍵放開(kāi)
            setb p1.0 ;關(guān)閉鬧鐘
            sjmp nzout
            nzout:ret
            end

            本文引用地址:http://www.biyoush.com/article/201611/323565.htm

            上一頁(yè) 1 2 下一頁(yè)

            評(píng)論


            技術(shù)專(zhuān)區(qū)

            關(guān)閉