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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4509|回復: 0
收起左側

ARM S2C2410A控制5個LED流水燈

[復制鏈接]
ID:113276 發表于 2016-4-10 17:41 | 顯示全部樓層 |閱讀模式
無論是S3C2410A還是S3C2440A,其IO口B都是11位二進制數,xxx  xxxx xxxx,現在控制第5、6、7、8為做輸出點亮LED燈(共陽極,輸出0點亮),即xx8  765x  xxxx,GPBCON            equ            0x56000010
GPBDAT             equ            0x56000014
GPBUP               equ            0x56000018
                        xport xmain
                        area Init,code,readonly
                        entry
                        export
xmain
                        ldr r0,=GPBCON
                        ldr r1,[r0]
                        bic r1,#0x3fC00  ;r1=xx00 0000 00xx xxxx xxxx
                        orr r1,#0x15400  ;r1=xx01 0101 01xx xxxx xxxx
                        str r1,[r0]            ;r1傳給GPBCON設置8765位為輸出
                        ldr r0,=GPBUP
                        ldr r1,[r0]
                        orr r1,#0x1e0       ;r1=xx1 111x xxxx
                        str r1,[r0]             ;開B口第8、7、6、5位上拉電阻
                        ldr r0,=GPBDAT

        ldr r2,[r0]            ;把B口最初狀態保存在R2
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
LOOP                dr r1,[r2]
                        orr r1,#0x1c0
                        str r1,[r0]
                        bl  delay      ;BL跳轉時將PC+4值自動保存在R14即LR中,也就是將程序的下一個語句地址保存在lr中
                                          ;在轉移的程序后執行mov     pc,lr相當于返回,這樣BL相當于調用子程序,pc=lr相當于子程序返回

                      ;;;;;;;;;;;;;;;;;;
                        dr r1,[r2]
                        orr r1,#0x1a0
                        str r1,[r0]
                        bl  delay
                    ;;;;;;;;;;;;;;;;;;;;;
                        ldr r1,[r2]
                        orr r1,#0x160
                        str r1,[r0]
                        bl  delay
                    ;;;;;;;;;;;;;;;;;;;;;;;;
                        ldr r1,[r2]
                        orr r1,#0x0e0
                        str r1,[r0]
                        bl  delay
                    ;;;;;;;;;;;;;;;;;;;;;;;;
                        b LOOP
delay
                        mov r3,#3
delay1               sub r3,r3,#1
                        cmp r3,#0x0
                        bne delay1
                        mov pc,lr           ;這句相當于子程序返回語句
                        end






GPA            equ 0x000000
                    GET d:\abc\INC\2440addr.inc
                    GET d:\abc\INC\Option.inc
                    GET d:\abc\INC\Memcfg.inc

                    area Init,code,readonly
                    CODE32
                     entry     
xmain                  
start
                    ldr r0,=GPACON
                    ldr r1,=GPA
                    str r1,[r0]
                    ldr r0,=GPADAT;
LOOP2        mov r1,#0
                    mov r2,#1
LOOP1        str r2,[r0]
                    BL delay
                    MOV r2,r2,LSL#1
                    add r1,#1
                    cmp r1,#23
                    bne LOOP1
                    B LOOP2

delay           mov r3,#5
delay1        sub r3,r3,#1
                   cmp r3,#0
                    bne delay1
                    mov pc,lr
                    end





GPBCON                                  equ            0x56000010
GPBDAT                                  equ            0x56000014
GPBUP                                    equ            0x56000018
GPAOUT                                 equ             0x0000000
GPACON                                 equ             0x56000000
GPADAT                                  equ            0x56000004
                                                 export  xmain
                                                area Init,code,readonly
                                                 CODE32
                                                 entry
                                                export
                                                GBLA nn   ;設置全局變量nn

xmain                  
                                            ldr r1,=GPAOUT ;調取設置A口為輸出的數據

                                           ldr r0,=GPACON  ;調取A口輸出的方向控制寄存器地址
                                           str r1,[r0]              ;把方向控制數據賦值給A口方向寄存器0x56000000
                                           ldr r0,=GPADAT   ;調取A口輸出的寄存器地址,傳遞給[r0]就是輸出
LOOP2                                mov r1,#0             ;r1計數23次,22個輸出腳循環一次流水效果
                                            mov r2,#1             ;點亮流水燈一個燈亮
LOOP1
                                            str r2,[r0]                ;點亮一個燈
                                            BL delay                 ;延遲
                                            MOV r2,r2,LSL#1  ;左移點亮下一個,依次類推
                                            add r1,#1               ;計數加1
                                            cmp r1,#23      ;計數加1看夠不夠23,
                                            bne LOOP1            ;不夠23次,說明沒有全部輪流一次,跳到LOOP1繼續。
                                            B LOOP2                 ;夠23次,流水燈循環1次,跳到LOOP2處從頭再來

delay                                    mov r3,#5
delay1                                  sub r3,r3,#1
                                            cmp   r3,#0
                                            bne delay1
                                            mov pc,lr
                                            end
流水燈C語言程序
#include"S3C2440.h"
void xmain()
{
            unsigned char n,m;
             GPACON =0;
             while(1)
                 {
                     for(n=0;n<23;n++)
                         {
                                GPADAT =1<<n;
                                for(m=0;m<15;m++)
                                    GPADAT = 1<<n;
                         }
                 }
}





回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 99精品久久99久久久久 | 91高清视频在线观看 | 久久九七 | 欧美激情a∨在线视频播放 成人免费共享视频 | 欧美精品91爱爱 | 午夜精品影院 | 日韩视频在线一区 | 韩日av在线 | 亚洲午夜精品在线观看 | 亚洲精品字幕 | 午夜视频导航 | 国产三区视频在线观看 | 国产日韩精品视频 | 欧美精品久久 | 午夜精品视频在线观看 | 久久精品久久久 | 99一级毛片 | 日韩亚洲一区二区 | 久久久久久亚洲精品不卡 | 亚洲综合色视频在线观看 | www.成人免费视频 | 日本久久福利 | 在线观看日本高清二区 | 狠狠亚洲| www国产成人免费观看视频,深夜成人网 | 超碰地址| 亚洲精选一区二区 | 男人天堂99 | av天天澡天天爽天天av | 精品国产乱码久久久久久果冻传媒 | 午夜久久久 | 久久久久久久国产精品视频 | 久草福利| 高清亚洲| 日韩精品在线观看免费 | 中文字幕国产高清 | 日韩伦理一区二区 | 欧美精品一区二区三区蜜桃视频 | 日韩一二三区 | 欧美男人天堂 | 精品久久久久久久久久久久久久 |