armday2

news2025/1/18 21:16:42
 
.text 
.global _start
_start: 
 
	bl LED1_INIT
	bl LED1_ON
	bl delay_1s
	bl LED1_OFF
 
	bl LED2_INIT
	bl LED2_ON
	bl delay_1s
	bl LED2_OFF
 
	bl LED3_INIT
	bl LED3_ON
	bl delay_1s
	bl LED3_OFF
 
    bl _start
 
	/**********LED1点灯PE10**************/
LED1_INIT:
	@1.通过RCC_HB4_ENSETR寄存器设置GPIOE组时钟使能
	ldr r0,=0x50000A28
	ldr r1,[r0]
	orr r1,r1,#(0x1 << 4)
	str r1,[r0]
	@2.通过GPIOE_MODER寄存器设置PE10引脚为输出模式
	ldr r0,=0x50006000
	ldr r1,[r0]
	and r1,r1,#(~(0x3 << 20))
	orr r1,r1,#(0x1 << 20)
	str r1,[r0]
	@3.通过GPIOE_OTYPER寄存器设置PE10引脚为推挽输出模式
	ldr r0,=0x50006004
	ldr r1,[r0]
	and r1,r1,#(~(0x1 << 10))
	str r1,[r0]
	@4.通过GPIOE_OSPEEDR寄存器设置PE10引脚为低速输出模式
	ldr r0,=0x50006008
	ldr r1,[r0]
	and r1,r1,#(~(0x3 << 20))
	str r1,[r0]
	@5.通过GPIOE_PUPDR寄存器设置PE10引脚为禁止上下拉电阻
	ldr r0,=0x5000600c
	ldr r1,[r0]
	and r1,r1,#(~(0x3 << 20))
	str r1,[r0]
	mov pc, lr
 
LED1_ON:
	@1.通过GPIOE_ODR寄存器设置PE10引脚输出高电平
	ldr r0,=0x50006014
	ldr r1,[r0]
	orr r1,r1,#(0x1 << 10)
	str r1,[r0]
	mov pc, lr
 
LED1_OFF:
	@1.通过GPIOE_ODR寄存器设置PE10引脚输出低电平
	ldr r0,=0x50006014
	ldr r1,[r0]
	and r1,r1,#(~(0x1 << 10))
	str r1,[r0]
	mov pc, lr
 
	/**********LED2点灯PF10**************/
LED2_INIT:
	@1.通过RCC_HB4_ENSETR寄存器设置GPIOF组时钟使能
	ldr r0,=0x50000A28
	ldr r1,[r0]
	orr r1,r1,#(0x1 << 5)
	str r1,[r0]
	@2.通过GPIOE_MODER寄存器设置PF10引脚为输出模式
	ldr r0,=0x50007000
	ldr r1,[r0]
	and r1,r1,#(~(0x3 << 20))
	orr r1,r1,#(0x1 << 20)
	str r1,[r0]
	@3.通过GPIOE_OTYPER寄存器设置PF10引脚为推挽输出模式
	ldr r0,=0x50007004
	ldr r1,[r0]
	and r1,r1,#(~(0x1 << 10))
	str r1,[r0]
	@4.通过GPIOE_OSPEEDR寄存器设置PF10引脚为中速输出模式
	ldr r0,=0x50007008
	ldr r1,[r0]
	and r1,r1,#(~(0x3 << 20))
	orr r1,r1,#(0x1 << 20)
	str r1,[r0]
	@5.通过GPIOE_PUPDR寄存器设置PF10引脚为禁止上下拉电阻
	ldr r0,=0x5000700c
	ldr r1,[r0]
	and r1,r1,#(~(0x3 << 20))
	str r1,[r0]
	mov pc, lr
 
LED2_ON:
	@1.通过GPIOE_ODR寄存器设置PF10引脚输出高电平
	ldr r0,=0x50007014
	ldr r1,[r0]
	orr r1,r1,#(0x1 << 10)
	str r1,[r0]
	mov pc, lr
 
LED2_OFF:
	@1.通过GPIOE_ODR寄存器设置PF10引脚输出低电平
	ldr r0,=0x50007014
	ldr r1,[r0]
	and r1,r1,#(~(0x1 << 10))
	str r1,[r0]
	mov pc, lr
 
	/**********LED3点灯PE8**************/
LED3_INIT:
	@1.通过RCC_HB4_ENSETR寄存器设置GPIOE组时钟使能,LED1设置过
	ldr r0,=0x50000A28
	ldr r1,[r0]
	orr r1,r1,#(0x1 << 4)
	str r1,[r0]
	@2.通过GPIOE_MODER寄存器设置PE8引脚为输出模式
	ldr r0,=0x50006000
	ldr r1,[r0]
	and r1,r1,#(~(0x3 << 16))
	orr r1,r1,#(0x1 << 16)
	str r1,[r0]
	@3.通过GPIOE_OTYPER寄存器设置PE8引脚为推挽输出模式
	ldr r0,=0x50006004
	ldr r1,[r0]
	and r1,r1,#(~(0x1 << 8))
	str r1,[r0]
	@4.通过GPIOE_OSPEEDR寄存器设置PE8引脚为高速输出模式
	ldr r0,=0x50006008
	ldr r1,[r0]
	orr r1,r1,#(0x3 << 16)
	str r1,[r0]
	@5.通过GPIOE_PUPDR寄存器设置PE8引脚为禁止上下拉电阻
	ldr r0,=0x5000600c
	ldr r1,[r0]
	and r1,r1,#(~(0x3 << 16))
	str r1,[r0]
	mov pc, lr
 
LED3_ON:
	@1.通过GPIOE_ODR寄存器设置PE8引脚输出高电平
	ldr r0,=0x50006014
	ldr r1,[r0]
	orr r1,r1,#(0x1 << 8)
	str r1,[r0]
	mov pc, lr
 
LED3_OFF:
	@1.通过GPIOE_ODR寄存器设置PE8引脚输出低电平
	ldr r0,=0x50006014
	ldr r1,[r0]
	and r1,r1,#(~(0x1 << 8))
	str r1,[r0]
	mov pc, lr
 
@ 大概1s的延时函数
delay_1s:
	mov r3, #0x10000000
	mm:
	cmp r3, #0
	subne r3, r3, #1
	bne mm
	mov pc, lr
 
.end
 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/556548.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PoseiSwap:为何青睐 Layer3?又为何选择 Celestia 作为技术伙伴?

自 PoseiSwap 在 Nautilus Chain 上线后&#xff0c;该 DEX 的整体市场进展十分顺利。我们看到&#xff0c;其不仅在 4 月&#xff0c;以 1000万美元的估值&#xff0c; 获得了来自于 Zebec Labs 的首轮 150 万美元的融资。而在本月&#xff0c;在 Zebec 生态的帮助下&#xff…

利用prusa 3d打印地形模型 如何合理切片并提高打印速度

如上图&#xff0c;我们选择打印一个宽10cm 的地形模型&#xff0c;通过prusa切片&#xff0c;显示时间为22小时31分钟。这个速度大概一天&#xff0c;确实不是我们要的速度&#xff0c;如何提高速度又不失去打印细节且不增加失败风险呢。 1.减少填充 10%的填充对于创想三维en…

RK3568平台开发系列讲解(驱动基础篇)RK平台UART的使用

🚀返回专栏总目录 文章目录 一、引脚定义1.1 UART91.2 RS232和RS485二、设备树配置三、调试3.1 连接硬件3.2 打开主机的串口终端3.3 板子发送数据3.4 板子接收数据3.5 主机退出kermit串口连接四、UART2普通串口配置沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇…

C++——模板初阶

文章目录 一.泛型编程二.函数模板1.函数模板的概念2.函数模板的格式3.函数模板的原理4.函数模板的实例化&#xff08;1&#xff09;隐式实例化&#xff08;2&#xff09;显式实例化 5.模板参数的匹配原 三.类模板1.类模板的定义格式2.类模板的实例化 前言&#xff1a; 本章我们…

Flutter问题记录 - Text组件设置不限行数无效

文章目录 前言开发环境问题描述问题分析解决方案最后 前言 梳理Flutter项目的过程中发现还有一些遗留的TODO没处理&#xff0c;其中有一个和Text组件相关。 开发环境 Flutter: 3.7.12Dart: 2.19.6 问题描述 Text组件设置maxLines: null不限制行数&#xff1a; Text(The […

gradio入门示例

随着chat-gpt等机器人对话框架的流行&#xff0c;让一个名为gradio的框架也火热起来&#xff0c;这个框架可以开启一个http服务&#xff0c;并且带输入输出界面&#xff0c;可以让对话类的人工智能项目快速运行。 gradio号称可以快速部署ai可视化项目。 下面通过两个示例来感受…

C++学习记录——이십사 位图、布隆过滤器、哈希切割

文章目录 1、位图位图应用优缺点 2、布隆过滤器1、哈希函数2、删除 3、哈希切割应用 本篇gitee 1、位图 先看一个题目&#xff1a; 给40亿个不重复的无符号整数&#xff0c;没排过序。给一个无符号整数&#xff0c;如何快速判断一个树是否在这40亿个数中&#xff1f; 这里可能…

《面试1v1》线程池

我是 javapub&#xff0c;一名 Markdown 程序员从&#x1f468;‍&#x1f4bb;&#xff0c;八股文种子选手。 面试官&#xff1a; 你好&#xff0c;很高兴见到你。请问你对线程池有什么了解&#xff1f; 候选人&#xff1a; 你好&#xff0c;我对线程池非常了解。线程池是一种…

前后端联调统一校验规则

文章目录 统一校验实现1.什么是统一校验2.统一校验的实现&#xff08;1&#xff09;引入依赖&#xff08;2&#xff09;基于注解&#xff08;3&#xff09;使用案例【1】定义校验规则【2】开启校验【3】统一异常处理器捕获校验产生的异常 3.分组校验(1)定义公共的校验分组(2)定…

完全自主研发,聚芯微发布3D dToF图像传感器芯片!

日前&#xff0c;由中国半导体行业协会IC设计分会&#xff08;ICCAD&#xff09;、芯原股份、松山湖管委会主办的主题为“AR/VR/XR元宇宙”的“2023松山湖中国IC创新高峰论坛”正式在广东东莞松山湖召开。武汉市聚芯微电子有限责任公司发布了完全自主知识产权的3D dToF图像传感…

Spring面试整理

什么是Spring&#xff1f; Spring的优缺点&#xff1f; Spring的模块组成 Spring框架中使用了哪些设计模式&#xff1f; 详细讲解下核心容器&#xff08;Spring context&#xff09;模块 Spring框架中有哪些不同类型的组件 Spring控制反转&#xff08;IOC&#xff09; 什…

由浅入深Dubbo核心源码剖析SPI机制

目录 1 SPI的概述1.1 SPI的主要作用1.2 入门案例1.3 总结 2 Dubbo中的SPI2.1 概述2.2 入门案例2.3 源码分析 3 SPI中的IOC和AOP3.1 依赖注入3.2 动态增强 4 动态编译4.1 SPI中的自适应4.2 javassist入门4.3 源码分析 1 SPI的概述 在 Dubbo 中&#xff0c;SPI 是一个非常重要的模…

Spring Boot 3.x 系列【35】服务监控 | 健康信息

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot版本3.0.5 源码地址:https://gitee.com/pearl-organization/study-spring-boot3 文章目录 1. 配置2. 基本原理3. 自动配置4. 自定义健康指标5. 分组6. 数据源1. 配置 Health是健康的意思,该端点用来检查正在运行…

XDP入门--BPF程序如何转发报文到其它网卡

本文目录 1、测试环境&#xff1a;2、实现的功能&#xff0c;使用bpf_redirect直接转发收到的报文到另外一张网卡3、测试步骤与测试结果 1、测试环境&#xff1a; 参照把树莓派改造成无线网卡(3)-----共享无线网络&#xff0c;无线网络转换成有线网络&#xff0c;让有线网络设…

从零实现一个数据库(DataBase) Go语言实现版 3.B树: 思路

英文源地址 关于B树和二叉查找树的直觉 我们的第一个直觉来自于平衡二叉树(BST).二叉树是用于排序数据的常用数据结构.在插入或移除键后保持树的良好形状就是’平衡’的意思.如前一章所述, 为了利用"页"(IO的最小单元), 应该使用n叉树而不是二叉树. b树可以由二叉查…

有哪些值得推荐的科研检索平台?

有哪些值得推荐的检索和笔记平台&#xff1f; 有哪些值得推荐的检索平台&#xff1f;文献检索&#xff0c;调研的推荐1. arXiv相关信息介绍推荐功能及用法 2. Web of Science相关信息介绍推荐功能及用法 3. Google Scholar相关信息介绍推荐功能及用法 4. Sci-Hub相关信息介绍 5…

Mybatis中动态sql的使用

文章目录 1. if 标签2.choose、when、otherwise3. trim、where、set4. foreach 动态 SQL 是 MyBatis 的强大特性之一,使用动态 SQL 并非一件易事&#xff0c;但借助可用于任何 SQL 映射语句中的强大的动态 SQL 语言&#xff0c;MyBatis 显著地提升了这一特性的易用性。Mbatis-P…

SaaS企业应该如何建立稳固的客户关系?

近年来&#xff0c;“客户成功”一词越来越热&#xff0c;这主要是由于当下企业正面临人口红利触顶、获客成本高昂、用户转化率低下、企业业绩增长受阻等问题&#xff0c;所以更多的企业开始将重心转移到对老客户的维护上&#xff0c;这也使得客户成功团队在企业中发挥的作用越…

Go中的异常处理

Go 中异常处理 主要掌握 一下几个方面: 掌握error接口掌握defer延迟掌握panic及recover error接口 error是指程序中出现不正常的情况,从而导致程序无法正常运行; go中为错误的类型提供了简单的错误处理机制 go中error的源码: // The error built-in interface type is t…

栈:程序员必备的工具箱

栈的结构和基本操作 本篇博客会讲解栈。栈是一种线性的数据结构&#xff0c;它满足“后进先出”的特性。栈有两端&#xff0c;分别是栈顶和栈底。每次插入或者删除数据&#xff0c;都是在栈顶的方向进行的。画个图解释一下&#xff1a;假设上面是栈顶&#xff0c;下面是栈底。…