新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 單片機初級篇—單個指示燈左移

        單片機初級篇—單個指示燈左移

        作者: 時間:2016-11-26 來源:網絡 收藏
        功能說明:通過取表的方法,使P1口的指示燈,進行單個指示燈左移運動。

        一、硬件電路

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



        二、程序:

        ORG 00H;程序開始

        *******************************************

        START: MOV DPTR,#TABLE;數據指針指向表頭地址⑴

        ********************************************

        S1:MOVA,#00H;設置地址偏移量⑵

        *************************************************

        MOVCA,@A+DPTR;根據DPRT到表內取顯示碼⑶

        ******************************************************

        CJNEA,#0fe0h,S2;判斷是否是結束碼

        LJMPSTART

        ********************************************

        S2:

        MOVP1,A;將取到的顯示碼送P1口顯示

        LCALL DELAY

        INCDPTR;數據指針加1

        LJMPS1

        ****************************************

        DELAY:MOVR5,#20;延時子程序

        D1:MOVR6,#20

        D2:MOVR7,#248

        DJNZR7,$

        DJNZR6,D2

        DJNZR5,D1

        RET

        *********************************************

        TABLE:

        DB 01H,02H,04H,08H ;顯示碼表

        DB 10H,20H,40H,80H,

        db 00h,00h,00h,00h

        db 00h,00h,00h,00h

        db0feh

        end

        三、理論依據:

        1、取表的大要素:

        (1)定義表頭指針

        MOVDPTR,#TABLE;數據指針指向表頭地址⑴

        (2)定義偏移量

        MOVA,#00H;設置地址偏移量⑵

        (3)取值

        MOVCA,@A+DPTR;根據DPRT到表內取顯示碼⑶

        2、 制表要領:

        (1)要有標號,以“:”冒號相隔。

        (2)DB開頭,DB與數值之間要有“空格”。

        (3)數值為十進制0—255,十六進制0—0FFH,二進制00000000B—11111111B

        (4)數值以“,”逗號相隔。

        一般要有結束碼,也可以沒用。作為結束碼時,不能與里面的數值相同。



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 神农架林区| 麟游县| 洞头县| 拉萨市| 凭祥市| 吉安市| 新宁县| 贡山| 安图县| 方正县| 大方县| 宁陕县| 台东县| 同江市| 正镶白旗| 临朐县| 林州市| 南汇区| 宜兴市| 乳源| 田阳县| 新干县| 孟连| 沙湾县| 海口市| 黄浦区| 察隅县| 齐齐哈尔市| 西和县| 福建省| 高陵县| 大连市| 陆川县| 房产| 虹口区| 咸宁市| 娄底市| 南投市| 屏东县| 克什克腾旗| 枣庄市|