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

【嵌入式学习】ARM day04.11

一、思维导图

二、练习

实现三个灯闪烁

汇编代码

.text 
.global _start
_start: @使能GPIOE和F时钟LDR     r0,=0x50000A28LDR      r1,[R0]ORR     R1,R1,#(0X3<<4)STR      R1,[R0]@配置GPIOE和F的MODER寄存器LDR     r0,=0x50006000   @GPIOELDR     R1,=0X50007000   @GPIOFLDR      R2,[R0]BIC       R2,R2,#(0X3<<20)BIC       R2,R2,#(0X3<<16)ORR     R2,R2,#(0X1<<20)ORR     R2,R2,#(0X1<<16)STR      R2,[R0]LDR      R2,[R1]BIC       R2,R2,#(0X3<<20)ORR     R2,R2,#(0X1<<20)STR      R2,[R1]@配置GPIOE和F的OTYPER寄存器LDR     r0,=0x50006004   @GPIOELDR     R1,=0X50007004   @GPIOFLDR      R2,[R0]BIC       R2,R2,#(0X1<<10)BIC       R2,R2,#(0X1<<8)STR      R2,[R0]LDR      R2,[R1]BIC       R2,R2,#(0X1<<10)STR      R2,[R1]@配置GPIOE和F的OSPEEDR寄存器LDR     r0,=0x50006008   @GPIOELDR     R1,=0X50007008   @GPIOFLDR      R2,[R0].text 
.global _start
_start: @使能GPIOE和F时钟LDR     r0,=0x50000A28LDR      r1,[R0]ORR     R1,R1,#(0X3<<4)STR      R1,[R0]@配置GPIOE和F的MODER寄存器LDR     r0,=0x50006000   @GPIOELDR     R1,=0X50007000   @GPIOFLDR      R2,[R0]BIC       R2,R2,#(0X3<<20)BIC       R2,R2,#(0X3<<16)ORR     R2,R2,#(0X1<<20)ORR     R2,R2,#(0X1<<16)STR      R2,[R0]LDR      R2,[R1]BIC       R2,R2,#(0X3<<20)ORR     R2,R2,#(0X1<<20)STR      R2,[R1]@配置GPIOE和F的OTYPER寄存器LDR     r0,=0x50006004   @GPIOELDR     R1,=0X50007004   @GPIOFLDR      R2,[R0]BIC       R2,R2,#(0X1<<10)BIC       R2,R2,#(0X1<<8)STR      R2,[R0]BIC       R2,R2,#(0X3<<20)BIC       R2,R2,#(0X3<<16)STR      R2,[R0]LDR      R2,[R1]BIC       R2,R2,#(0X3<<20)STR      R2,[R1]@配置GPIOE和F的PUPDR寄存器LDR     r0,=0x5000600C   @GPIOELDR     R1,=0X5000700C   @GPIOFLDR      R2,[R0]BIC       R2,R2,#(0X3<<20)BIC       R2,R2,#(0X3<<16)STR      R2,[R0]LDR      R2,[R1]BIC       R2,R2,#(0X3<<20)STR      R2,[R1]
LOOP:BL  LED_ONBL  DELAYBL  LED_OFFBL  DELAYB  LOOPLED_ON:@GPIOELDR     r0,=0x50006014LDR      r1,[R0]ORR      R1,R1,#(0X1<<10)ORR      R1,R1,#(0X1<<8)STR      R1,[R0]@GPIOFLDR     r0,=0x50007014LDR      r1,[R0]ORR      R1,R1,#(0X1<<10)STR      R1,[R0]MOV PC,LRLED_OFF:@GPIOELDR     R0,=0x50006014LDR      R1,[R0]BIC      R1,R1,#(0X1<<10)BIC      R1,R1,#(0X1<<8)STR      R1,[R0]@GPIOFLDR     r0,=0x50007014LDR      r1,[R0]BIC      R1,R1,#(0X1<<10)STR      R1,[R0]MOV PC,LRDELAY:LDR R3,=0X10000000
MM:CMP R3,#0SUBNE R3,R3,#1BNE MMMOV PC,LR
.end

Makefile 

NAME=asm-led
CROSS_COMPILE = arm-linux-gnueabihf-CC = $(CROSS_COMPILE)gccLD = $(CROSS_COMPILE)ld
OBJCOPY = $(CROSS_COMPILE)objcopy
OBJDUMP = $(CROSS_COMPILE)objdumpall:$(CC) -O0 -g -c $(NAME).S -o $(NAME).o$(LD) -Ttext=0xC0008000 $(NAME).o -o $(NAME).elf $(OBJCOPY) -O binary $(NAME).elf  $(NAME).bin$(OBJDUMP) -D $(NAME).elf > $(NAME).dis
clean:rm -rf *.elf *.bin *.o *.disinstall:sudo cp $(NAME).bin  /mnt/hgfs/share/

相关文章:

【嵌入式学习】ARM day04.11

一、思维导图 二、练习 实现三个灯闪烁 汇编代码 .text .global _start _start: 使能GPIOE和F时钟LDR r0,0x50000A28LDR r1,[R0]ORR R1,R1,#(0X3<<4)STR R1,[R0]配置GPIOE和F的MODER寄存器LDR r0,0x50006000 GPIOELDR R1,0X50007000 G…...

关于部署ELK和EFLKD的相关知识

文章目录 一、ELK日志分析系统1、ELK简介1.2 ElasticSearch1.3 Logstash1.4 Kibana&#xff08;展示数据可视化界面&#xff09;1.5 Filebeat 2、使用ELK的原因3、完整日志系统的基本特征4、ELK的工作原理 二、部署ELK日志分析系统1、服务器配置2、关闭防火墙3、ELK ElasticSea…...

ChatGPT智能写作:开启论文写作新视野

ChatGPT无限次数:点击直达 html ChatGPT智能写作&#xff1a;开启论文写作新视野 引言 在当今信息爆炸的时代&#xff0c;人们需要更有效的工具来帮助他们在各种领域进行写作。ChatGPT作为一项基于人工智能技术的顶尖产品&#xff0c;为论文写作提供了全新的视角和可能性。…...

网络安全---RSA公钥加密与签名

实验项目&#xff1a;RSA公钥加密与签名实验 1.实验目的 本实验的学习目标是让学生获得 RSA 算法的动手经验。 通过课堂学习&#xff0c;学生应该已经了解 RSA 算法的理论部分&#xff0c; 知道在数学上如何生成公钥、私钥以及如何执行加密、解密和签名生成、验证。 通过使用…...

李白打酒加强版 -- 题解 c++

题目链接 : 4408. 李白打酒加强版 - AcWing题库 用户登录 二进制搜索 只能过10%,极限暴力 #include<bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define endl \n typedef long long LL; const int mod 1e97; const int N 2e510;…...

蓝桥杯——玩具蛇

题目 小蓝有—条玩具蛇&#xff0c;一共有16节&#xff0c;上面标着数字1至16。每—节都是一个正方形的形状。相邻的两节可以成直线或者成90度角。 小蓝还有一个44的方格盒子&#xff0c;用于存放玩具蛇&#xff0c;盒子的方格上依次标着字母A到Р共16个字母。 小蓝可以折叠自…...

百度SSL证书免费申请

百度云也有免费SSL证书可以申请&#xff0c;很多用户找不到&#xff0c;云服务器吧yunfuwuqiba.com整理百度云SSL免费证书申请入口&#xff1a; 1、打开百度云SSL证书购买页面 yunfuwuqiba.com/go/baidu_ssl 点立即购买&#xff0c;如下图&#xff1a; 百度云SSL证书 2、免费…...

SpringBoot Assert断言

文章目录 前言一、Assert说明二、Assert方法三、使用示例四、总结前言 在Spring Boot中,Assert类提供了一系列用于断言的静态方法,用于在代码中进行条件检查和错误处理。这些方法可以帮助我们在开发过程中快速发现和解决问题,提高代码的可靠性和健壮性。 一、Assert说明 在…...

test4121

欢迎关注博主 Mindtechnist 或加入【Linux C/C/Python社区】一起学习和分享Linux、C、C、Python、Matlab&#xff0c;机器人运动控制、多机器人协作&#xff0c;智能优化算法&#xff0c;滤波估计、多传感器信息融合&#xff0c;机器学习&#xff0c;人工智能等相关领域的知识和…...

UI自动化测试重点思考(下)--装饰器/生成器/夹具的使用/描述符的作用/ddt驱动/多线程

UI自动化测试重点思考--装饰器 装饰器装饰器定义装饰器代码示例装饰器的执行如何将装饰器融合到pytest框架里面 生成器创建生成器生成器的定义如何将生成器融合到pytest框架里面 fixture&#xff08;夹具&#xff09;使用pytest fixture 中 scope 参数的详细解释 描述符的总结描…...

C# 字段和属性的区别

区别 在C#中&#xff0c;字段&#xff08;Field&#xff09;和属性&#xff08;Property&#xff09;都是用来封装对象状态的方式&#xff0c;但它们有以下区别&#xff1a; 访问级别&#xff1a; 字段通常是private&#xff0c;而属性可以有不同级别的访问限制&#xff08;…...

备考ICA----Istio实验17---TCP流量授权

备考ICA----Istio实验17—TCP流量授权 1. 环境准备 1.1 环境部署 kubectl apply -f <(istioctl kube-inject -f istio/samples/tcp-echo/tcp-echo.yaml) -n kim kubectl apply -f <(istioctl kube-inject -f istio/samples/sleep/sleep.yaml) -n kim1.2 测试环境 检测…...

[C++][算法基础]树的重心(树图DFS)

给定一颗树&#xff0c;树中包含 n 个结点&#xff08;编号 1∼n&#xff09;和 n−1 条无向边。 请你找到树的重心&#xff0c;并输出将重心删除后&#xff0c;剩余各个连通块中点数的最大值。 重心定义&#xff1a;重心是指树中的一个结点&#xff0c;如果将这个点删除后&a…...

探秘ChatGPT:如何利用AI提升论文写作效率

ChatGPT无限次数:点击直达 html 探秘ChatGPT&#xff1a;如何利用AI提升论文写作效率 在当今信息爆炸的时代&#xff0c;论文写作是许多人工作者每天都要面对的任务。如何更高效地撰写出内容丰富、结构严谨的论文&#xff0c;一直是许多学者和研究人员所追求的目标。随着人…...

多无人机集群协同避障

matlab2020a正常运行 场景1规划结果 场景2规划结果 场景3规划结果 代码地址&#xff1a; 多无人机集群协同避障效果&#xff08;5架&#xff09;资源-CSDN文库...

基于velero和minio实现k8s数据的备份

1.30部署minio rootk8s-harbor:/etc/kubeasz/clusters/k8s-cluster1# docker run \ -d --restartalways -p 9000:9000 -p 9090:9090 –name minio -v /data/minio/data:/data -e “MINIO_ROOT_USERadmin” -e “MINIO_ROOT_PASSWORD12345678” quay.io/minio/minio server…...

【Java核心技术】第4章 对象与类

1 面向对象 2 自定义类 形式&#xff1a; class ClassName { field // 字段 constructor // 构造器&#xff08;构造函数&#xff09; method // 方法 } 如&#xff1a; class Employee {private String name;private double salary;private LocalDate hireDay;public Emp…...

【LeetCode】回溯算法类题目详解

所有题目均来自于LeetCode&#xff0c;刷题代码使用的Python3版本 回溯算法 回溯算法是一种搜索的方法&#xff0c;在二叉树总结当中&#xff0c;经常使用到递归去解决相关的问题&#xff0c;在二叉树的所有路径问题中&#xff0c;我们就使用到了回溯算法来找到所有的路径。 …...

java实现请求缓冲合并

业务背景&#xff1a; 我们对外提供了一个rest接口给第三方业务进行调用&#xff0c;但是由于第三方框架限制&#xff0c;导致会发送大量相似无效请求&#xff0c;例如&#xff1a;接口入参json包含两个字段&#xff0c;createBy和receiverList&#xff0c;完整的入参json示例…...

分布式锁的原子性问题

4.6 分布式锁的原子性问题 更为极端的误删逻辑说明&#xff1a; 线程1现在持有锁之后&#xff0c;在执行业务逻辑过程中&#xff0c;他正准备删除锁&#xff0c;而且已经走到了条件判断的过程中&#xff0c;比如他已经拿到了当前这把锁确实是属于他自己的&#xff0c;正准备删…...

从零自制docker-8-【构建实现run命令的容器】

文章目录 log "github.com/sirupsen/logrus"args...go moduleimport第三方包失败package和 go import的导入go build . 和go runcli库log.SetFormatter(&log.JSONFormatter{})error和nil的关系cmd.Wait()和cmd.Start()arg……context.Args().Get(0)syscall.Exec和…...

2024.03.31 校招 实习 内推 面经

绿*泡*泡VX&#xff1a; neituijunsir 交流*裙 &#xff0c;内推/实习/校招汇总表格 1、自动驾驶一周资讯 -小米SU7上市24小时&#xff0c;大定达88898台&#xff1b;小鹏汽车正式进入德国市场&#xff1b;地平线递交港股上市申请 自动驾驶一周资讯 -小米SU7上市24小时&…...

邦芒职场:塑造职场人气王的秘诀

在职场中&#xff0c;有些人总能吸引众人的目光&#xff0c;成为团队的焦点&#xff1b;而有些人却常常默默无闻&#xff0c;难以融入。那么&#xff0c;如何在职场中脱颖而出&#xff0c;成为一个受欢迎的人呢&#xff1f;下面&#xff0c;让我们来探讨一下塑造职场人气王的秘…...

滤波器网络变压器的作用

网络变压器的作用主要包括以下几点&#xff1a; 1. 信号传输&#xff1a;网络变压器可以将PHY送出来的差分信号用差模耦合的线圈耦合滤波以增强信号&#xff0c;并且通过电磁场的转换耦合到不同电平的连接网线的另外一端以达到传输数据的目的。 2. 电气电压隔离&#xff1a…...

Python —— 简述

Houdini Python | 笔记合集 - 知乎 Houdini内置三大语言&#xff1a; 表达式&#xff0c;主要用于节点参数控制&#xff0c;可实现跨模块控制&#xff1b;vex&#xff0c;速度最快&#xff08;比表达式和Python快一个数量级&#xff09;&#xff0c;非常适合密集型计算环境&…...

使用Rust加速Python程序,让代码飞起来

作为一种解释型语言&#xff0c;Python在开发速度和灵活性方面具有明显的优势&#xff0c;但在性能方面却不如编译型语言如C或Rust。对于性能要求苛刻的应用程序&#xff0c;如果纯粹使用Python编写可能会运行缓慢&#xff0c;影响用户体验。因此&#xff0c;如何利用Rust来加速…...

【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(八)- 向量整数算术指令

1. 引言 以下是《riscv-v-spec-1.0.pdf》文档的关键内容&#xff1a; 这是一份关于向量扩展的详细技术文档&#xff0c;内容覆盖了向量指令集的多个关键方面&#xff0c;如向量寄存器状态映射、向量指令格式、向量加载和存储操作、向量内存对齐约束、向量内存一致性模型、向量…...

Qt Designer在布局中调整控件垂直伸展或者水平伸展之后控件没有变化

QtDesigner设置垂直伸展 在Qt Designer中&#xff0c;要对网格布局中的每一个网格设置垂直伸展&#xff0c;可以按照以下步骤操作&#xff1a; 1.打开Qt Designer并打开你的UI文件。 2.确保你的布局是一个网格布局&#xff08;QGridLayout&#xff09;。 3.选中你想要设置垂直…...

微信公众号粉丝迁移费用是多少?

公众号迁移后原来内容还在么&#xff1f;通过公众号迁移&#xff0c;可以实现这些目的&#xff1a;主体变更、开通留言功能、多号合并、订阅号升级为服务号、服务号转为订阅号。公众号迁移流程&#xff1a;①申请公证&#xff1b;②提交迁移申请&#xff1b;③第三方审核&#…...

基于Vue3 中后台管理系统框架

基于Vue3 中后台管理系统框架 文章目录 基于Vue3 中后台管理系统框架一、特点二、源码下载地址 一款开箱即用的 Vue 中后台管理系统框架&#xff0c;支持多款 UI 组件库&#xff0c;兼容PC、移动端。vue-admin, vue-element-admin, vue后台, 后台系统, 后台框架, 管理后台, 管理…...