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

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
 

相关文章:

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 PE…...

Python 数据类型 (2)

1 集合类型&#xff1a;一维数组的集合 List列表是一个有序且可变的集合。允许重复成员。 turple元组是一个有序且不可更改的集合。允许重复成员。 Set集合是一个无序且无索引的集合。没有重复的成员。 dict字典是一个有序*且可变的集合。没有重复的成员。 &#xff01;&#x…...

【教程】自动检测和安装Python脚本依赖的第三方库

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] 背景说明 对于新python环境&#xff0c;要运行某个脚本&#xff0c;可能需要安装很多库&#xff0c;一般可以通过提供的requirements.txt来自动安装。但如果没有这个txt&#xff0c;那就得手动一个一个安装&#…...

0开始配置Cartographer建图和导航定位

0开始配置Cartographer 日期&#xff1a;12-19 硬件&#xff1a;激光雷达IMU 小车的tf变换&#xff1a; 建图配置 lua文件配置&#xff1a;my_robot.lua include "map_builder.lua" include "trajectory_builder.lua"options {map_builder MAP_BUILDE…...

Python中使用SQLite数据库的方法2-2

3.3.2 创建表单及字段 通过“3.2 创建Cursor类的对象”中创建的Cursor类的对象cur创建表单及字段&#xff0c;代码如图5所示。 图5 创建表单及字段 从图5中可以看出&#xff0c;通过Cursor类的对象cur调用了Cursor类的execute()方法来执行SQL语句。该方法的参数即为要指定的S…...

零代码也能玩出花:Mugeda在H5设计中的魔法力量

文章目录 一、Mugeda零代码可视化H5设计工具简介二、Mugeda零代码可视化H5设计实战案例1. 注册并登录Mugeda账号2. 选择模板3. 编辑页面内容4. 添加动画效果5. 预览和发布 三、Mugeda零代码可视化H5设计的优势《Mugeda零代码可视化H5设计实战》内容简介作者简介目录前言/序言 随…...

分布式、CAP 和 BASE 理论

在计算机科学领域&#xff0c;分布式系统是一门极具挑战性的研究方向&#xff0c;也是互联网应用中必不可少的优化实践&#xff0c;而 CAP 理论和 BASE 理论则是分布式系统中的两个关键的概念。 什么是分布式系统 首先&#xff0c;让我们来谈谈分布式系统。你可以将分布式系统…...

django之drf框架(两个视图基类、5个扩展视图类、9个视图子类)

两个视图基类 APIView和GenericAPIView drf提供的最顶层的父类就是APIView&#xff0c;以后所有的类都继承自他 GenericAPIView继承自APIView&#xff0c;他里面封装了一些工能 基于APIViewModelSerializerResposne写5个接口 子路由&#xff1a;app01>>>urls.py …...

23种设计模式学习

设计模式的分类 总体来说设计模式分为三大类&#xff1a; 创建型模式&#xff0c;共五种&#xff1a;工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式&#xff0c;共七种&#xff1a;适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合…...

php 8.4 xdebug扩展编译安装方法

最新版php8.4 xdebug扩展只能通过编译方式安装, pecl是安装不了的, 编译方法如下 下载最新版xdebug git clone https://github.com/xdebug/xdebug.git 却换入xdebug目录执行编译安装xdebug cd xdebug phpize./configure --enable-xdebugmakemake install3. 配置启用xdebug 这…...

66biolinks v42.0.0 已注册 – 生物短链接、URL 缩短器、QR 码和 Web 工具 (SAAS) 源码

66biolinks v42.0.0&#xff1a;全能生物短链接与网络工具平台 一、开篇介绍 66biolinks v42.0.0是一款集生物链接、URL缩短器、二维码和网络工具于一体的综合性软件解决方案。作为社交生物链接平台的佼佼者&#xff0c;66biolinks提供了全方位的功能&#xff0c;旨在满足用户…...

《Vue2.X 进阶知识点》- 防 ElementUI Divider 分割线

前言 使用 el-divider 背景为白色是没问题的。 但当背景换成其它颜色&#xff0c;问题就出现了&#xff01;&#xff01; 仔细看原来是两层&#xff0c;默认背景色是白色。 想着把背景色改为透明应该能用&#xff0c;结果发现背面是一条实线&#xff0c;难怪要用白色遮挡…不符…...

【第十二课】KMP算法(acwing-831 / c++代码 / 思路 / 视频+博客讲解推荐)

目录 暴力做法 代码如下 KMP算法 不同的next求法-----视频讲解/博客推荐 视频推荐 博客推荐 课本上的方法- prefix的方法- 求next数组思路---next数组存放前缀表的方式 s和p匹配思路 代码如下 暴力做法 遍历s主串中每一个元素&#xff0c;如果该元素等于模板串p中…...

JSON 简介

JSON是什么&#xff1f;(了解) JSON&#xff08;JavaScript Object Notation&#xff09;是一种轻量级的数据交换格式&#xff0c;常用于Web应用程序之间的数据传输。 JSON格式是一种文本格式&#xff0c;用于描述数据的结构和内容。它由两种基本元素组成&#xff1a;键值对和…...

Impala4.x源码阅读笔记(三)——Impala如何管理Iceberg表元数据

前言 本文为笔者个人阅读Apache Impala源码时的笔记&#xff0c;仅代表我个人对代码的理解&#xff0c;个人水平有限&#xff0c;文章可能存在理解错误、遗漏或者过时之处。如果有任何错误或者有更好的见解&#xff0c;欢迎指正。 上一篇文章Impala4.x源码阅读笔记&#xff0…...

Ubuntu2204配置samba

0.前情说明 samba服务器主要是用来局域网共享文件的&#xff0c;如果想公网共享可能行不通&#xff0c;我已经踩坑一天了 所以说如果你想满足公网samba共享你就可以不要看下去了 1.参考连接 Ubuntu 安装 Samba 服务器_ubuntu安装samba服务器-CSDN博客 2.安装samba服务 sud…...

AVL树(超详解)

文章目录 前言AVL树的概念AVL树的实现定义AVL树insert 单旋左单旋右单旋左单旋代码右单旋代码 双旋左右双旋右左双旋 测试AVL树的性能 前言 AVL树是怎么来的呢&#xff1f; 我们知道搜索二叉树会存在退化问题&#xff0c;退化以后就变成单支或者接近单支。 它的效率就变成O(N)…...

禁止浏览器记住密码和自动填充 element-ui+vue

vue 根据element-ui 自定义密码输入框&#xff0c;防止浏览器 记住密码和自动填充 <template><divclass"el-password el-input":class"[size ? el-input-- size : , { is-disabled: disabled }]"><inputclass"el-input__inner"…...

K8s实战-init容器

概念&#xff1a; 初始化容器的概念 比如一个容器A依赖其他容器&#xff0c;可以为A设置多个 依赖容易A1&#xff0c;A2&#xff0c;A3 A1,A2,A3要按照顺序启动&#xff0c;A1没有启动启动起来的 话&#xff0c;A2,A3是不会启动的&#xff0c;直到所有的静态容器全 部启动完毕…...

Vue3.2 自定义指令详解与实战

一、介绍 在Vue3中&#xff0c;自定义指令为开发者提供了一种灵活的方式来扩展Vue的HTML模板语法&#xff0c;使其能够执行特定的DOM操作或组件逻辑。不同于Vue2.x中的全局和局部指令注册方式&#xff0c;Vue3引入了Composition API&#xff0c;这使得自定义指令的编写和使用更…...

2026年03月27日全球AI前沿动态

一句话总结AI领域覆盖通用/垂直大模型、智能体应用、物理机器人、硬件算力、企业战略、产品更新、投融资、行业观点、民生教育、研究资源全维度&#xff0c;国产技术密集突破、智能体全面落地、硬件自研提速、安全风险频发、老年AI教育落地&#xff0c;行业向实用化、国产化、安…...

【JavaWeb开发】从零构建前后端交互实战指南

1. JavaWeb前后端交互基础入门 第一次接触JavaWeb开发时&#xff0c;最让我困惑的就是前后端如何传递数据。记得刚开始做项目时&#xff0c;我傻乎乎地用字符串拼接HTML代码返回给前端&#xff0c;结果遇到中文乱码问题折腾了一整天。后来才发现&#xff0c;现代JavaWeb开发早已…...

VS Code终端切换全攻略:从PowerShell到CMD的保姆级教程(含常见问题解决)

VS Code终端切换全攻略&#xff1a;从PowerShell到CMD的保姆级教程&#xff08;含常见问题解决&#xff09; 在开发者的日常工作中&#xff0c;终端是不可或缺的工具。VS Code作为最受欢迎的代码编辑器之一&#xff0c;其内置终端功能强大且高度可定制。然而&#xff0c;许多开…...

终极指南:掌握JSON-BigInt解决JavaScript大整数精度丢失问题

终极指南&#xff1a;掌握JSON-BigInt解决JavaScript大整数精度丢失问题 【免费下载链接】json-bigint JSON.parse/stringify with bigints support 项目地址: https://gitcode.com/gh_mirrors/js/json-bigint 在JavaScript开发中&#xff0c;你是否遇到过处理大整数时精…...

SEER‘S EYE模型辅助计算机组成原理教学:概念可视化与问答

SEERS EYE模型辅助计算机组成原理教学&#xff1a;概念可视化与问答 计算机组成原理这门课&#xff0c;对很多学生来说&#xff0c;就像在学一门“外星语”。CPU、寄存器、流水线、缓存……这些词听起来就够抽象的&#xff0c;更别说理解它们是怎么协同工作的了。传统的教学方…...

颠覆传统系统管理的轻量级工具:NSudo如何重新定义权限操作

颠覆传统系统管理的轻量级工具&#xff1a;NSudo如何重新定义权限操作 【免费下载链接】NSudo [Deprecated, work in progress alternative: https://github.com/M2Team/NanaRun] Series of System Administration Tools 项目地址: https://gitcode.com/gh_mirrors/ns/NSudo …...

深入对比:在Vivado中设计异步复位、同步复位和带使能D触发器的实战差异与选型建议

深入对比&#xff1a;在Vivado中设计异步复位、同步复位和带使能D触发器的实战差异与选型建议 当你在设计一个状态机或数据流水线时&#xff0c;是否曾为选择哪种D触发器而犹豫不决&#xff1f;异步复位、同步复位还是带使能的D触发器&#xff0c;每种设计都有其独特的应用场景…...

OpenClaw 底层原理分析

OpenClaw 底层原理深度分析 OpenClaw 是一个智能体编排平台,它的核心设计哲学是 “模型无关、工具优先、记忆驱动”。让我从架构、数据流、核心机制三个维度为你拆解。 🏗️ 一、整体架构 OpenClaw 采用 分层解耦 架构,可以理解为“AI 操作系统”: text ┌──────…...

如何高效配置Unity插件框架:BepInEx完整实战指南

如何高效配置Unity插件框架&#xff1a;BepInEx完整实战指南 【免费下载链接】BepInEx Unity / XNA game patcher and plugin framework 项目地址: https://gitcode.com/GitHub_Trending/be/BepInEx BepInEx是一款专为Unity游戏设计的插件框架和补丁工具&#xff0c;能够…...

Win11Debloat:终极Windows系统清理工具,一键提升电脑性能的完整指南

Win11Debloat&#xff1a;终极Windows系统清理工具&#xff0c;一键提升电脑性能的完整指南 【免费下载链接】Win11Debloat 一个简单的PowerShell脚本&#xff0c;用于从Windows中移除预装的无用软件&#xff0c;禁用遥测&#xff0c;从Windows搜索中移除Bing&#xff0c;以及执…...