ARM:2024/4/11

实现三个灯的闪烁

代码: 
.text 
.global _start
_start: @使能GPIOE的外设时钟   RCC_MP_AHB4ENSETR 0x50000a28   [4]->1LDR R0,=0X50000A28  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中ORR R1,R1,#(0x1<<4)   @[4]设置为1STR R1,[R0]  @将修改之后的值写回去@使能GPIOF的外设时钟   RCC_MP_AHB4ENSETR 0x50000a28   [5]->1LDR R0,=0X50000A28  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中ORR R1,R1,#(0x1<<5)   @[5]设置为1STR R1,[R0]  @将修改之后的值写回去@LED1@设置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]设置为01STR R1,[R0]  @将修改之后的值写回去@设置PE10为推挽输出  GPIOE_OTYPER[10]->0   0X50006004LDR R0,=0X50006004  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x1<<10)   @[10]设置为0STR R1,[R0]  @将修改之后的值写回去@设置PE10低速输出  GPIOE_OSPEEDR[21:20]->00  0X50006008LDR R0,=0X50006008  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<20)   @[21:20]设置为0STR R1,[R0]  @将修改之后的值写回去@设置PE10无上拉下拉电阻 GPIOx_PUPDRLDR R0,=0X5000600C  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<20)   @[21:20]设置为0STR R1,[R0]  @将修改之后的值写回去@LED2@设置PF10为输出   GPIOE_MODER [21:20]->01   0X50007000LDR R0,=0X50007000  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<20)   @[21:20]设置为00ORR R1,R1,#(0x1<<20)   @[21:20]设置为01STR R1,[R0]  @将修改之后的值写回去@设置PF10为推挽输出  GPIOE_OTYPER[10]->0   0X50007004LDR R0,=0X50007004  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x1<<10)   @[10]设置为0STR R1,[R0]  @将修改之后的值写回去@设置PF10低速输出  GPIOE_OSPEEDR[21:20]->00  0X50007008LDR 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]  @将修改之后的值写回去@LED3@设置PE8为输出   GPIOE_MODER [17:16]->01   0X50006000LDR R0,=0X50006000  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<16)   @[17:16]设置为00ORR R1,R1,#(0x1<<16)   @[17:16]设置为01STR R1,[R0]  @将修改之后的值写回去@设置PE8为推挽输出  GPIOE_OTYPER[10]->0   0X50006004LDR R0,=0X50006004  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x1<<8)   @[8]设置为0STR R1,[R0]  @将修改之后的值写回去@设置PE8低速输出  GPIOE_OSPEEDR[17:16]->00  0X50006008LDR R0,=0X50006008  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<16)   @[17:16]设置为0STR R1,[R0]  @将修改之后的值写回去@设置PE8无上拉下拉电阻 GPIOx_PUPDRLDR R0,=0X5000600C  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x3<<16)   @[17:16]设置为0STR R1,[R0]  @将修改之后的值写回去LOOP:  @不让程序结束@LED1bl LED_ONbl DELAYbl LED_OFFbl DELAYB LOOP@亮灯
LED_ON:
@LED1LDR R0,=0X50006014  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中ORR R1,R1,#(0x1<<10)   @[10]设置为1STR R1,[R0]  @将修改之后的值写回去
@LED2LDR R0,=0X50007014  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中ORR R1,R1,#(0x1<<10)   @[10]设置为1STR R1,[R0]  @将修改之后的值写回去
@LED3LDR R0,=0X50006014  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中ORR R1,R1,#(0x1<<8)   @[8]设置为1STR R1,[R0]  @将修改之后的值写回去MOV PC,LR  @程序返回@灭灯
LED_OFF:
@LED1LDR R0,=0X50006014  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x1<<10)   @[10]设置为0STR R1,[R0]  @将修改之后的值写回去
@LED2LDR R0,=0X50007014  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x1<<10)   @[10]设置为0STR R1,[R0]  @将修改之后的值写回去
@LED3LDR R0,=0X50006014  @指定基地址LDR R1,[R0]  @将寄存器数据读取出来保存到R1中BIC R1,R1,#(0x1<<8)   @[8]设置为0STR R1,[R0]  @将修改之后的值写回去MOV PC,LR  @程序返回@延时函数
DELAY:LDR R3,=0X10000000
MM:CMP R3,#0SUBNE R3,R3,#1BNE MMMOV PC,LR  @程序返回.end

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

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

相关文章

linux 配置服务开机启动

一、Centos 中配置进程开启启动 1、使用 systemd 服务&#xff1a; &#xff08;1&#xff09;创建一个名为 myapp.service 的服务文件&#xff1a; [Unit] DescriptionMyApp #描述 After #描述服务类别 [Service] Typefork…

备战蓝桥杯---刷杂题2

显然我们直接看前一半&#xff0c;然后我们按照斜行看&#xff0c;我们发现斜行是递增的&#xff0c;而同一行从左向右也是递增的&#xff0c;因此我们可以直接二分&#xff0c;同时我们发现对称轴的数为Ck,2k. 我们从16斜行枚举即可 #include<bits/stdc.h> using name…

git push报错remote: Please remove the file from history and try again

原因&#xff1a;上传文件超过100M&#xff0c;找到此文件删除即可。 1、查看是哪个文件过大&#xff0c;此处对用红框里面的 a6de1336c67c3bac77757c5eff8c8001823f7c92&#xff0c;得到具体的文件名称 git rev-list --objects --all | grep a6de1336c67c3bac77757c5eff8c80…

如果你想在Nomad Web中操作Excel数据

大家好&#xff0c;才是真的好。 没有意外&#xff0c;我猜你也会想在Nomad Web中操作Excel数据&#xff0c;毕竟你在Notes客户机中就是这样操作的。 不过&#xff0c;一个运行在浏览器中&#xff0c;一个运行在Notes客户机&#xff08;操作系统&#xff09;中。因此&#xf…

host文件nginx代理 综合理解

之前一直理解得很糙 导致遇到问题很迷糊 今天经过大佬两句话讲明白了 特此记录 host文件 首先host做了代理 也就是对浏览器的DNS寻址做了拦截 具体原理可以参照当我们在地址栏输入URL的时候浏览器发生了什么 例如127.0.0.1 www.baidu.com 将 127.0.0.1 www.baidu.com 链接自…

机架式服务器的优势有哪些?

机架式服务器是服务器中的一种&#xff0c;机架式服务器的外形并不像普通的计算机&#xff0c;和交换机比较相像&#xff0c;机架式服务器一般安装在标准的19英寸机柜里面&#xff0c;这种机构一般多为功能型服务器。 那机架式服务器相对于其他服务器来说有哪些优势呢&#xff…

骨传导耳机怎么选?盘点五款2024畅销热门机型推荐

作为有着多年工作经验的数码测评师&#xff0c;我最近收到很多粉丝朋友的私信&#xff0c;大部分都是想了解关于骨传导耳机怎样选择之类的问题&#xff0c;我们可以看到&#xff0c;目前市面上的骨传导耳机五花八门&#xff0c;它们的质量和性能都参差不齐&#xff0c;甚至有很…

鸿蒙开发-ArkTS语言-并发-案例

鸿蒙开发-UI-交互事件-键鼠事件 鸿蒙开发-UI-交互事件-焦点事件 鸿蒙开发-UI-交互事件-手势事件 鸿蒙开发-UI-web 鸿蒙开发-UI-web-页面 鸿蒙开发-ArkTS语言-基础类库 鸿蒙开发-ArkTS语言-并发 文章目录 前言 一、CPU密集型任务 1. 使用TaskPool进行图像直方图处理 2. 使用w…

【cocos creator】【TS】贝塞尔曲线,地图之间显示曲线,顺着曲线移动

参考&#xff1a; https://blog.csdn.net/Ctrls_/article/details/108731313 https://blog.csdn.net/qq_28299311/article/details/104009804 const { ccclass, property } cc._decorator;ccclass export default class mapPanel extends cc.Component {property(cc.Node)pla…

2024 年 3 月 Web3 游戏报告:市场趋势与投资动态

作者&#xff1a;stellafootprint.network 数据来源&#xff1a;Footprint Analytics GameFi Research 2024 年 3 月&#xff0c;比特币不断刷新纪录&#xff0c;成功跨越了月中的低谷。受益于宏观经济的积极态势&#xff0c;整个加密货币市场表现突出。与此同时&#xff0c…

宠物医院电子处方软件操作教程,兽医处方笺范例经验分享

宠物医院电子处方软件操作教程&#xff0c;兽医处方笺范例经验分享 一、前言 以下软件操作教程以&#xff0c;佳易王宠物店兽医电子处方管理系统软件为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 软件基本功能&#xff1a;权限管理&#xff…

Vscode设置滚轮进行字体大小的调节

Vscode设置滚轮进行字体大小的调节 正常的话按 ctrl 或者 ctrl - 进行字体的大小调节 1.打开Vscode&#xff0c;找打设置的图标&#xff0c;在点击设置&#xff0c;或者直接使用快捷键&#xff0c;【ctrl ,】 2. 在搜索框搜索Font Ligatures 3.双击进入settings.json ,找到如…

手持气象站功能介绍

TH-SQ5手持气象站是一种便携式设备&#xff0c;用于手动测量和记录气象参数&#xff0c;如温度、湿度、风速和气压。这些设备通常用于户外活动、教育和业余气象观测。以下是对机械式手持气象站的一些续写内容&#xff1a; 数据记录功能&#xff1a;虽然基本型号的机械式手持气象…

本地开发nginx代理服务器(2024-04-10)

1、nginx 解释 nginx 是一个高性能的HTTP和反向代理服务器&#xff0c;同时也是一个IMAP/POP3/SMTP 代理服务器。 在性能上&#xff0c;Nginx占用很少的系统资源&#xff0c;能支持更多的并发连接&#xff0c;达到更高的访问效率&#xff1b; 在功能上&#xff0c;Nginx是优…

密码学 | 椭圆曲线 ECC 密码学入门(二)

目录 4 椭圆曲线&#xff1a;更好的陷门函数 5 奇异的对称性 6 让我们变得奇特 ⚠️ 原文地址&#xff1a;A (Relatively Easy To Understand) Primer on Elliptic Curve Cryptography ⚠️ 写在前面&#xff1a;本文属搬运博客&#xff0c;自己留着学习。如果你和我一样…

2024妈妈杯mathorcup B题详细思路代码:甲骨文智能识别中原始拓片单字自动分割与识别研究

甲骨文智能识别中原始拓片单字自动分割与识别研究&#xff1a; 问题一&#xff1a; 图像预处理&#xff1a;这通常包括将图像转换为灰度图&#xff0c;剔除噪声&#xff0c;调整对比度&#xff0c;以及可能的二值化处理&#xff0c;使得甲骨文的特征更加突出。此外&#xff0c…

2024年第十四届 Mathorcup (B题)| 甲骨文智能识别 | 深度学习 计算机视觉 |数学建模完整代码+建模过程全解全析

当大家面临着复杂的数学建模问题时&#xff0c;你是否曾经感到茫然无措&#xff1f;作为2022年美国大学生数学建模比赛的O奖得主&#xff0c;我为大家提供了一套优秀的解题思路&#xff0c;让你轻松应对各种难题。 让我们来看看Mathorcup (B题&#xff09;&#xff01; CS团队…

ChatGPT助力学术界,论文写作如虎添翼

ChatGPT无限次数:点击直达 ChatGPT助力学术界&#xff0c;论文写作如虎添翼 在当今信息爆炸的时代&#xff0c;高质量的学术论文写作对于学者们来说至关重要。然而&#xff0c;随着人工智能技术的不断发展&#xff0c;一款名为ChatGPT的语言模型逐渐成为学术界的利器&#xff…

【随笔】Git 高级篇 -- 整理提交记录(下)rebase -i(十六)

&#x1f48c; 所属专栏&#xff1a;【Git】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &#x1f496; 欢迎大…

在mapviz中显示遥感地图瓦片

文章目录 前言安装获取第一帧的经纬度修改配置并运行节点添加展示申请天地图地图影像瓦片接口最终效果Q&&AQ: Failed to load file: /home/greenfield/.mapviz_config前言 在mapviz中加载地图瓦片,可以用于目视多传感器融合定位结果的好坏。 安装 mkdir -p ~/mapvi…