ARM-day5作业

复制代码
.text 
.global _start
_start: 
@1、设置GPIOE、GPIOF寄存器的时钟使能  RCC_MP_AHB4ENSETR[4]->1     0x50000a28
LDR R0,=0x50000a28
LDR R1,[R0]
ORR R1,R1,#(0x3<<4)
STR R1,[R0]


@2、设置PE10、PF10、PE8管脚为输出模式   GPIOE_MODER[21:20]->01     0x50006000
LDR R0,=0x50006000
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
ORR R1,R1,#(0x1<<20)
STR R1,[R0]

LDR R0,=0x50007000
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
ORR R1,R1,#(0x1<<20)
STR R1,[R0]

LDR R0,=0x50006000
LDR R1,[R0]
BIC R1,R1,#(0x3<<16)
ORR R1,R1,#(0x1<<16)
STR R1,[R0]


@3、设置PE10、PF10、PE8管脚为推挽输出   GPIOE_OTYPER[10]->0       0x50006004
LDR R0,=0x50006004
LDR R1,[R0]
BIC R1,R1,#(0x1<<10)
STR R1,[R0]

LDR R0,=0x50007004
LDR R1,[R0]
BIC R1,R1,#(0x1<<10)
STR R1,[R0]

LDR R0,=0x50006004
LDR R1,[R0]
BIC R1,R1,#(0x1<<8)
STR R1,[R0]


@4、设置PE10、PF10、PE8管脚为低速输出   GPIOE_OSPEEDR[21:20]->00   0x50006008
LDR R0,=0x50006008
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
STR R1,[R0]

LDR R0,=0x50007008
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
STR R1,[R0]

LDR R0,=0x50006008
LDR R1,[R0]
BIC R1,R1,#(0x3<<16)
STR R1,[R0]


@5、设置PE10、PF10、PE8管脚输出时没有上拉下拉电阻  GPIOE_PUPDR[21:20]->00   0x5000600c
LDR R0,=0x5000600c
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
STR R1,[R0]

LDR R0,=0x5000700c
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
STR R1,[R0]

LDR R0,=0x5000600c
LDR R1,[R0]
BIC R1,R1,#(0x3<<16)
STR R1,[R0]


@6、PE10、PF10、PE8输出高低电平    GPIOE_ODR[10]->1(高电平)  0(低电平)   0x50006014
loop:
	@LED1亮
	LDR R0,=0x50006014
	LDR R1,[R0]
	ORR R1,R1,#(0x1<<10)
	STR R1,[R0]
	BL delay

	@LED1灭
	LDR R0,=0x50006014
	LDR R1,[R0]
	BIC R1,R1,#(0x1<<10)
	STR R1,[R0]
	BL delay
	
	@LED2亮
	LDR R0,=0x50007014
	LDR R1,[R0]
	ORR R1,R1,#(0x1<<10)
	STR R1,[R0]
	BL delay

	@LED2灭
	LDR R0,=0x50007014
	LDR R1,[R0]
	BIC R1,R1,#(0x1<<10)
	STR R1,[R0]
	BL delay

	@LED3亮
	LDR R0,=0x50006014
	LDR R1,[R0]
	ORR R1,R1,#(0x1<<8)
	STR R1,[R0]
	BL delay

	@LED3灭
	LDR R0,=0x50006014
	LDR R1,[R0]
	BIC R1,R1,#(0x1<<8)
	STR R1,[R0]
	BL delay

	b loop

@封装延时函
delay:
	LDR R4,=0x10000000

mm:
	cmp R4,#0
	subne R4,R4,#1
	bne mm
	mov pc,lr
	

.end

现象:

相关推荐
暮云星影19 小时前
全志开发环境搭建及编译构建
linux·arm开发·驱动开发
振南的单片机世界20 小时前
PWM调压调速,H桥换向:直流电机四象限控制
arm开发·stm32·单片机·嵌入式硬件
暮云星影21 小时前
全志T507sdk结构梳理及开发步骤总结
linux·arm开发
振南的单片机世界2 天前
RS485组网三要素:负载、距离、终端电阻
arm开发·stm32·单片机·嵌入式硬件
傻童:CPU2 天前
PS(ARM)中的寄存器和地址
arm开发
IAR Systems2 天前
在IAR工具链中使用overlay命令进行SMP多核工程TCM配置
arm开发·嵌入式·嵌入式开发·iar
Mr..Jackey2 天前
瑞佑 RUI Builder 图形化 UI 设计工具
arm开发·人工智能·单片机·ui·人机交互·ra8889·lcd控制芯片
IAR Systems3 天前
使用IAR Arm工具链开发和调试Zephyr RTOS
arm开发·嵌入式·iar·zephyr
l'm coming3 天前
[linux]内核启动加载驱动文件的流程
linux·arm开发·驱动开发·嵌入式
Code-keys3 天前
ARM NEON SIMD 编程实战:从音频信号处理到AI算子研发实战
arm开发·音视频·信号处理