找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 786|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

匯編利用八位動(dòng)態(tài)數(shù)碼管顯示兩個(gè)按鍵之間的時(shí)間間隔

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
采用定時(shí)器和外部中斷方式,按第一個(gè)鍵(K1)開始計(jì)時(shí),按第二個(gè)鍵(K2)計(jì)時(shí)停止,此時(shí)在八位數(shù)碼管上顯示測(cè)量的時(shí)間間隔數(shù)值(單位:秒)。
接線如下

之前用一位靜態(tài)數(shù)碼管做了這個(gè)實(shí)驗(yàn),想在這個(gè)基礎(chǔ)上修改但是不知道怎么才能實(shí)現(xiàn)顯示按下兩個(gè)按鍵時(shí)間間隔
循環(huán)顯示0到9(兩個(gè)外部中斷,兩個(gè)按鍵控制開始和暫停)
TAB:  DB   0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H    ;定義了一個(gè)數(shù)組
UP0:  
    MOV R7,#10                        ;等下用來記錄循環(huán)了次數(shù),因?yàn)?-9有10個(gè)數(shù),所以賦值為10
    MOV R2,#00H                        ;用來存儲(chǔ)偏移量
    MOV DPTR,#TAB                ;將數(shù)組的首地址用DPTR來記錄
UP:
    MOV   A,R2           ;將當(dāng)前偏移量賦值給變量A
    MOVC  A,@A+DPTR                ;MOVC A,@A+DPTR是讀取地址為A+DPTR存儲(chǔ)單元的內(nèi)容。
    MOV   P2,A                        ;讀取到的數(shù)組內(nèi)容賦值給P2引腳
    LCALL  DELAY1000MS    ;LCALL的意思是調(diào)用,調(diào)用DELAY1000MS
    INC     R2                        ;inc代表加一(偏移量加一)
    DJNZ   R7,UP        ;將R7減一,非0則跳轉(zhuǎn)到UP,為0則執(zhí)行下一句(可以執(zhí)行10次)
    SJMP    UP0         ;SJMP是跳轉(zhuǎn)的意思,跳轉(zhuǎn)到UP0的位置
DELAY1000MS:                        ;這里往下是延時(shí)函數(shù)的部分,可以理解為執(zhí)行完下面這這語(yǔ)句用時(shí)1秒
        PUSH 30H
        PUSH 31H
        PUSH 32H
        MOV 30H,#8
        MOV 31H,#1
        MOV 32H,#236
NEXT:
        DJNZ 32H,NEXT
        DJNZ 31H,NEXT
        DJNZ 30H,NEXT
        POP 32H
        POP 31H
        POP 30H
        RET
END

51hei.gif (274.63 KB, 下載次數(shù): 0)

51hei.gif

評(píng)分

參與人數(shù) 1黑幣 +30 收起 理由
wpppmlah + 30 贊一個(gè)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表