当前位置: 首页 > news >正文

ARM day3

题目:实现3盏灯的流水

代码:

.text 
.global _start
_start: 
@设置RCC寄存器使能
LDR R0,=0X50000A28
LDR R1,[R0]
ORR R1,R1,#(0X1<<4)
ORR R1,R1,#(0X1<<5)
STR R1,[R0]@设置PE10管脚为输出模式
LDR R0,=0X50006000
LDR R1,[R0]
BIC R1,R1,#(0X3<<20) @先清零
ORR R1,R1,#(0X1<<20) @再设置位
BIC R1,R1,#(0X3<<16) @先清零
ORR R1,R1,#(0X1<<16) @再设置位STR R1,[R0]@设置PE10为推挽输出
LDR R0,=0X50006004
LDR R1,[R0]
BIC R1,R1,#(0X1<<10) @先清零
BIC R1,R1,#(0X1<<8) @先清零
STR R1,[R0]@设置PE10速度为低速
LDR R0,=0X50006008
LDR R1,[R0]
BIC R1,R1,#(0X3<<20) @先清零
BIC R1,R1,#(0X3<<16) @先清零
STR R1,[R0]
@不设置上拉下拉电阻
LDR R0,=0X5000600C
LDR R1,[R0]
BIC R1,R1,#(0X3<<20) @先清零
BIC R1,R1,#(0X3<<16) @先清零
STR R1,[R0]@LED2
@设置PF10管脚为输出模式
LDR R0,=0X50007000
LDR R1,[R0]
BIC R1,R1,#(0X3<<20) @先清零
ORR R1,R1,#(0X1<<20) @再设置位
STR R1,[R0]@设置PF10为推挽输出
LDR R0,=0X50007004
LDR R1,[R0]
BIC R1,R1,#(0X1<<10) @先清零
STR R1,[R0]@设置PF10速度为低速
LDR R0,=0X50007008
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,=0X50006014
LDR R2,=0X50007014
LDR R4,=0X50006014
loop:@亮一秒
LDR R1,[R0]
ORR R1,R1,#(0X1<<10)
STR R1,[R0]
bl delay_1s
@灭一秒
LDR R1,[R0]
BIC R1,R1,#(0X1<<10)
STR R1,[R0]
bl delay_1s@亮一秒
LDR R1,[r2]
ORR R1,R1,#(0X1<<10)
STR R1,[R2]
bl delay_1s
@灭一秒
LDR R1,[R2]
BIC R1,R1,#(0X1<<10)
STR R1,[R2]
bl delay_1s@亮一秒
LDR R1,[R4]
ORR R1,R1,#(0X1<<8)
STR R1,[R4]
bl delay_1s
@灭一秒
LDR R1,[R4]
BIC R1,R1,#(0X1<<8)
STR R1,[R4]
bl delay_1sb loop@1s左右的延时函数
delay_1s:mov r3, #0x10000000
mm:cmp r3, #0subne r3, r3, #1bne mmmov pc, lr
.end

结果:

http://www.lryc.cn/news/257592.html

相关文章:

  • [足式机器人]Part2 Dr. CAN学习笔记-自动控制原理Ch1-2稳定性分析Stability
  • Android Audio实战——音频链路分析(二十五)
  • PHP基础 - 常量字符串
  • Linux查看命令的绝对路径
  • Docker build 无法解析域名
  • 退稿论文重复率太高会怎么样【保姆教程】
  • Flask 最佳实践(一)
  • 直流电和交流电
  • 『亚马逊云科技产品测评』活动征文|基于亚马逊EC2云服务器安装Prometheus数据可视化监控
  • 15、SQL注入——Sqlmap
  • OSPF路由协议
  • 设计模式-门面模式(Facade)
  • 语音识别从入门到精通——1-基本原理解释
  • 语音识别功能测试:90%问题,可以通过技术解决
  • 【Go自学版】01-基础
  • 软文开头怎么写才能拿捏用户?媒介盒子为您解答
  • C语言算法与数据结构,旅游景区地图求最短路径
  • 测试:SSE VS WebSocket
  • Linux+Moba+虚拟机
  • 快手数仓面试题附答案
  • 如何在Go中编写包
  • JVM类加载全过程
  • Uniapp安卓原生插件开发Demo
  • Axure的安装与基本使用
  • 分布式锁实现方案 - Lock4j 使用
  • [虚拟机]使用VM打开虚拟机电脑重启解决方案。
  • Linux 详细介绍strace命令
  • 【知识分享】__RS485-嵌入式常用的通信协议
  • Qt生成动态链接库并使用动态链接库
  • E4990A 阻抗分析仪,20 Hz 至 10/20/30/50/120 MHz