正點原子 linux 開發板彙編點燈。

2021-09-29 13:46:51 字數 2184 閱讀 4746

1.使能時間控制:ccgr0-6 

2.配置io口復用,復用為gpio

3.配置輸出模式。

.global _start @ 全域性標號

_start:

@使能所有時鐘

ldr r0, =0x020c4068 @ccgr0

ldr r1, =0xffffffff @要向ccgr0寫入的資料

str r1, [r0] @將0xffffffff寫入ccgr0中

ldr r0, =0x020c406c @ccgr1

str r1, [r0]

ldr r0, =0x020c4070 @ccgr2

str r1, [r0]

ldr r0, =0x020c4074 @ccgr3

str r1, [r0]

ldr r0, =0x020c4078 @ccgr4

str r1, [r0]

ldr r0, =0x020c407c @ccgr5

str r1, [r0]

ldr r0, =0x020c4080 @ccgr6

str r1, [r0]

@配置復用

ldr r0, =0x020e0068 @ccgr0

ldr r1, =0x5 @要向ccgr0寫入的資料

str r1, [r0] @將0xffffffff寫入ccgr0中

@配置ldr r0, =0x020e02f4

ldr r1, =0x10b0

str r1, [r0]

ldr r0, =0x0209c004

ldr r1, =0x8

str r1, [r0]

ldr r0, =0x0209c000

ldr r1, =0

str r1, [r0]

loop:

b loop

arm-linux-gnueabihf-gcc -g -c leds.s -o led.o

生成led.o

arm-linux-gnueabihf-ld -ttext 0x87800000 led.o -o led.elf

生成led.elf

arm-linux-gnueabihf-objcopy -o binary -g -s led.elf led.bin

生成led.bin

檢視sd卡

ls /dev/sd* -l

燒寫

xiaopeng18@ubuntu:~/linux/imx6ull/board_drivers/1_leds$ ls /dev/sd* -l

brw-rw---- 1 root disk 8, 0 nov 11 22:44 /dev/sda

brw-rw---- 1 root disk 8, 1 nov 11 22:44 /dev/sda1

brw-rw---- 1 root disk 8, 16 nov 12 00:14 /dev/sdb

brw-rw---- 1 root disk 8, 32 nov 12 00:14 /dev/sdc

brw-rw---- 1 root disk 8, 33 nov 12 00:14 /dev/sdc1

xiaopeng18@ubuntu:~/linux/imx6ull/board_drivers/1_leds$ chmod 777 imxdownload

xiaopeng18@ubuntu:~/linux/imx6ull/board_drivers/1_leds$ ./imxdownload led.bin /dev/sd

編寫makefile檔案

led.bin : leds.s

arm-linux-gnueabihf-gcc -g -c leds.s -o led.o

arm-linux-gnueabihf-ld -ttext 0x87800000 led.o -o led.elf

arm-linux-gnueabihf-objcopy -o binary -g -s led.elf led.bin

arm-linux-gnueabihf-objdump -d led.elf > led.dis

clean :

rm -rf *.o led.bin led.elf led.dis

make 執行。

安裝linux到開發板

1 安裝到開發板的什麼位置?安裝到開發板的 硬碟 nandflash 2 需要安裝的系統分為看幾個部分?a bootloader b linux核心 c 檔案系統 應用程式,各種檔案等等 3 安裝到nandflash的具體步驟 a 把系統安裝輔助軟體燒寫到sd卡,linux下用dd命令,window...

Linux開發板燒錄實驗

按上面的理解則不需要燒kernel和system,因為只破壞了uboot fastboot reboot 重啟 4.燒錄 1.使用fastboot燒錄android4.0.4映象 在cmd下使用以下三個命令 fastboot flash 是命令。第二截是分割槽,第三截是檔名 fastboot fla...

stm32學習筆記 串列埠(原子開發板)

1,stm32的串列埠資源相當豐富的,功能也相當強勁。alientek ministm32開發板所使用的stm32f103rct6最多可提供5路串列埠,有分數波特率發生器 支援同步單線通訊和半雙工 單線通訊 支援lin 支援數據機操作 智慧卡協議和irda sir endec規範 具有dma等。2,...