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

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的接口架构风格中制定了一些规范&#xff0c;极大的简化了前后端对接的时间&#xff0c;以及增加了开发效率 安全性保证–使用https路径中带 api标识路径中带版本号数据即资源&#xff0c;通常使用名词操作请求方式决定操作资源…...

AI助力,程序员压力倍增?

讲动人的故事,写懂人的代码 你知道程序员现在在AI辅助编程时最头疼的事情是什么吗?就是怎么在改代码的时候保住小命。 大家都听过程序员因为工作太累导致过劳湿的事情。 无论是写新功能、修bug,还是更改系统配置,都得改代码。 现在有了AI的帮助,本应该轻松很多,为什么…...

LoRA微调

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

45.基于SpringBoot + Vue实现的前后端分离-驾校预约学习系统(项目 + 论文)

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

系统思考—时间滞延

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

SSM项目转Springboot项目

SSM项目转Springboot项目 由于几年前写的一个ssm项目想转成springboot项目&#xff0c;所以今天倒腾了一下。 最近有人需要毕业设计转换一下&#xff0c;所以我有时间的话可以有偿帮忙转换&#xff0c;需要的私信我或&#xff0b;v&#xff1a;Arousala_ 首先创建一个新的spr…...

VUE3.0对比VUE2.0

vue3.0 与 vue2.0的不同之处有以下几点&#xff1a; 数据响应式原理 3.0基于Proxy的代理实现监测&#xff0c;vue2.0是基于Object.defineProperty实现监测。 vue2.0 通过Object.defineProperty&#xff0c;每个数据属性被定义成可观察的&#xff0c;具有getter和setter方法&…...

车内AR互动娱乐解决方案,打造沉浸式智能座舱体验

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

OR36 链表的回文结构

描述 对于一个链表&#xff0c;请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法&#xff0c;判断其是否为回文结构。 给定一个链表的头指针A&#xff0c;请返回一个bool值&#xff0c;代表其是否为回文结构。保证链表长度小于等于900。 测试样例&#xff1a; 1->…...

【译】微调与人工引导: 语言模型调整中的 SFT 和 RLHF

原文地址&#xff1a;Fine-Tuning vs. Human Guidance: SFT and RLHF in Language Model Tuning 本文主要对监督微调&#xff08;SFT, Supervised Fine Tuning &#xff09;和人类反馈强化学习&#xff08;RLHF, Reinforcement Learning from Human Feedback&#xff09;进行简…...

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&#xff1a;布尔值false 2.0或-0&#xff1a;数字零 3.""或’或 &#xff08;空字符串&#xff09;&#xff1a;长度为0的字符串 4.null&#xff1a;表示没有任何值的特殊值 5.undefined&#xff1a;变量未定义时的默认…...

算法--目录

algorithm: 十种排序算法 二分法-各种应用 algorithm: 拓扑排序 算法中的背包问题 最长子序列问题 前缀和-解题集合 差分数组-解题...

ArcGIS Pro 3D建模简明教程

在本文中&#xff0c;我讲述了我最近一直在探索的在 ArcGIS Pro 中设计 3D 模型的过程。 我的目标是尽可能避免与其他软件交互&#xff08;即使是专门用于 3D 建模的软件&#xff09;&#xff0c;并利用 Pro 可以提供的可能性。 这个短暂的旅程分为三个不同的阶段&#xff1a;…...

24届数字IC设计/验证秋招总结贴——先看这个

文章目录 前言一、经验篇二、知识学习篇三、笔试篇3.1 各大公司笔试真题3.2 华为机试——数字芯片笔试题汇总 四、面试篇4.1 时间节点4.2 提前批4.3 正式批 前言 为方便快速进行查找该专栏的内容&#xff0c;将所有内容链接均放在此篇博客中 整理不易&#xff0c;欢迎订阅~~ …...

带洞平面三角分割结果的逆向算法

先标不重复点&#xff0c;按最近逐个插入。 只说原理。 不带洞的 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接口网络类型实验 一&#xff0c;实验拓扑 初始拓扑&#xff1a; 最终拓扑&#xff1a; 二&#xff0c;实验要求及分析 要求&#xff1a; 1&#xff0c;R6为ISP只能配置IP地址&#xff0c;R1-R5的环回为私有网段 2&#xff0c;R1/R4/R5为全连的MGRE结构&#xff0c;R…...

ChatGPT科研利器详解:写作论文轻松如玩游戏

ChatGPT无限次数:点击直达 ChatGPT科研利器详解&#xff1a;写作论文轻松如玩游戏 引言 在当今科技日新月异的时代&#xff0c;人工智能技术的应用越来越广泛&#xff0c;其中自然语言处理领域的发展尤为迅猛。ChatGPT作为一款先进的文本生成模型&#xff0c;为科研工作者提供…...

vue3从精通到入门23:定义全局变量

在vue2中&#xff0c;我们知道vue2.x是使用Vue.prototype.$xxxxxxx来定义全局变量&#xff0c; 比如定义一个全局的工具函数。 // 定义 ... Vue.prototype.$utilsutils;// 使用 this.$utils() ... 在vue3中我们无法使用this&#xff0c;提供了globalProperties&#xff1b; …...

Cursor实现用excel数据填充word模版的方法

cursor主页&#xff1a;https://www.cursor.com/ 任务目标&#xff1a;把excel格式的数据里的单元格&#xff0c;按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例&#xff0c;…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

Qwen3-Embedding-0.6B深度解析:多语言语义检索的轻量级利器

第一章 引言&#xff1a;语义表示的新时代挑战与Qwen3的破局之路 1.1 文本嵌入的核心价值与技术演进 在人工智能领域&#xff0c;文本嵌入技术如同连接自然语言与机器理解的“神经突触”——它将人类语言转化为计算机可计算的语义向量&#xff0c;支撑着搜索引擎、推荐系统、…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)

上一章用到了V2 的概念&#xff0c;其实 Fiori当中还有 V4&#xff0c;咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务)&#xff0c;代理中间件&#xff08;ui5-middleware-simpleproxy&#xff09;-CSDN博客…...

Java + Spring Boot + Mybatis 实现批量插入

在 Java 中使用 Spring Boot 和 MyBatis 实现批量插入可以通过以下步骤完成。这里提供两种常用方法&#xff1a;使用 MyBatis 的 <foreach> 标签和批处理模式&#xff08;ExecutorType.BATCH&#xff09;。 方法一&#xff1a;使用 XML 的 <foreach> 标签&#xff…...

基于Springboot+Vue的办公管理系统

角色&#xff1a; 管理员、员工 技术&#xff1a; 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能&#xff1a; 该办公管理系统是一个综合性的企业内部管理平台&#xff0c;旨在提升企业运营效率和员工管理水…...

MySQL 部分重点知识篇

一、数据库对象 1. 主键 定义 &#xff1a;主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 &#xff1a;确保数据的完整性&#xff0c;便于数据的查询和管理。 示例 &#xff1a;在学生信息表中&#xff0c;学号可以作为主键&#xff…...