ARM的学习
点亮流水灯
.text
.global _start
_start: @使能GPIOE的外设时钟 RCC_MP_AHB4ENSETR 0x50000a28 [4]->1LDR R0,=0X50000A28 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中ORR R1,R1,#(0x3<<4) @[4]设置为1ORR R1,R1,#(0x3<<5) @[5]设置为1STR R1,[R0] @将修改之后的值写回去@设置PE10为输出 GPIOE_MODER [21:20]->01 0X50006000LDR R0,=0X50006000 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<20) @[21:20]设置为00ORR R1,R1,#(0x1<<20) @[21:20]设置为01BIC R1,R1,#(0x3<<16) @[17:16]设置为00ORR R1,R1,#(0x1<<16) @[17:16]设置为01STR R1,[R0] @将修改之后的值写回去@设置PE10为推挽输出 GPIOE_OTYPER[10]->0 0X50006004LDR R0,=0X50006004 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x1<<10) @[10]设置为0BIC R1,R1,#(0x1<<8) @[8]设置为0STR R1,[R0] @将修改之后的值写回去@设置PE10低速输出 GPIOE_OSPEEDR[21:20]->00 0X50006008LDR R0,=0X50006008 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<20) @[21:20]设置为0BIC R1,R1,#(0x3<<16) @[17:16]设置为0STR R1,[R0] @将修改之后的值写回去@设置PE10无上拉下拉电阻 GPIOx_PUPDRLDR R0,=0X5000600C @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<20) @[21:20]设置为0BIC R1,R1,#(0x3<<16) @[17:16]设置为0STR R1,[R0] @将修改之后的值写回去@设置PF10为输出 GPIOF_MODER [21:20]->01 0X50007000LDR R0,=0X50007000 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<20) @[21:20]设置为00ORR R1,R1,#(0x1<<20) @[17:16]设置为01STR R1,[R0] @将修改之后的值写回去@设置PF10为推挽输出 GPIOF_OTYPER[10]->0 0X5000F004LDR R0,=0X50007004 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x1<<10) @[10]设置为0STR R1,[R0] @将修改之后的值写回去@设置PF10低速输出 GPIOF_OSPEEDR[21:20]->00 0X5000F008LDR R0,=0X50007008 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<20) @[21:20]设置为0STR R1,[R0] @将修改之后的值写回去@设置PF10无上拉下拉电阻 GPIOx_PUPDRLDR R0,=0X5000700C @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<20) @[21:20]设置为0STR R1,[R0] @将修改之后的值写回去LOOP: @B不让程序结束bl LED1_ONbl DELAYbl LED1_OFFbl DELAYbl LED2_ONbl DELAYbl LED1_OFFbl DELAYbl LED3_ONbl DELAYbl LED1_OFFbl DELAYB LOOP@亮灯
LED1_ON:@点灯 GPIOE_ODR[10]->1 0向0006014LDR R0,=0X50006014 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中 ORR R1,R1,#(0x1<<10) @[10]设置为0STR R1,[R0] @将修改之后的值写回去MOV PC,LR @程序返回LED2_ON:@点灯 GPIOE_ODR[10]->1 0向0006014LDR R0,=0X50006014 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中ORR R1,R1,#(0x1<<8) @[8]设置为0STR R1,[R0] @将修改之后的值写回去MOV PC,LR @程序返回@亮灯
LED3_ON:LDR R2,=0X50007014 @指定基地址LDR R3,[R2] @将寄存器数据读取出来保存到R3中ORR R3,R3,#(0x1<<10) @[10]设置为0STR R3,[R2] @将修改之后的值写回去MOV PC,LR @程序返回@灭灯
LED_OFF:LDR R0,=0X50006014 @指定基地址LDR R1,[R0] @将寄存器数据读取出来保存到R1中LDR R2,=0X50007014 @指定基地址LDR R3,[R2] @将寄存器数据读取出来保存到R3中BIC R3,R3,#(0x1<<10) @[10]设置为0BIC R1,R1,#(0x1<<10) @[10]设置为0BIC R1,R1,#(0x1<<8) @[8]设置为0STR R1,[R0] @将修改之后的值写回去STR R3,[R2] @将修改之后的值写回去MOV PC,LR @程序返回@延时函数
DELAY:LDR R4,=0X10000000
MM:CMP R4,#0SUBNE R4,R4,#1BNE MMMOV PC,LR @程序返回.end
效果演示
流水灯
相关文章:
ARM的学习
点亮流水灯 .text .global _start _start: 使能GPIOE的外设时钟 RCC_MP_AHB4ENSETR 0x50000a28 [4]->1LDR R0,0X50000A28 指定基地址LDR R1,[R0] 将寄存器数据读取出来保存到R1中ORR R1,R1,#(0x3<<4) [4]设置为1ORR R1,R1,#(0x3<<5) [5]设置为1STR …...
Restful API接口规范(以Django为例)
Restful API接口规范(以Django为例) Restful API的接口架构风格中制定了一些规范,极大的简化了前后端对接的时间,以及增加了开发效率 安全性保证–使用https路径中带 api标识路径中带版本号数据即资源,通常使用名词操作请求方式决定操作资源…...
AI助力,程序员压力倍增?
讲动人的故事,写懂人的代码 你知道程序员现在在AI辅助编程时最头疼的事情是什么吗?就是怎么在改代码的时候保住小命。 大家都听过程序员因为工作太累导致过劳湿的事情。 无论是写新功能、修bug,还是更改系统配置,都得改代码。 现在有了AI的帮助,本应该轻松很多,为什么…...

LoRA微调
论文:LoRA: Low-Rank Adaptation of Large Language Models 实现:microsoft/LoRA: Code for loralib, an implementation of “LoRA: Low-Rank Adaptation of Large Language Models” (github.com) 摘要 自然语言处理的一个重要的开发范式包括&#…...

45.基于SpringBoot + Vue实现的前后端分离-驾校预约学习系统(项目 + 论文)
项目介绍 本站是一个B/S模式系统,采用SpringBoot Vue框架,MYSQL数据库设计开发,充分保证系统的稳定性。系统具有界面清晰、操作简单,功能齐全的特点,使得基于SpringBoot Vue技术的驾校预约学习系统设计与实现管理工作…...

系统思考—时间滞延
“没有足够的时间是所有管理问题的一部分。”——彼得德鲁克 鱼和熊掌可以兼得,但并不能同时获得。在提出系统解决方案时,我们必须认识到并考虑到解决方案的实施通常会有必要的时间滞延。这种延迟有时比我们预想的要长得多,特别是当方案涉及…...

SSM项目转Springboot项目
SSM项目转Springboot项目 由于几年前写的一个ssm项目想转成springboot项目,所以今天倒腾了一下。 最近有人需要毕业设计转换一下,所以我有时间的话可以有偿帮忙转换,需要的私信我或+v:Arousala_ 首先创建一个新的spr…...
VUE3.0对比VUE2.0
vue3.0 与 vue2.0的不同之处有以下几点: 数据响应式原理 3.0基于Proxy的代理实现监测,vue2.0是基于Object.defineProperty实现监测。 vue2.0 通过Object.defineProperty,每个数据属性被定义成可观察的,具有getter和setter方法&…...

车内AR互动娱乐解决方案,打造沉浸式智能座舱体验
美摄科技凭借其卓越的创新能力,为企业带来了革命性的车内AR互动娱乐解决方案。该方案凭借自研的AI检测和渲染引擎,打造出逼真的数字形象,不仅丰富了车机娱乐内容,更提升了乘客与车辆的互动体验,让每一次出行都成为一场…...

OR36 链表的回文结构
描述 对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。 给定一个链表的头指针A,请返回一个bool值,代表其是否为回文结构。保证链表长度小于等于900。 测试样例: 1->…...
【译】微调与人工引导: 语言模型调整中的 SFT 和 RLHF
原文地址:Fine-Tuning vs. Human Guidance: SFT and RLHF in Language Model Tuning 本文主要对监督微调(SFT, Supervised Fine Tuning )和人类反馈强化学习(RLHF, Reinforcement Learning from Human Feedback)进行简…...

kylin java.io.IOException: error=13, Permission denied
linux centos7.8 error13, Permission denied_linux open error13-CSDN博客 chmod -R 777 /home/zengwenfeng/kkFileView-4.2.1 2024-04-15 13:15:17.416 WARN 3400 --- [er-offprocmng-1] o.j.l.office.LocalOfficeProcessManager : An I/O error prevents us to determine…...
前端面试01总结
1.Js 中!x为true 时,x可能为哪些值 答: 1.false:布尔值false 2.0或-0:数字零 3.""或’或 (空字符串):长度为0的字符串 4.null:表示没有任何值的特殊值 5.undefined:变量未定义时的默认…...
算法--目录
algorithm: 十种排序算法 二分法-各种应用 algorithm: 拓扑排序 算法中的背包问题 最长子序列问题 前缀和-解题集合 差分数组-解题...

ArcGIS Pro 3D建模简明教程
在本文中,我讲述了我最近一直在探索的在 ArcGIS Pro 中设计 3D 模型的过程。 我的目标是尽可能避免与其他软件交互(即使是专门用于 3D 建模的软件),并利用 Pro 可以提供的可能性。 这个短暂的旅程分为三个不同的阶段:…...
24届数字IC设计/验证秋招总结贴——先看这个
文章目录 前言一、经验篇二、知识学习篇三、笔试篇3.1 各大公司笔试真题3.2 华为机试——数字芯片笔试题汇总 四、面试篇4.1 时间节点4.2 提前批4.3 正式批 前言 为方便快速进行查找该专栏的内容,将所有内容链接均放在此篇博客中 整理不易,欢迎订阅~~ …...

带洞平面三角分割结果的逆向算法
先标不重复点,按最近逐个插入。 只说原理。 不带洞的 1 2 4 2 3 4 两个三角形 结果 1 2 3 4 无重复 无洞 1 2 6 1 2 3 6 1 2 3 7 6 1 2 3 4 7 6 1 2 3 4 5 7 6 1 2 3 4 1 5 7 6 1 2 3 4 1 6 5 7 6 最终结果 1 2 3 4 1 6 5 7 6 按重复分割 1 2 3…...

MGRE-OSPF接口网络类型实验
OSPF接口网络类型实验 一,实验拓扑 初始拓扑: 最终拓扑: 二,实验要求及分析 要求: 1,R6为ISP只能配置IP地址,R1-R5的环回为私有网段 2,R1/R4/R5为全连的MGRE结构,R…...
ChatGPT科研利器详解:写作论文轻松如玩游戏
ChatGPT无限次数:点击直达 ChatGPT科研利器详解:写作论文轻松如玩游戏 引言 在当今科技日新月异的时代,人工智能技术的应用越来越广泛,其中自然语言处理领域的发展尤为迅猛。ChatGPT作为一款先进的文本生成模型,为科研工作者提供…...
vue3从精通到入门23:定义全局变量
在vue2中,我们知道vue2.x是使用Vue.prototype.$xxxxxxx来定义全局变量, 比如定义一个全局的工具函数。 // 定义 ... Vue.prototype.$utilsutils;// 使用 this.$utils() ... 在vue3中我们无法使用this,提供了globalProperties; …...

IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

【 java 虚拟机知识 第一篇 】
目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...
安卓基础(Java 和 Gradle 版本)
1. 设置项目的 JDK 版本 方法1:通过 Project Structure File → Project Structure... (或按 CtrlAltShiftS) 左侧选择 SDK Location 在 Gradle Settings 部分,设置 Gradle JDK 方法2:通过 Settings File → Settings... (或 CtrlAltS)…...

goreplay
1.github地址 https://github.com/buger/goreplay 2.简单介绍 GoReplay 是一个开源的网络监控工具,可以记录用户的实时流量并将其用于镜像、负载测试、监控和详细分析。 3.出现背景 随着应用程序的增长,测试它所需的工作量也会呈指数级增长。GoRepl…...

【工具教程】多个条形码识别用条码内容对图片重命名,批量PDF条形码识别后用条码内容批量改名,使用教程及注意事项
一、条形码识别改名使用教程 打开软件并选择处理模式:打开软件后,根据要处理的文件类型,选择 “图片识别模式” 或 “PDF 识别模式”。如果是处理包含条形码的 PDF 文件,就选择 “PDF 识别模式”;若是处理图片文件&…...

基于小程序老人监护管理系统源码数据库文档
摘 要 近年来,随着我国人口老龄化问题日益严重,独居和居住养老机构的的老年人数量越来越多。而随着老年人数量的逐步增长,随之而来的是日益突出的老年人问题,尤其是老年人的健康问题,尤其是老年人产生健康问题后&…...
uniapp获取当前位置和经纬度信息
1.1. 获取当前位置和经纬度信息(需要配置高的SDK) 调用uni-app官方API中的uni.chooseLocation(),即打开地图选择位置。 <button click"getAddress">获取定位</button> const getAddress () > {uni.chooseLocatio…...

循环语句之while
While语句包括一个循环条件和一段代码块,只要条件为真,就不断 循环执行代码块。 1 2 3 while (条件) { 语句 ; } var i 0; while (i < 100) {console.log(i 当前为: i); i i 1; } 下面的例子是一个无限循环,因…...