久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: ARM之LPC2132流水燈LCD1602 [打印本頁]

作者: 51黑小牛    時(shí)間: 2016-4-10 17:35
標(biāo)題: ARM之LPC2132流水燈LCD1602
1、匯編程序
GPADIR             EQU            0xE0028008
GPASET            EQU            0xE0028004


GPACLR            EQU            0xE002800C


                        EXPORT xmain
                        AREA    Init,CODE,READONLY
                        ENTRY

xmain
                        ldr r0,=GPADIR
                        orr r1,r1,#0x0ff
                        orr r1,#0x300
                        str r1,[r0]    ;A=out
;===========init1602=================

                        mov r4,#0x38
                        BL  w1602C
                        mov r4,#0x06
                        BL  w1602C
                        mov r4,#0x0c
                        BL  w1602C
                        mov r4,#0x01
                        BL  w1602C
;============main=================
loop                 mov r4,#0x80

                        bl w1602C
                        mov r7,#0x30
loop1               mov r4,r7
                        bl w1602D
                        add r7,r7,#1
                        cmp r7,#0x3A
                        bne loop1

mov r4,#0xc0
                        bl w1602C
                        mov r7,#0x41
loop2               mov r4,r7
                        bl w1602D
                        add r7,r7,#1
                        cmp r7,#0x4f
                        bne loop2

                        B loop
;===================================




w1602C           orr r1,r1,#0x0ff
                        orr r1,#0x300
                        ldr r0,=GPACLR
                        str r1,[r0]
                        mov r1,#0
                        ORR r1,r1,r4
                        ldr r0,=GPASET
                        str r1,[r0]
                        nop
                        nop
                        orr r1,r1,#0x200
                        str r1,[r0]
                        nop
                        nop
                        nop
                        nop
                        ldr r0,=GPACLR
                        mov r1,#0x200
                        str r1,[r0]
                        mov pc,lr
;======================================

w1602D            orr r1,r1,#0x0ff
                        orr r1,#0x300
                        ldr r0,=GPACLR
                        str r1,[r0]
                        mov r1,#0x100
                        ORR r1,r1,r4
                        ldr r0,=GPASET
                        str r1,[r0]
                        nop
                        nop
                        orr r1,r1,#0x200
                        str r1,[r0]
                        nop
                        nop
                        nop
                        nop
                        ldr r0,=GPACLR
                        mov r1,#0x200
                        str r1,[r0]
                        mov pc,lr
;===================================

delay                mov r5,#3
delay1              sub r5,r5,#1
                        cmp r5,#0
                        bne delay1
                        mov pc,lr
                        end
2、以下為C程序
//GPIO0=32Pin;(Pin0----Pin31)
#define GPIO0IN               (*(volatile unsigned long *) 0xE0028000)//輸入寄存器
#define GPIO0SET               (*(volatile unsigned long *) 0xE0028004)//輸出1,那位為1,管腳輸出1
#define GPIO0CLR               (*(volatile unsigned long *) 0xE002800C)//輸出0,那位為1,管腳輸出0
#define GPIO0DIR               (*(volatile unsigned long *) 0xE0028008)//方向控制,1為輸出,0輸入
//GPIO0=16Pin;(Pin16----Pin31)
#define GPIO1IN               (*(volatile unsigned long *) 0xE0028010)//輸入寄存器
#define GPIO1SET               (*(volatile unsigned long *) 0xE0028014)//輸出1,那位為1,管腳輸出1
#define GPIO1CLR               (*(volatile unsigned long *) 0xE002801C)//輸出0,那位為1,管腳輸出0
#define GPIO1DIR               (*(volatile unsigned long *) 0xE0028018)//方向控制,1為輸出,0輸入
void xmain()
{
            unsigned short n,m;
             GPIO1DIR =0xffff0000;
             while(1)
                 {
                   for(n=16;n<32;n++)
{
   GPIO1CLR=0xffff0000;   
for(m=0;m<30000;m++)
   GPIO1SET=1<<n;
}
                 }

}



//GPIO0=32Pin;(Pin0----Pin31)
#define GPIO0IN               (*(volatile unsigned long *) 0xE0028000)//1ü½ÅÖμ
#define GPIO0SET               (*(volatile unsigned long *) 0xE0028004)//êä3ö1¼Ä′æÆ÷
#define GPIO0CLR               (*(volatile unsigned long *) 0xE002800C)//êä3ö0¼Ä′æÆ÷
#define GPIO0DIR               (*(volatile unsigned long *) 0xE0028008)//fangx
//GPIO0=16Pin;(Pin16----Pin31)
#define GPIO1IN               (*(volatile unsigned long *) 0xE0028010)//1ü½ÅÖμ
#define GPIO1SET               (*(volatile unsigned long *) 0xE0028014)//êä3ö1¼Ä′æÆ÷
#define GPIO1CLR               (*(volatile unsigned long *) 0xE002801C)//êä3ö0¼Ä′æÆ÷
#define GPIO1DIR               (*(volatile unsigned long *) 0xE0028018)//fangx

void xmain()
{
             unsigned short n,m,k;
           
              GPIO1DIR   =0xff030000;

              GPIO1CLR  |=0xff030000;
              GPIO1SET  |=0x38000000;
              for(n=0;n<8;n++);           
              GPIO1SET  |=0x00020000;
              for(n=0;n<12;n++);
              GPIO1CLR  |=0x00020000;


              GPIO1CLR  |=0xff030000;
              GPIO1SET  |=0x06000000;
              for(n=0;n<8;n++);
              GPIO1SET  |=0x00020000;
              for(n=0;n<12;n++);
              GPIO1CLR  |=0x00020000;


              GPIO1CLR  |=0xff030000;
              GPIO1SET  |=0x0c000000;
              for(n=0;n<8;n++);
              GPIO1SET  |=0x00020000;
              for(n=0;n<12;n++);
              GPIO1CLR  |=0x00020000;

              GPIO1CLR  |=0xff030000;
              GPIO1SET  |=0x01000000;
              for(n=0;n<8;n++);
              GPIO1SET  |=0x00020000;
              for(n=0;n<12;n++);
              GPIO1CLR  |=0x00020000;


              while(1)
                  {
                      GPIO1CLR  |=0xff030000;
                      GPIO1SET  |=0x80000000;
                      for(n=0;n<8;n++);
                      GPIO1SET  |=0x00020000;
                      for(n=0;n<12;n++);
                      GPIO1CLR  |=0x00020000;   
                      for(m=0;m<10;m++)
                              {
                                     GPIO1CLR  |=0xff030000;
                                     GPIO1SET  |=(0x30010000 +(m<<24));
                                     for(n=0;n<5;n++);
                                     GPIO1SET  |=(0x00030000 + (m<<24));
                                     for(n=0;n<8;n++);
                                     GPIO1CLR  |=0x00020000;
                                     k=30000;
                                     while(k--);
                              }

                       GPIO1CLR  |=0xff030000;

                       GPIO1SET  |=0xc0000000;
                       for(n=0;n<8;n++);
                       GPIO1SET  |=0xc0020000;
                       for(n=0;n<12;n++);
                       GPIO1CLR  |=0x00020000;
   
                       for(m=0;m<16;m++)
                           {
                                   GPIO1CLR  |=0xff030000;
                                   GPIO1SET  |=(0x41010000 +(m<<24));
                                   for(n=0;n<8;n++);
                                   GPIO1SET  |=(0x41030000 + (m<<24));
                                   for(n=0;n<12;n++);
                                   GPIO1CLR  |=0x00020000;
                                   k=30000;
                                   while(k--);
                            }

                        k=60000;
                        while(k--);
              
                        GPIO1CLR  |=0xff030000;
                        GPIO1SET  |=0x01000000;
                        for(n=0;n<8;n++);
                        GPIO1SET  |=0x01020000;
                        for(n=0;n<12;n++);
                        GPIO1CLR  |=0x00020000;
              }         
}






//GPIO0=32Pin;(Pin0----Pin31)
#define GPIO0IN               (*(volatile unsigned long *) 0xE0028000)//1ü½ÅÖμ
#define GPIO0SET               (*(volatile unsigned long *) 0xE0028004)//êä3ö1¼Ä′æÆ÷
#define GPIO0CLR               (*(volatile unsigned long *) 0xE002800C)//êä3ö0¼Ä′æÆ÷
#define GPIO0DIR               (*(volatile unsigned long *) 0xE0028008)//fangx
unsigned char tt[13]="Shanxi Dianzi";
void xmain()
{
            unsigned short n,m;
           
            GPIO0DIR   =0x3ff;
            GPIO0CLR  |=0x3ff;           
            for(n=0;n<12;n++)
              GPIO0SET  |=0x38;            
            GPIO0SET  |=0x200;
            for(n=0;n<12;n++);
            GPIO0CLR  |=0x200;

            GPIO0CLR  |=0x3ff;           
            for(n=0;n<12;n++)
            GPIO0SET  |=0x06;           
            GPIO0SET  |=0x200;
            for(n=0;n<12;n++);
            GPIO0CLR  |=0x200;

            GPIO0CLR  |=0x000003ff;           
            for(n=0;n<12;n++)
                    GPIO0SET  |=0x0c;           
            GPIO0SET  |=0x00000200;
            for(n=0;n<12;n++);
            GPIO0CLR  |=0x00000200;

            GPIO0CLR  |=0x000003ff;           
            for(n=0;n<12;n++)
                    GPIO0SET  |=0x01;           
            GPIO0SET  |=0x00000200;
            for(n=0;n<12;n++);
            GPIO0CLR  |=0x00000200;
            while(1)
                 {
                        GPIO0CLR  |=0x000003ff;
                        GPIO0SET  |=0x80;
                        for(n=0;n<12;n++);           
                        GPIO0SET  |=0x00000200;
                        for(n=0;n<12;n++);
                        GPIO0CLR  |=0x00000200;

                        for(m=0;m<10;m++)
                          {
                                GPIO0CLR  |=0x3ff;
                                 GPIO0SET  |=0x100;
                                GPIO0SET  |=0x30 + m;
                                or(n=0;n<12;n++);           
                                GPIO0SET  |=0x300;
                                for(n=0;n<12;n++);
                                GPIO0CLR  |=0x200;
                         }

                        GPIO0CLR  |=0x3ff;
                        GPIO0SET  |=0xc0;
                        for(n=0;n<12;n++);           
                        GPIO0SET  |=0x200;
                        for(n=0;n<12;n++);
                        GPIO0CLR  |=0x200;
                        for(m=0;m<13;m++)
                            {
                                GPIO0CLR  |=0x3ff;
                                GPIO0SET  |=0x100;
                                GPIO0SET  |=0x41+m;
                                for(n=0;n<5;n++);
                                GPIO0SET  |=0x300;
                                for(n=0;n<8;n++);
                                GPIO0CLR  |=0x200;
                            }  
             }
}















歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美成人精品一区二区三区在线看 | 国产精品一级 | 国产一区二区视频在线 | 国产激情视频在线 | 免费av网站在线观看 | 欧美性视频在线 | 色综合99 | 亚洲综合在线播放 | 亚洲激情欧美 | av高清在线 | 97精品国产露脸对白 | 成人理论影院 | 国产精品亚洲综合 | 国产天堂网 | 免费观看全黄做爰大片视频美国 | 免费av大片 | 欧美在线免费观看视频 | 欧美一级网站 | 三上悠亚一区 | 日韩欧美网站 | 日本特黄特色aaa大片免费 | 国产精品3 | 国产精品久久久久久久久久久久久久 | 日本一本草久p | 三级在线观看 | 三年中文在线观看免费大全中国 | 国产精品成人一区二区三区 | 精品一区二区三区视频 | 国产欧美日韩 | 中文字幕在线观看一区二区 | 国产成人午夜高潮毛片 | 成人免费av | 欧美日韩一区二区在线观看 | 黄色一级片黄色一级片 | 中文字幕在线观看网址 | 爱爱免费小视频 | 欧美日韩激情 | 九九在线观看高清免费 | 国产欧美日韩视频 | 成人免费看片 | 在线观看欧美日韩 |