新聞中心

        EEPW首頁 > 光電顯示 > 設(shè)計應(yīng)用 > 8X8LED點陣顯示原理與編程技術(shù)

        8X8LED點陣顯示原理與編程技術(shù)

        作者: 時間:2011-12-06 來源:網(wǎng)絡(luò) 收藏
        5.匯編源程序

        MCS51單片機匯

        ORG 00H

        START: NOP

        MOV R3,#3

        LOP2: MOV R4,#8

        MOV R2,#0

        LOP1: MOV P1,#0FFH

        MOV DPTR,#TABA

        MOV A,R2

        MOVC A,@A+DPTR

        MOV P3,A

        INC R2

        LCALL DELAY

        DJNZ R4,LOP1

        DJNZ R3,LOP2

        MOV R3,#3

        LOP4: MOV R4,#8

        MOV R2,#7

        LOP3: MOV P1,#0FFH

        MOV DPTR,#TABA

        MOV A,R2

        MOVC A,@A+DPTR

        MOV P3,A

        DEC R2

        LCALL DELAY

        DJNZ R4,LOP3

        DJNZ R3,LOP4

        MOV R3,#3

        LOP6: MOV R4,#8

        MOV R2,#0

        LOP5: MOV P3,#00H

        MOV DPTR,#TABB

        MOV A,R2

        MOVC A,@A+DPTR

        MOV P1,A

        INC R2

        LCALL DELAY

        DJNZ R4,LOP5

        DJNZ R3,LOP6

        MOV R3,#3

        LOP8: MOV R4,#8

        MOV R2,#7

        LOP7: MOV P3,#00H

        MOV DPTR,#TABB

        MOV A,R2

        MOVC A,@A+DPTR

        MOV P1,A

        DEC R2

        LCALL DELAY

        DJNZ R4,LOP7

        DJNZ R3,LOP8

        LJMP START

        DELAY: MOV R5,#10

        D2: MOV R6,#20

        D1: MOV R7,#248

        DJNZ R7,$

        DJNZ R6,D1

        DJNZ R5,D2

        RET

        TABA: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH

        TABB: DB 01H,02H,04H,08H,10H,20H,40H,80H

        END

        6. C語言源程序

        C程序

        #include AT89X52.H>

        unsigned char code taba[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

        unsigned char code tabb[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};

        void delay(void)

        {

        unsigned char i,j;

        for(i=10;i>0;i--)

        for(j=248;j>0;j--);

        }

        void delay1(void)

        {

        unsigned char i,j,k;

        for(k=10;k>0;k--)

        for(i=20;i>0;i--)

        for(j=248;j>0;j--);

        }

        void main(void)

        {

        unsigned char i,j;

        while(1)

        {

        for(j=0;j3;j++) //from left to right 3 time

        {

        for(i=0;i8;i++)

        {

        P3=taba[i];

        P1=0xff;

        delay1();

        }

        }

        for(j=0;j3;j++) //from right to left 3 time

        {

        for(i=0;i8;i++)

        {

        P3=taba[7-i];

        P1=0xff;

        delay1();

        }

        }

        for(j=0;j3;j++) //from top to bottom 3 time

        {

        for(i=0;i8;i++)

        {

        P3=0x00;

        P1=tabb[7-i];

        delay1();

        }

        }

        for(j=0;j3;j++) //from bottom to top 3 time

        {

        for(i=0;i8;i++)

        {

        P3=0x00;

        P1=tabb[i];

        delay1();

        }

        }

        }

        }


        上一頁 1 2 下一頁

        評論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 常德市| 阜新| 东乌珠穆沁旗| 揭东县| 柯坪县| 东乡族自治县| 孝义市| 珲春市| 嵊州市| 革吉县| 扎赉特旗| 商南县| 萨嘎县| 大港区| 大名县| 乌拉特前旗| 广水市| 天全县| 田林县| 利川市| 奈曼旗| 玛纳斯县| 镇康县| 东明县| 内丘县| 天峻县| 河池市| 乌拉特后旗| 松滋市| 顺义区| 萨迦县| 固阳县| 汨罗市| 贵德县| 南澳县| 剑川县| 岑巩县| 临西县| 永济市| 黑山县| 伊春市|