新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機入門程序五

        單片機入門程序五

        作者: 時間:2016-11-24 來源:網絡 收藏
        ;*****************************************;

        ;實驗名稱:兩位數碼管動態顯示0-99實驗
        ;作者: 龍誼
        ;版本: VER 1.0
        ;說明: 采用共陰極數碼管
        ;修改:
        ;編程語言: 匯編語言

        ;*****************************************;

        本文引用地址:http://www.104case.com/article/201611/320661.htm

        ORG00H
        START: MOVDPTR,#TABLE;把表TABLE的地址存入數據指針
        MOVR1,#00H ;計數器清零,顯示從00開始
        MOVR5,#50 ;設定顯示間隔為1秒
        BEGIN: MOVA,R1 ;計數器送累加器
        MOVB,#10 ;B=10
        DIVAB ;除法運算,除數送A,余數送B
        MOVCA,@A+DPTR ;從表中除數所指的地址取碼
        MOVP0,A ;碼由P0顯示,即顯示兩位數的十位,段選信號
        MOVP2,#0FDH ;位選由P2控制
        CALLDELAY ;調延時子程序
        MOVP2,#0FFH ;穩定動態顯示處理,PROTUES仿真必加,實際電路測試可不用此行
        MOVA,B ;將余數送A
        MOVCA,@A+DPTR ;從表中余數所指的地址取碼
        MOVP0,A ;碼由P0顯示,即顯示兩位數的個位,段選信號
        MOVP2,#0FEH ;位選由P2控制
        CALLDELAY ;調延時子程序
        MOVP2,#0FFH ;穩定動態顯示處理,PROTUES仿真必加,實際電路測試可不用此行
        DJNZR5,BEGIN ;顯示時間=1秒?不等于跳到BEGIN
        MOVR5,#50 ;等于重新設定延時時間為1秒
        INCR1 ;計數器加1
        CJNER1,#100,BEGIN;計數器=100?不等于返回BEGIN
        JMPSTART ;計數器=100返回開始重新計數
        DELAY: MOVR6,#20 ;采用12MHZ晶振,延時時間為0.01秒
        D1: MOVR7,#248
        DJNZR7,$
        DJNZR6,D1
        RET
        TABLE: DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;共陰極數碼管0-9的編碼
        END



        關鍵詞: 單片機入門程

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 天等县| 清新县| 涞源县| 隆安县| 尉氏县| 丰台区| 通化市| 永丰县| 天门市| 高碑店市| 黄浦区| 古浪县| 满城县| 铜山县| 淮阳县| 武平县| 长泰县| 新绛县| 苍溪县| 灵宝市| 红桥区| 元谋县| 同江市| 洛南县| 黄冈市| 峨山| 西充县| 正定县| 天长市| 台北县| 准格尔旗| 黔江区| 基隆市| 漳州市| 博爱县| 喜德县| 射洪县| 金沙县| 阳山县| 江陵县| 获嘉县|