day58:ARMday5,GPIO流水灯实验

汇编指令:

.text 
.global _start
_start: 
@1.设置GPIOE GPIOF寄存器的时钟使能 RCC_MP_AHB4ENSETR[5:4]->1 	0x50000a28
LDR R0,=0x50000a28
LDR R1,[R0]
ORR R1,R1,#(0x3<<4)
STR R1,[R0]@2.设置PE10、PF10、PE8管脚为输出模式,GPIOE_MODER[21:20]->01 	0x50006000
LDR R0,=0x50006000
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
ORR R1,R1,#(0x1<<20)
BIC R1,R1,#(0x3<<16)
ORR R1,R1,#(0x1<<16)
STR R1,[R0]LDR R0,=0x50007000
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
ORR R1,R1,#(0x1<<20)
STR R1,[R0]@3.设置PE10、PF10、PE8管脚为推挽输出,GPIOE_OTYPER[10]->0 	0x50006004
LDR R0,=0x50006004
LDR R1,[R0]
BIC R1,R1,#(0x1<<10)
BIC R1,R1,#(0x1<<8)
STR R1,[R0]LDR R0,=0x50007004
LDR R1,[R0]
BIC R1,R1,#(0x1<<10)
STR R1,[R0]@4.设置PE10、PF10、PE8管脚为低速输出,GPIO_OSPEEDR[21:20]->00 	0x50006008
LDR R0,=0x50006008
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
BIC R1,R1,#(0x3<<16)
STR R1,[R0]LDR R0,=0x50007008
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
STR R1,[R0]@5.设置PE10、PF10、PE8管脚为不设置上拉下拉模式,GPIOE_PUPDR[21:20]->00 	0x5000600c
LDR R0,=0x5000600c
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
BIC R1,R1,#(0x3<<16)
STR R1,[R0]LDR R0,=0x5000700c
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)
STR R1,[R0]@6.设置PE10、PF10、PE8管脚为高低电平,GPIOE_ODR[10]->1/0 	0x50006014@GPIOF_ODR[10]->1/0 	0x50007014@GPIOE_ODR[8]->1/0 		0x50006014
loop:@LD1亮LDR R0,=0x50006014LDR R1,[R0]ORR R1,R1,#(0x1<<10)STR R1,[R0]BL delay@LD1灭LDR R0,=0x50006014LDR R1,[R0]BIC R1,R1,#(0x1<<10)STR R1,[R0]@LD2亮LDR R0,=0x50007014LDR R1,[R0]ORR R1,R1,#(0x1<<10)STR R1,[R0]BL delay@LD2灭LDR R0,=0x50007014LDR R1,[R0]BIC R1,R1,#(0x1<<10)STR R1,[R0]@LD3亮LDR R0,=0x50006014LDR R1,[R0]ORR R1,R1,#(0x1<<8)STR R1,[R0]BL delay@LD3灭LDR R0,=0x50006014LDR R1,[R0]BIC R1,R1,#(0x1<<8)STR R1,[R0]b loopdelay:LDR R4,=0x10000000
mm:cmp r4,#0subne r4,r4,#1bne mmmov pc,lr @程序返回.end

实验现象:

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

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

相关文章

常见SQL错误用法案例和总结

1. LIMIT 语句 分页查询是最常用的场景之一&#xff0c;但也通常也是最容易出问题的地方。比如对于下面简单的语句&#xff0c;一般DBA想到的办法是在type, name, create_time字段上加组合索引。这样条件排序都能有效的利用到索引&#xff0c;性能迅速提升。 SELECT * FROM …

Jenkins+Allure+Pytest的持续集成

一、配置 allure 环境变量 1、下载 allure是一个命令行工具&#xff0c;可以去 github 下载最新版&#xff1a;https://github.com/allure-framework/allure2/releases 2、解压到本地 3、配置环境变量 复制路径如&#xff1a;F:\allure-2.13.7\bin 环境变量、Path、添加 F:\a…

华为C语言编程规范(2W字总结)

1、代码总体原则 1、清晰第一 清晰性是易于维护、易于重构的程序必需具备的特征。代码首先是给人读的&#xff0c;好的代码应当可以像文章一样发声朗诵出来。 目前软件维护期成本占整个生命周期成本的40%~90%。根据业界经验&#xff0c;维护期变更代码的成本&#xff0c;小型…

全栈开发笔记1:首个项目的收获

本文为编程导航实战项目学习笔记。 文章目录 7.跨域问题解决 2023.10.26.项目部署 2023.10.15.统一处理返回值 2023.10.14.开发注册和用户管理 2023.09303.开发登陆注册接口 2023.09.172.数据库设计1.前后端初始化 2023.9.16 7.跨域问题解决 2023.10.2 三种方式&#xff1a; …

用c语言实现静态通讯录

思路&#xff1a; 将代码分成三个模块&#xff0c;头文件contact.h&#xff1a;声明函数&#xff0c;定义结构体 test.c测试类&#xff0c;contact.c用来实现通讯录中的函数功能 1.打印菜单&#xff0c;让用户进行选择 2.定义一个结构体PeoInfo&#xff0c;其中包含联系人的…

OCR让点读笔如虎添翼

点读笔是一种智能学习工具&#xff0c;它可以通过识别文字来提供相应的语音或图像反馈。在实现文字识别功能时&#xff0c;点读笔通常会借助OCR&#xff08;Optical Character Recognition&#xff0c;光学字符识别&#xff09;技术。下面将详细介绍点读笔如何利用OCR技术实现文…

【Spring Cloud系统】- Zookeer特性与使用场景

【Spring Cloud系统】- Zookeer特性与使用场景 一、概述 Zookeeper是一个分布式服务框架&#xff0c;是Apache Hadoop的一个子项目&#xff0c;它主要是用来解决分布式应用中经常遇到的一些数据管理问题。如&#xff1a;统一命名服务、状态同步服务、集群管理、分布式应用配置…

Python的logging模块Demo

Tip&#xff1a;默认情况下&#xff0c;logging模块不会自动地将日志存储到某个特定路径&#xff0c;除非你指定了该路径。你需要创建一个FileHandler&#xff0c;然后为其设置一个文件路径&#xff0c;这样日志就会被写入到该文件中。 以下是一个简单的例子&#xff0c;展示如…

Android开发入门技能(Java)

Android开发入门技能 一些流行的框架和库 安卓开发中有许多主流框架和库&#xff0c;它们可以帮助开发者更轻松地构建功能强大、高效和可维护的应用程序。以下是一些主要的安卓开发框架和库&#xff1a; Android Jetpack&#xff1a;Android Jetpack是官方提供的一套库和工具…

基于AlexNet深度学习网络的智能垃圾分类系统matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1、基于AlexNet深度学习网络的智能垃圾分类系统概述 4.2、基于AlexNet深度学习网络的智能垃圾分类系统主要原理 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab20…

【CSS】Tailwind CSS

直接参考 Tailwind CSS 安装提供了四种方式。因为我常用构建工具搭建项目&#xff0c;所以选择 Using PostCSS 。 其中 tailwind.config.js 的配置可以改为&#xff1a; module.exports {content: [./index.html, ./src/**/*.{vue,js,ts,jsx,tsx}],theme: {extend: {},},pl…

在宝塔面板环境下安装nps服务端

在宝塔面板环境下安装nps服务端 一、所需环境二、开始安装三、打开nps控制台四、更改默认账号密码和连接秘钥五、反向代理挂载SSL证书 一、所需环境 阿里云轻应用服务器&#xff08;选择宝塔应用镜像&#xff09;域名&#xff08;最好也是阿里注册的域名&#xff09;对应的ssl…

echarts的bug,在series里写tooltip,不起作用,要在全局先写tooltip:{}才起作用,如果在series里写的不起作用就写到全局里

echarts的bug&#xff0c;在series里写tooltip&#xff0c;不起作用&#xff0c;要在全局先写tooltip&#xff1a;{show:true}才起作用&#xff0c;如果在series里写的不起作用就写到全局里 series里写tooltip不起作用&#xff0c;鼠标悬浮在echarts图表上时不显示提示 你需要…

聊聊分布式架构01——http通信基础

目录 web通信的简单结构 网络通信基础TCP/IP TCP/IP 通信传输流 HTTP中的三剑客 负责传输的IP协议 确保可靠性的TCP协议 SYN攻击&#xff08;SYN Flood Attack&#xff09; 四次挥手 负责域名解析的DNS服务 基于 TCP 协议实现通信 TCP 协议的通信过程 Web通信的简单…

LinkedBlockingQueue:Java并发编程的强大工具

LinkedBlockingQueue&#xff1a;Java并发编程的强大工具 在Java并发编程中&#xff0c;LinkedBlockingQueue是一个非常重要的数据结构&#xff0c;它是一个线程安全的队列&#xff0c;能够有效地管理和控制多线程环境中的任务。本文将介绍LinkedBlockingQueue的工作原理、应用…

基于PSD-ML算法的语音增强算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 1.加窗处理&#xff1a; 2.分帧处理&#xff1a; 3.功率谱密度估计&#xff1a; 4.滤波处理&#xff1a; 5.逆变换处理&#xff1a; 6.合并处理&#xff1a; 5.算法完整程序工程 1.算法…

visual studio解决bug封装dll库

1.速度最大化 O2 2.设置输出目录 配置属性/常规/输出目录 链接器/常规/输出dll文件 链接器/调试/输出程序数据库pdb文件 链接器/高级/导入库 3.输出X86 X64分别对应的dll、lib、pdb 然后修改更新说明 更新说明格式如下&#xff1a; 4.将库提交到FTP每日更新库文档下 和测试交接…

docker入门加实战—docker安装并配置阿里云加速

docker入门加实战—docker安装并配置阿里云加速 为什么要学习docker 在开发和部署项目的过程中&#xff0c;经常会遇到如下问题&#xff1a; 软件安装包名字复杂&#xff0c;不知道去哪里找安装软件和部署项目步骤复杂&#xff0c;容易出错 这就是我们今天要学习Docker技术…

idea如何拷贝maven中所引用的所有jar

要拷贝 Maven 中引用的所有 JAR 文件&#xff0c;可以使用 Maven 提供的命令行工具和插件。以下是一些步骤供您参考&#xff1a; 确保已经在本地安装了 Maven。 在命令行中进入包含 Maven 项目的根目录。 运行以下命令&#xff0c;将项目构建到本地仓库&#xff1a; mvn clea…

千兆以太网传输层 UDP 协议原理与 FPGA 实现(UDP接收)

文章目录 前言心得体会一、 UDP 协议简单回顾二、UDP接收实现三、完整代码展示四、仿真测试(1)模拟电脑数据发送,(2)测试顶层文件编写(3)仿真文件(4)仿真波形前言 在前面我们对以太网 UDP 帧格式做了讲解,UDP 帧格式包括前导码+帧界定符、以太网头部数据、IP 头部数…