gec210 led裸機開發 彙編指令

2021-08-01 09:27:18 字數 948 閱讀 5767

該程式的效果,開始為led全部點亮,然後按照二進位制加法的變化,直到所有的燈都熄滅,然後又迴圈。該程式不會再返回到uboot了,是死迴圈

原理圖說明:

4個led通過上拉電阻統一連線到電源正極,led陰極連線到gpj2io相應的0-3號引腳

所以這4個led都是cpu輸出低電平就會點亮,cpu輸出高電平led就會熄滅

程式**如下:

area init,code,readonly     ;設定段屬性,**段,**段取名inti,唯讀屬性

entry                       ;入口,同乙個工程不應該出現多個入口

ldr r0,=0xe0200280     ;led對應gpio的控制暫存器

ldr r1,=0x1111         ;配置為輸出模式

str r1,[r0]            ;配置對應引腳為輸出模式

loop0    

mov r1,#0x0

loop    

strb r1,[r0,#4]

add r1,r1,#1

bl delay

cmp r1,#0xf

bne loop

b loop0

mov pc,lr           ;如果是uboot中使用go命令的話,那麼就是跳回到uboot中  

;不適用與本程式,因為前面是死迴圈。

;延時函式,就是讓cpu做一些與led無關的事情,比如減法。

delay

mov r2,#0xff00000

delay1

subs r2,r2,#1

bne delay1

mov pc,lr                          ;直到減為0,delay函式才會返回

end

備註:如果使用linux的arm-linux-gcc編譯的話,注意一些使用的差異。

裸機開發之點亮LED

基於x210開發板的led燈點亮。查閱底板原理圖可以得到,四個led引腳分別為 其中pwmtout1引腳與核心板的gpd0 1引腳相連,所以可以通過操作gpd0 1引腳來操作d25。gpio,general purpose input output的簡稱,屬於晶元上的一部分引腳,這部分引腳可以被程式...

ARM裸機開發(一)LED控制

以下裸機程式基於gt2440,編譯器為arm linux gcc 4.4.3。程式的功能為 開機上電首先跳轉到復位異常處理,在復位異常處理裡關閉看門狗,然後執行led控制程式,程式執行結果為板上4個led全亮。led.s檔案 1 暫存器實體地址巨集定義 2 define wtcon 0x530000...

iTop4412 裸機開發 LED

平台 itop4412 scp 2g 開發板有兩個可控制的led燈 分別接到引腳 kp col0和vdd50 en kp col0就是gpl2 0 vdd50 en就是gpk1 1 配置gpx con對應位為輸出功能,設定gpx dat相應管腳輸出為1,就可以點亮led燈了。實現 如下 原始碼1 s...