DAY3,ARM(LED点灯实验)

1.汇编实现开发板三盏灯点亮熄灭;


.text 
.global _start
_start: /**********LED123点灯**************/RCC_INIT:@1使能PE10 PF10 PE8@RCC..寄存器,E[4]=1 F[5]=1 0x50000a28ldr r0,=0x50000a28ldr r1,[r0]orr r1,r1,#(0x3 << 4)str r1,[r0]LED1_INET:@2初始化LED1,PE10@a设置输出模式 @GPIOx_moder寄存器 0x50006000 [21:20]=01ldr r0,=0x50006000ldr r1,[r0]bic r1,r1,#(0x3 << 20)orr r1,r1,#(0x1 << 20)str r1,[r0]@b设置推挽输出类型@GPIOx_OTYPER寄存器 0x50006004 [10]=0ldr r0,=0x50006004ldr r1,[r0]bic r1,r1,#(0x1 << 10)str r1,[r0]@c设置输出速率,低速@GPIOx_OSPEEDR寄存器 0x50006008 [21:20]=00 ldr r0,=0x50006008ldr r1,[r0]bic r1,r1,#(0x3 << 20)str r1,[r0]@d设置禁止拉电阻@GPIOx_PUPDR寄存器 0x5000600c [21:20]=00ldr r0,=0x5000600cldr r1,[r0]bic r1,r1,#(0x3 << 20)str r1,[r0]@3初始化LED2 PF10@a设置输出模式 @GPIOx_moder寄存器 0x50007000 [21:20]=01ldr r0,=0x50007000ldr r1,[r0]bic r1,r1,#(0x3 << 20)orr r1,r1,#(0x1 << 20)str r1,[r0]@b设置推挽输出类型@GPIOx_OTYPER寄存器 0x50007004 [10]=0ldr r0,=0x50007004ldr r1,[r0]bic r1,r1,#(0x1 << 10)str r1,[r0]@c设置输出速率,低速@GPIOx_OSPEEDR寄存器 0x50007008 [21:20]=00 ldr r0,=0x50007008ldr r1,[r0]bic r1,r1,#(0x3 << 20)str r1,[r0]@d设置禁止拉电阻@GPIOx_PUPDR寄存器 0x5000700c [21:20]=00ldr r0,=0x5000700cldr r1,[r0]bic r1,r1,#(0x3 << 20)str r1,[r0]@4初始化LED3 PE8@a设置输出模式 @GPIOx_moder寄存器 0x50006000 [17:16]=01ldr r0,=0x50006000ldr r1,[r0]bic r1,r1,#(0x3 << 16)orr r1,r1,#(0x1 << 16)str r1,[r0]@b设置推挽输出类型@GPIOx_OTYPER寄存器 0x50006004 [8]=0ldr r0,=0x50006004ldr r1,[r0]bic r1,r1,#(0x1 << 8)str r1,[r0]@c设置输出速率,低速@GPIOx_OSPEEDR寄存器 0x50006008 [17:16]=00 ldr r0,=0x50006008ldr r1,[r0]bic r1,r1,#(0x3 << 16)str r1,[r0]@d设置禁止拉电阻@GPIOx_PUPDR寄存器 0x5000600c [17:16]=00ldr r0,=0x5000600cldr r1,[r0]bic r1,r1,#(0x3 << 16)str r1,[r0]loop:bl LED1_ONbl delay_1sbl LED2_ONbl delay_1sbl LED3_ONbl delay_1sbl LED1_OFFbl delay_1sbl LED2_OFFbl delay_1sbl LED3_OFFbl delay_1sb loopLED1_ON:@5LED1点灯 PE10@设置引脚输出高电平@GPIOx_ODR寄存器 0x50006014 [10]=1ldr r0,=0x50006014ldr r1,[r0]orr r1,r1,#(0x1 << 10)str r1,[r0]mov pc,lrLED2_ON:@6LED2点灯 PF10@设置引脚输出高电平@GPIOx_ODR寄存器 0x50007014 [10]=1ldr r0,=0x50007014ldr r1,[r0]orr r1,r1,#(0x1 << 10)str r1,[r0]mov pc,lrLED3_ON:@7LED3点灯 PE8@设置引脚输出高电平@GPIOx_ODR寄存器 0x50006014 [8]=1ldr r0,=0x50006014ldr r1,[r0]orr r1,r1,#(0x1 << 8)str r1,[r0]mov pc,lrLED1_OFF:@8LED1关灯 PE8@设置引脚输出低电平@GPIOx_ODR寄存器 0x50006014 [10]=0ldr r0,=0x50006014ldr r1,[r0]bic r1,r1,#(0x1 << 10)str r1,[r0]mov pc,lrLED2_OFF:@9LED2关灯 PF10@设置引脚输出低电平@GPIOx_ODR寄存器 0x50007014 [10]=0ldr r0,=0x50007014ldr r1,[r0]bic r1,r1,#(0x1 << 10)str r1,[r0]mov pc,lrLED3_OFF:@10LED3关灯 PE8@设置引脚输出低电平@GPIOx_ODR寄存器 0x50006014 [8]=0ldr r0,=0x50006014ldr r1,[r0]bic r1,r1,#(0x1 << 8)str r1,[r0]mov pc,lr@ 大概1s的延时函数
delay_1s:mov r3, #0x10000000mm:cmp r3, #0subne r3, r3, #1bne mmmov pc, lr.end
结果:(我的板LD1坏了,所以不亮) 

 

2.今日思维导图;

 

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

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

相关文章

酷开系统 | 酷开科技大数据,更好的与目标消费人群建立联系

众所周知&#xff0c;OTT的一大优势在于强曝光&#xff0c;能够给消费者带来强烈的视觉冲击&#xff0c;强化品牌认知。但是&#xff0c;要想达到提升品牌认知&#xff0c;首先要保证OTT的流量规模&#xff0c;实现对目标人群的有效覆盖。得年轻消费者得“天下”&#xff0c;年…

tk切换到mac的code分享

文章目录 前言一、基础环境配置二、开发软件与扩展1.用到的开发软件与平替、扩展情况 总结 前言 最近换上了coding人生的第一台mac&#xff0c;以前一直偏好tk&#xff0c;近来身边的朋友越来越多的用mac了&#xff0c;win的自动更新越来越占磁盘了&#xff0c;而且win11抛弃了…

vue elementui v-for 循环el-table-column 第一列数据变到最后一个

这个动态渲染table表格时发现el-table-column 第一列数据变到最后一个 序号被排到后面 代码 修改后 <el-table:data"tableData"tooltip-effect"dark"style"width: 100%"height"500"><template v-for"(item, index) i…

每天一道leetcode:1926. 迷宫中离入口最近的出口(图论中等广度优先遍历)

今日份题目&#xff1a; 给你一个 m x n 的迷宫矩阵 maze &#xff08;下标从 0 开始&#xff09;&#xff0c;矩阵中有空格子&#xff08;用 . 表示&#xff09;和墙&#xff08;用 表示&#xff09;。同时给你迷宫的入口 entrance &#xff0c;用 entrance [entrancerow, …

SpringBoot的配置文件(properties与yml)

文章目录 1. 配置文件的作用2. 配置文件格式3. 配置文件的使用方法3.1. properties配置文件3.1.1. 基本语法和使用3.1.2. properties优缺点分析 3.2. yml配置文件3.2.1. 基本语法与使用3.2.2. yml中单双引号问题3.2.3. yml配置不同类型的数据类型及null3.2.4. 配置对象3.2.5. 配…

android设置竖屏仍然跟随屏幕旋转怎么办

如题所问&#xff0c;我最近遇到一个bug&#xff0c;就是设置了摇感&#xff0c;然后有用户反馈说设置了手机下拉的系统设置-屏幕旋转-关闭。然后屏幕还是会旋转的问题。 首先&#xff0c;我们先从如何设置横竖屏了解下好了 设置横屏和竖屏的方法&#xff1a; 方法一&#x…

uni-app引入sortable列表拖拽,兼容App和H5,拖拽排序。

效果: 拖拽排序 背景&#xff1a; 作为一名前端开发人员&#xff0c;在工作中难免会遇到拖拽功能&#xff0c;分享一个github上一个不错的拖拽js库&#xff0c;能满足我们在项目开发中的需要&#xff0c;下面是我在uniapp中使用SortableJS的使用详细流程&#xff1b; vue开发…

Centos7安装docker后默认开启docker0的网卡|卸载默认网卡

一&#xff1a; 停掉服务 systemctl stop docker [rootwww ~]# systemctl stop docker [rootwww ~]# systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor prese…

【bug】Unity无法创建项目

bug UnityHub无法创建项目 UnityHub无法创建项目 出现的问题&#xff1a;在创建新项目时弹出来一个 无法创建项目 尝试的方法&#xff1a; 刷新许可证 ❌没用退出账号重新登陆 ❌没用重启电脑 ❌没用 最后发现是什么问题呢&#xff1f; 2021.3.3这个版本我之前在资源管理器中…

SpringBoot概述及项目的创建使用

文章目录 一. Spring Boot概述1. 什么是Spring Boot&#xff1f;2. Spring Boot的优点 二. Spring Boot项目的创建1. 使用IDEA创建1.1. 准备工作1.2. 创建运行Spring Boot项目1.3. 进行Web交互1.4. 目录工程介绍1.5. 项目快速添加依赖1.6. 防止配置文件乱码所需的配置1.7. Spri…

Docker实战专栏简介

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

【iMessage苹果推?IM推送】群控脚本当Apple APNS推送服务器从您的应用程序接吸收注册消息时,它将为您回到一串devicetoken

推荐内容IMESSGAE相关 作者✈️IMEAE推荐内容iMessage苹果推软件 *** 点击即可查看作者要求内容信息作者✈️IMEAE推荐内容1.家庭推内容 *** 点击即可查看作者要求内容信息作者✈️IMEAE推荐内容2.相册推 *** 点击即可查看作者要求内容信息作者✈️IMEAE推荐内容3.日历推 *** …

Rust软件外包开发语言的特点

Rust 是一种系统级编程语言&#xff0c;强调性能、安全性和并发性的编程语言&#xff0c;适用于广泛的应用领域&#xff0c;特别是那些需要高度可靠性和高性能的场景。下面和大家分享 Rust 语言的一些主要特点以及适用的场合&#xff0c;希望对大家有所帮助。北京木奇移动技术有…

人工智能学习框架—飞桨Paddle人工智能

1.人工智能框架 机器学习的三要素&#xff1a;模型、学习策略、优化算法。 当我们用机器学习来解决一些模式识别任务时&#xff0c;一般的流程包含以下几个步骤&#xff1a; 1.1.浅层学习和深度学习 浅层学习(Shallow Learning)&#xff1a;不涉及特征学习&#xff0c;其特征…

Vue3 setup中使用$refs

在 Vue 3 中的 Composition API 中&#xff0c;$refs 并不直接可用于 setup 函数。这是因为 $refs 是 Vue 2 的实例属性&#xff0c;而在 Vue 3 中&#xff0c;setup 函数是与模板实例分离的&#xff0c;不再使用实例属性。 实际工作中确实有需求&#xff0c;在setup 函数使用…

迪瑞克斯拉算法

迪锐克斯拉算法 简单来说就是在有向图中&#xff0c;给定一个图中具体的出发点&#xff0c;从这个点出发能够到达的所有的点&#xff0c;每个点的最短距离是多少。到不了的点&#xff0c;距离则是正无穷。有向&#xff0c;无负权重&#xff0c;可以有环。 所以说&#xff0c;迪…

流媒体服务-传输延时(SEI插帧)

什么是延时 很多小伙伴认为&#xff0c;当推流端和拉流端显示的时间不一致&#xff0c;即为延时。 其实这种看法是比较片面的&#xff0c;不同的播放器&#xff0c;对同一路流进行测试&#xff0c;可能会得到不同的结果。 一般来说&#xff0c;延时为以下几个部分的累加组成 …

【Android】解决Lint found fatal errors while assembling a release target

报错信息&#xff1a; Android在debug模式下打包没有问题&#xff0c;但是在打包release版本时出现一下问题&#xff1a; 结果图 原因 我项目的原因是因为把正式、测试地址放到代码里了&#xff0c;忘记选中正式环境的地址&#xff0c;导致打正式包有问题&#xff1b;大家如果…

复合 类型

字符串和切片 切片 切片的作用是允许你引用集合中部分连续的元素序列&#xff0c;而不是引用整个集合。 例如&#xff1a; let s String::from("hello world");let hello &s[0..5]; // 切片 [0,5) 等效于&s[..5] let world &s[6..11]; // 切片…

gitee上传一个本地项目到一个空仓库

gitee上传一个本地项目到一个空仓库 引入 比如&#xff0c;你现在本地下载了一个半成品的框架&#xff0c;现在想要把这个本地项目放到gitee的仓库上&#xff0c;这时就需要我们来做到把这个本地项目上传到gitee上了。 具体步骤 1. 登录码云 地址&#xff1a;https://gite…