2023/12/21作业

思维导图

代码

.text 
.global _start
_start: 
@灯1
    @gpio时钟使能  [4]->1 0x5000A28
    LDR     R0,=0x50000A28   @指定寄存器地址
    LDR     R1,[R0]@将寄存器取出放到R1
    ORR     R1,R1,#(0x1<<4)@将第四位设置为1
    STR     R1,[R0]@读取R0寄存器到R1

    @PE10为输出 [21:20]->01 0x50006000
    LDR    R0,=0X50006000
    LDR    R1,[R0]
    BIC    R1,R1,#(0x3<<20)
    ORR    R1,R1,#(0x1<<20)
    STR     R1,[R0]

    @PE10为推挽输出[10]->0 0x50006004
    LDR    R0,=0X50006004
    LDR    R1,[R0]
    BIC      R1,R1,#(0x1<<10)
    STR     R1,[R0]

    @PE10为低速输出 [21:20]->00 0x5006008
    LDR    R0,=0X50006008
    LDR    R1,[R0]
    BIC      R1,R1,#(0x3<<20)
    STR     R1,[R0]

    @PE10为无上下拉电阻 [21:20]->00 0x500600c
   LDR    R0,=0X5000600c
    LDR    R1,[R0]
    BIC      R1,R1,#(0x3<<20)
    STR     R1,[R0]
@灯2
   @gpio时钟使能  [4]->1 0x5000A28
    LDR     R0,=0x50000A28   @指定寄存器地址
    LDR     R1,[R0]@将寄存器取出放到R1
    ORR     R1,R1,#(0x1<<5)@将第五位设置为1
    STR     R1,[R0]@读取R0寄存器到R1

    @PE10为输出 [21:20]->01 0x50007000
    LDR    R0,=0X50007000
    LDR    R1,[R0]
    BIC    R1,R1,#(0x3<<20)
    ORR    R1,R1,#(0x1<<20)
    STR     R1,[R0]

    @PE10为推挽输出[10]->0 0x50007004
    LDR    R0,=0X50007004
    LDR    R1,[R0]
    BIC      R1,R1,#(0x1<<10)
    STR     R1,[R0]

    @PE10为低速输出 [21:20]->00 0x5007008
    LDR    R0,=0X50007008
    LDR    R1,[R0]
    BIC      R1,R1,#(0x3<<20)
    STR     R1,[R0]

    @PE10为无上下拉电阻 [21:20]->00 0x500700c
   LDR    R0,=0X5000700c
    LDR    R1,[R0]
    BIC      R1,R1,#(0x3<<20)
    STR     R1,[R0]
    
@灯3
    @gpio时钟使能  [4]->1 0x5000A28
      LDR     R0,=0x50000A28   @指定寄存器地址
    LDR     R1,[R0]@将寄存器取出放到R1
    ORR     R1,R1,#(0x1<<4)@将第四位设置为1
    STR     R1,[R0]@读取R0寄存器到R1

    @PE10为输出 [17:16]->01 0x50006000
    LDR    R0,=0X50006000
    LDR    R1,[R0]
    BIC      R1,R1,#(0x3<<16)
    ORR    R1,R1,#(0x1<<16)
    STR     R1,[R0]

    @PE10为推挽输出[8]->0 0x50006004
    LDR    R0,=0X50006004
    LDR    R1,[R0]
    BIC      R1,R1,#(0x1<<8)
    STR     R1,[R0]

    @PE10为低速输出 [17:16]->00 0x5006008
    LDR    R0,=0X50006008
    LDR    R1,[R0]
    BIC      R1,R1,#(0x3<<16)
    STR     R1,[R0]

    @PE10为无上下拉电阻 [17:16]->00 0x500600c
   LDR    R0,=0X5000600c
    LDR    R1,[R0]
    BIC      R1,R1,#(0x3<<16)
    STR     R1,[R0]

  flash:
     bl  led1_on
     bl  delay
     bl  led1_off
     bl   delay
     bl  led2_on
     bl  delay
     bl  led2_off
     bl  delay
     bl  led3_on
     bl  delay
     bl   led3_off
     bl  delay 
     bl  led1_on
     bl  led2_on
     bl  led3_on
     bl  delay
     bl  led1_off
     bl  led2_off
     bl  led3_off
     bl  delay
  b flash
@led1
  led1_on:
    @gpio[10]->1 0x50006014
    LDR R0,=0X50006014
    LDR  R1,[R0]
    ORR  R1,R1,#(0x1<<10)
    STR  R1,[R0]
    MOV PC,LR

led1_off:
    @gpio[10]->0 0x50006014
    LDR R0,=0X50006014
    LDR  R1,[R0]
     BIC  R1,R1,#(0x1<<10)
    STR  R1,[R0]
    MOV PC,LR
@led2
 led2_on:
    @gpio[10]->1 0x50007014
    LDR R0,=0X50007014
    LDR  R1,[R0]
    ORR  R1,R1,#(0x1<<10)
    STR  R1,[R0]
    MOV PC,LR

led2_off:
    @gpio[10]->0 0x50007014
    LDR R0,=0X50007014
    LDR  R1,[R0]
    BIC  R1,R1,#(0x1<<10)
    STR  R1,[R0]
    MOV PC,LR
@led3
 led3_on:
    @gpio[10]->1 0x50006014
    LDR R0,=0X50006014
    LDR  R1,[R0]
    ORR  R1,R1,#(0x1<<8)
    STR  R1,[R0]
    MOV PC,LR
led3_off:
    @gpio[10]->0 0x50006014
    LDR R0,=0X50006014
    LDR  R1,[R0]
     BIC  R1,R1,#(0x1<<8)
    STR  R1,[R0]
    MOV PC,LR     

delay:
LDR R3,=0X10000000

mm:
  cmp r3,#0
  subne r3,r3,#1
  bne mm
  mov pc,lr
.end
 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【开源软件】最好的开源软件-2023-第二名: Podman

自我介绍 做一个简单介绍&#xff0c;酒架年近48 &#xff0c;有20多年IT工作经历&#xff0c;目前在一家500强做企业架构&#xff0e;因为工作需要&#xff0c;另外也因为兴趣涉猎比较广&#xff0c;为了自己学习建立了三个博客&#xff0c;分别是【全球IT瞭望】&#xff0c;【…

vue3 在vite.config中无法使用import.meta.env.*的解决办法

第一种,优先使用第一种方法,其中参数mode就是自定义--mode的值,如果没写,就是production或development import { loadEnv } from vite export default ({ mode }) > {return defineConfig({plugins: [vue()],base:loadEnv(mode, process.cwd()).VITE_APP_NAME}) } 第二种 …

鸿蒙开发基本概念

1、开发准备 1.1、UI框架 HarmonyOS提供了一套UI开发框架&#xff0c;即方舟开发框架&#xff08;ArkUI框架&#xff09;。方舟开发框架可为开发者提供应用UI开发所必需的能力&#xff0c;比如多种组件、布局计算、动画能力、UI交互、绘制等。 方舟开发框架针对不同目的和技术…

◢Django md5加密与中间件middleware

utils文件夹是重新建立的&#xff08;与migrations同级&#xff09;&#xff0c;该文件夹下主要存放工具&#xff0c;就像static文件夹下只存放静态文件一样 加密 在utils文件夹下建立encrypt.py文件 from django.conf import settings import hashlib def md5(data_string)…

一个正则快速找到在ES中使用profile的时产生慢查询的分片

在es中使用profile分析慢查询的时候&#xff0c;往往因为分片过多&#xff0c;或者因为查询条件太复杂&#xff0c;分析的结果几十万行。在kibana上点半天&#xff0c;也找不到一个耗时长的分片。 kibana上可以通过正则来匹配。其实我们只需要匹配到耗时大于10秒的请求。 检索语…

yolo-nas无人机高空红外热数据小目标检测(教程+代码)

前言 YOLO-NAS是目前最新的YOLO目标检测模型。从一开始&#xff0c;它就在准确性方面击败了所有其他 YOLO 模型。与之前的 YOLO 模型相比&#xff0c;预训练的 YOLO-NAS 模型能够以更高的准确度检测更多目标。但是我们如何在自定义数据集上训练 YOLO NAS&#xff1f; 这将是我…

多媒体信息化建设,动态数据中心,深入理解分布式系统

目录 一、前言二、双活数据中心三、数据备份方式四、设计双活数据中心需要考虑的问题1、延迟和稳定性2、Quorum/ Tie-Breaker3、工作负载 五、动态数据中心六、深入理解分布式系统1、内容介绍2、作者简介 大家好&#xff0c;我是哪吒。 文末送5本《深入理解分布式系统》 一、…

CentOS:Docker容器中安装vim

在使用docker容器时&#xff0c;里边没有安装vim时&#xff0c;敲vim命令时提示说&#xff1a;vim: command not found 这个时候就须要安装vim&#xff0c;安装命令&#xff1a; apt-get install vim 出现以下错误&#xff1a; 解决方法&#xff1a; apt-get update 这个命令的…

LabVIEW的六轴工业机器人运动控制系统

LabVIEW开发六轴工业机器人运动控制系统 本项目开发了一个高效的工业机器人控制系统&#xff0c;重点关注于运动学算法和轨迹规划算法的实现和测试。LabVIEW作为一个关键技术&#xff0c;在项目中扮演了核心角色。 系统研究与算法开发&#xff1a;首先&#xff0c;项目围绕机…

棱镜七彩获工业和信息化部电子第五研究所感谢信

近日&#xff0c;工业和信息化部电子第五研究所&#xff08;以下简称“工信部电子五所”&#xff09;发来一封感谢信&#xff0c;对棱镜七彩在系统研发及运维保障工作中做出的贡献表示感谢。 图 工业和信息化部电子第五研究所感谢信 服务保障平台和赛宝优选平台应用解决方案征…

计算机网络-网络协议

一、TCP/IP协议 作为一个小萌新&#xff0c;当然我无法将tcp/ip协议的大部分江山和盘托出&#xff0c;但是其中很多面试可能问到的知识&#xff0c;我觉得有必要总结一下&#xff01; 首先&#xff0c;在学习tcp/ip协议之前&#xff0c;我们必须搞明白什么是tcp/ip协议。 1、…

合伙企业对外投资收益怎么纳税?

根据合伙企业的税收政策&#xff0c;合伙企业对外投资收益的纳税问题需要根据投资所得的性质进行分类处理。 首先&#xff0c;如果合伙企业对外投资获得的收益属于股息、红利、利息等被动收入&#xff0c;那么这些收入需要按照个人所得税法中的“利息、股息、红利所得”进行纳税…

【蓝桥杯】树的重心

树的重心 图的dfs模板 int dfs(int u) {st[u]true;for(int ih[u];i!-1;ine[i]){int je[i];if(!st[j]){dfs(j);}} }树是这样的。 邻接表&#xff1a; 1: 4->7->2->-1 2: 5->8->1->-1 3: 9->4->-1 4: 6->3->1->-1 5: 2->-1 6: 4->-1 7…

【数据库】函数依赖

什么是函数依赖 就是在具体的表中/问题中&#xff0c;哪个属性决定另外几个属性。 A属性值相同的时候&#xff0c;能否决定唯一的B U {学号&#xff0c;姓名&#xff0c;年龄&#xff0c;班号&#xff0c;班长&#xff0c;课号&#xff0c;成绩} 就有&#xff1a; ‘学号’ 决…

【数组Array】力扣-1094 拼车

目录 题目描述 解题过程 题目描述 车上最初有 capacity 个空座位。车 只能 向一个方向行驶&#xff08;也就是说&#xff0c;不允许掉头或改变方向&#xff09; 给定整数 capacity 和一个数组 trips , trip[i] [numPassengersi, fromi, toi] 表示第 i 次旅行有 numPassen…

【Netty】NIO与Netty核心概念

目录 NIO编程NIO介绍NIO和BIO的比较缓冲区(Buffer)基本介绍常用API缓冲区对象创建添加数据读取数据 通道(Channel)基本介绍Channel常用类ServerSocketChannelSocketChannel Selector (选择器)基本介绍常用API介绍示例代码 NIO 三大核心原理 Netty核心概念Netty 介绍原生 NIO 存…

机器视觉运动控制一体机在喇叭跟随点胶上的应用

市场应用背景 点胶是通过使用多种粘合剂&#xff0c;实现产品密封、绝缘、导热和耐腐蚀等作用&#xff0c;可应用于多类产品的生产制造场景&#xff0c;例如3C消费电子、汽车新能源、光伏和半导体等领域。 点胶是喇叭生产过程中必不可少一道工艺&#xff0c;音圈是扬声器的重…

铸就安全可信的数字化「信息枢纽」—华为云ROMA Connect荣膺软件产品可信【卓越级】认证

近日&#xff0c;在工业和信息化部电子第五研究所组织的软件产品可信评估中&#xff0c;华为云ROMA Connect在基线合规、渗透测试、产品可靠性、软件工程化、隐私合规、代码自研率检测、产品质量、开源治理8大方面通过严格评测&#xff0c;获得代表软件产品可信最高水平的「卓越…

亲测有效:导入下载starter-canal 依赖

第一步&#xff1a; 前往 https://github.com/chenqian56131/spring-boot-starter-canal 下载zip文件&#xff0c;解压到自己的maven仓库 第二步&#xff1a;下载完成进入项目根目录starter-canal 中 &#xff0c;在文件管理器地址栏输入cmd&#xff0c;进入到cmd窗口&#x…

22 Vue3中使用v-for遍历对象

概述 使用v-for遍历对象在真实的开发中比较少见&#xff0c;了解即可。 对象我更喜欢统一称之为字典&#xff0c;假如你哪天发现我在某个前端的教程中把对象叫做字典&#xff0c;请你知道这两个是同一个玩意儿。 所谓字典&#xff0c;就是一种key-value类型的结构的统称。 …