ARM 三个小灯闪烁

.text

.global _start

_start:

@使能GPIOE的外设时钟

LDR R0,=0x50000A28 @指定基地址

LDR R1,R0 @读取r0中的数据保存到r1中

ORR R1,R1,#(0X3<<4) @4设置为1,表示

STR R1,R0 @将修改之后的值放回去

@设置PE10,PE8为输出

LDR R0,=0X50006000

LDR R1,R0

BIC R1,R1,#(0X3<<20)

BIC R1,R1,#(0X3<<16)

ORR R1,R1,#(0X1<<20)

ORR R1,R1,#(0X1<<16)

STR R1,R0

@设置PF10输出模式

LDR R0,=0X50007000

LDR R1,R0

BIC R1,R1,#(0X3<<20)

ORR R1,R1,#(0X1<<20)

STR R1,R0

@PE10,PE8设置推挽输出

LDR R0,=0X50006004

LDR R1,R0

BIC R1,R1,#(0X1<<10)

BIC R1,R1,#(0X1<<8)

STR R1,R0

@设置PF8为推挽输出

LDR R0,=0X50007004

LDR R1,R0

BIC R1,R1,#(0X1<<10)

STR R1,R0

@PE10,PE8设置低速输出

LDR R0,=0X50006008

LDR R1,R0

BIC R1,R1,#(0X3<<20)

BIC R1,R1,#(0X3<<16)

STR R1,R0

@PF10设置低速输出

LDR R0,=0X50007008

LDR R1,R0

BIC R1,R1,#(0X3<<20)

STR R1,R0

@PE10,PE8设置无上拉下拉电阻

LDR R0,=0X5000600C

LDR R1,R0

BIC R1,R1,#(0X3<<20)

BIC R1,R1,#(0X3<<16)

STR R1,R0

@PF10设置无上拉下拉电阻

LDR R0,=0X5000700C

LDR R1,R0

BIC R1,R1,#(0X3<<20)

STR R1,R0

@亮灭

LOOP:

BL LED1_ON

BL DEALY

BL LED1_OFF

BL LED2_ON

BL DEALY

BL LED2_OFF

BL LED3_ON

BL DEALY

BL LED3_OFF

BL LOOP

LED1_ON:

LDR R0,=0X50006014

LDR R1,R0

ORR R1,R1,#(0X1<<10)

STR R1,R0

MOV PC,LR

LED1_OFF:

LDR R0,=#0X50006014

LDR R1,R0

BIC R1,R1,#(0X1<<10)

STR R1,R0

MOV PC,LR

LED2_ON:

LDR R0,=0X50007014

LDR R1,R0

ORR R1,R1,#(0X1<<10)

STR R1,R0

MOV PC,LR

LED2_OFF:

LDR R0,=#0X50007014

LDR R1,R0

BIC R1,R1,#(0X1<<10)

STR R1,R0

MOV PC,LR

LED3_ON:

LDR R0,=0X50006014

LDR R1,R0

ORR R1,R1,#(0X1<<8)

STR R1,R0

MOV PC,LR

LED3_OFF:

LDR R0,=#0X50006014

LDR R1,R0

BIC R1,R1,#(0X1<<8)

STR R1,R0

MOV PC,LR

@延时

DEALY:

LDR R3,=0X10000000

MM:

CMP R3,#0

SUBNE R3,R3,#1

BNE MM

MOV PC,LR

.end

相关推荐
XMAIPC_Robot8 小时前
ARM+FPGA+AI船舶/工业自动化控制器EMC测试等级解析(IEC60533/IEC60945)
arm开发·人工智能·fpga开发·zynq·arm+fpga·rk3588+fpga
奔跑的架构师1 天前
[A-51]ARMv9/v8-SCMI系统架构
linux·arm开发·架构·系统架构·arm
玄芯散人1 天前
【元婴·94】ARM vs RISC-V大战
arm开发·risc-v
szxinmai主板定制专家1 天前
ZYNQ PL+PS 架构拆解|工业自动化与电力物联网高速数据采集、预处理与协议上云
arm开发·人工智能·物联网·fpga开发·数据采集卡·rk3576
szxinmai主板定制专家1 天前
告别 ARM 实时性短板:基于 ZYNQ 的电力故障录波 + 工业振动数据采集系统设计
arm开发·人工智能·fpga开发·zynq·数据采集卡·arm+fpga·rk3588+fpga
Awh-2 天前
ARM 裸机开发 DAY11 学习笔记
arm开发·笔记·学习
陌上花开缓缓归以2 天前
openssl 模拟签名验签(加密解密)详细分析
arm开发
en.en..2 天前
ARM 汇编 B / BL 核心区别
汇编·arm开发
程序员JerrySUN2 天前
Jetson Edge AI 实战05:Secure Boot 到底在保护什么?PKC、SBK、Fuse 与可信启动链一次讲清【视频讲解】
arm开发·人工智能·安全·计算机视觉·目标跟踪·音视频
老当益壮梁奶奶2 天前
驱动学习(二):从零开始:驱动工程搭建与字符设备驱动框架详解(基于IMX6ULL)
c语言·arm开发·驱动开发·嵌入式硬件·学习