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

標題: (C與匯編語言)ARM9之LPC2132控制LCD1602顯示字符串 [打印本頁]

作者: 51黑小牛    時間: 2016-4-10 17:33
標題: (C與匯編語言)ARM9之LPC2132控制LCD1602顯示字符串
本帖最后由 51黑小牛 于 2016-4-10 17:34 編輯

GPADIR             EQU            0xE0028008

GPASET             EQU            0xE0028004
GPACLR             EQU            0xE002800C
                        EXPORT xmain
                        AREA    Init,CODE,READONLY
                        ENTRY
xmain
                        ldr r0,=GPADIR
                        ldr r1,=0x3ff
                        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

                          ldr r9,=dat
                          mov r6,#0
loop1                 ldr r4,[r9,r6]
                          bl w1602D
                          ADD r6,r6,#1
                          BL delay
                          cmp r6,#15

                          bne loop1

                          mov r4,#0xc0
                          bl w1602C

                          ldr r9,=ttt
                          mov r6,#0
loop2                  ldr r4,[r9,r6]
                          bl w1602D
                          ADD r6,r6,#1
                          BL delay
                          cmp r6,#15

                          bne loop2
                          B loop
;===================================
w1602C           ldr r1,=0x3ff
                        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
                        ldr r0,=GPACLR
                        mov r1,#0x200
                        str r1,[r0]
                        mov pc,lr
;======================================
w1602D            ldr r1,=0x3ff
                        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
                        ldr r0,=GPACLR
                        mov r1,#0x200
                        str r1,[r0]
                        mov pc,lr
;===================================
delay                   mov r5,#0xff00
delay1                  sub r5,r5,#1
                          cmp r5,#0
                          bne delay1
                          mov pc,lr
;====================================
dat                    DCB " China  Dianzi"
ttt                      DCB "  Keji Xueyuan"
                        end



  1. #define rGPACON     (*(volatile unsigned *)0xE0028008)        //Port A in/out0x56000000
  2. #define rGPADAT1    (*(volatile unsigned *)0xE0028004)        //Port A =10x56000004
  3. #define rGPADAT0    (*(volatile unsigned *)0xE002800C)        //Port A =0   0x56000008
  4. const unsigned char dd[]="Shanxi Dianzi";
  5. const unsigned char tt[]="gongchengxueyuan";
  6. void xmain()
  7. {
  8.         unsigned int i,k;

  9.         rGPACON  = 0x7ff;  //A11-A0=out
  10.         
  11.                 rGPADAT1 |= 0x38;
  12.                 k=4;
  13.                 while(k--);
  14.                 rGPADAT1 |= 0x100;
  15.                 k=7;
  16.                 while(k--);
  17.                 rGPADAT0 |= 0x100;
  18.                 k=10;
  19.                 while(k--);
  20.                 rGPADAT0 |= 0x7ff;
  21.                 //============
  22.                 rGPADAT1 |= 0x06;
  23.                 k=4;
  24.                 while(k--);
  25.                 rGPADAT1 |= 0x100;
  26.                 k=7;
  27.                 while(k--);
  28.                 rGPADAT0 |= 0x100;
  29.                 k=10;
  30.                 while(k--);
  31.                 rGPADAT0 |= 0x7ff;
  32.                 //============
  33.                 rGPADAT1 |= 0x0c;
  34.                 k=4;
  35.                 while(k--);
  36.                 rGPADAT1 |= 0x100;
  37.                 k=7;
  38.                 while(k--);
  39.                 rGPADAT0 |= 0x100;
  40.                 k=10;
  41.                 while(k--);
  42.                 rGPADAT0 |= 0x7ff;
  43.                 //============
  44.                 rGPADAT1 |= 0x01;
  45.                 k=4;
  46.                 while(k--);
  47.                 rGPADAT1 |= 0x100;
  48.                 k=7;
  49.                 while(k--);
  50.                 rGPADAT0 |= 0x100;
  51.                 k=10;
  52.                 while(k--);
  53.                 rGPADAT0 |= 0x7ff;
  54.                
  55.                 while(1)
  56.                         {
  57.                                 //============
  58.                                         rGPADAT1 |= 0x80;
  59.                                         k=4;
  60.                                         while(k--);
  61.                                         rGPADAT1 |= 0x100;
  62.                                         k=7;
  63.                                         while(k--);
  64.                                         rGPADAT0 |= 0x100;
  65.                                         k=10;
  66.                                         while(k--);
  67.                                         rGPADAT0 |= 0x7ff;
  68.                                 //=============
  69.                                 for(i=0;i<13;i++)
  70.                                 {
  71.                                  rGPADAT1 |= 0x400;
  72.                                        
  73.                                  rGPADAT1 |=dd[i];
  74.                                         k=4;
  75.                                         while(k--);
  76.                                         rGPADAT1 |= 0x100;
  77.                                         k=7;
  78.                                         while(k--);
  79.                                         rGPADAT0 |= 0x100;
  80.                                         k=10;
  81.                                         while(k--);
  82.                                         rGPADAT0 |= 0x7ff;
  83.                                 }
  84.                                 //========================//
  85.                                 //============
  86.                                         rGPADAT1 |= 0xc0;
  87.                                         k=4;
  88.                                         while(k--);
  89.                                         rGPADAT1 |= 0x100;
  90.                                         k=7;
  91.                                         while(k--);
  92.                                         rGPADAT0 |= 0x100;
  93.                                         k=10;
  94.                                         while(k--);
  95.                                         rGPADAT0 |= 0x7ff;
  96.                                 //=============
  97.                                 for(i=0;i<16;i++)
  98.                                 {
  99.                                  rGPADAT1 |= 0x400;
  100.                                        
  101.                                  rGPADAT1 |=tt[i];
  102.                                         k=4;
  103.                                         while(k--);
  104.                                         rGPADAT1 |= 0x100;
  105.                                         k=7;
  106.                                         while(k--);
  107.                                         rGPADAT0 |= 0x100;
  108.                                         k=10;
  109.                                         while(k--);
  110.                                         rGPADAT0 |= 0x7ff;
  111.                                 }
  112.                         }
  113. }
復制代碼






歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 一区二区成人在线 | 精品欧美一区二区三区久久久 | 女人毛片a毛片久久人人 | 亚洲三区在线观看 | 国产欧美日韩综合精品一区二区 | 99国产精品99久久久久久粉嫩 | 久久免费国产视频 | 国产精品美女久久久 | 激情综合五月 | 日本黄色短片 | 黄色成人在线网站 | 欧美精品国产一区二区 | 亚洲精品国产成人 | 国产精品亚洲欧美日韩一区在线 | 色婷婷综合网 | 亚洲精品成人在线 | 亚洲视频www | 日韩在线免费播放 | 一级毛片色一级 | 亚洲色欲色欲www | 欧洲视频一区二区 | 日韩在线精品视频 | 五月婷婷丁香婷婷 | 福利网址| 免费视频二区 | 欧美日韩在线视频一区 | 天天操操 | 丝袜 亚洲 欧美 日韩 综合 | 久久久久久久久久一区二区 | 国产欧美日韩一区 | 久久精品福利视频 | 亚洲成人激情在线观看 | 黄色日本片 | 免费在线观看黄视频 | 国产免费一区二区 | 国产成人免费在线 | 人人干人人干人人干 | 亚洲精品日本 | 九九热这里 | 国产一区黄色 | 久久久国产一区二区三区 |