10.8流水灯

news2024/11/25 22:41:54
.text 
.global _start
_start: 
@1.设置GPIOE寄存器的时钟使能  RCC_MP_AHB4ENSETR[4]->1     0x50000a28
LDR R0,=0X50000A28
LDR R1,[R0]  @从r0为起始地址的4字节数据取出放在R1
ORR R1,R1,#(0x1<<4)  @第4位设置为1
STR R1,[R0]  @写回

@1.设置GPIOF寄存器的时钟使能  RCC_MP_AHB4ENSETR[4]->1     0x50000a28
LDR R0,=0X50000A28
LDR R1,[R0]  @从r0为起始地址的4字节数据取出放在R1
ORR R1,R1,#(0x1<<5)  @第5位设置为1
STR R1,[R0]  @写回

@2.设置PE10管脚为输出模式  GPIOE_MODER[21:20]->01   0x50006000
LDR R0,=0x50006000
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)@[21L20]清0
ORR R1,R1,#(0X1<<20) @设置
STR R1,[R0]

@2.设置PE8管脚为输出模式  GPIOE_MODER[17:16]->01   0x50006000
LDR R0,=0x50006000
LDR R1,[R0]
BIC R1,R1,#(0x3<<16)
ORR R1,R1,#(0X1<<16) @设置
STR R1,[R0]

@3.设置PE10管脚为推挽输出  GPIOE_OTYPER[10]->0   0X50006004
LDR R0,=0X50006004
LDR R1,[R0]
BIC R1,R1,#(0X1<<10)
STR R1,[R0] 

@3.设置PE8管脚为推挽输出  GPIOE_OTYPER[8]->0   0X50006004
LDR R0,=0X50006004
LDR R1,[R0]
BIC R1,R1,#(0X1<<8)
STR R1,[R0]

@4.设置PE10管脚为低速输出   GPIOE_OSPEEDR[21:20]->00  0X50006008
LDR R0,=0x50006008
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)@[21L20]清0
STR R1,[R0] 

@4.设置PE8管脚为低速输出   GPIOE_OSPEEDR[17:16]->00  0X50006008
LDR R0,=0x50006008
LDR R1,[R0]
BIC R1,R1,#(0x3<<16)
STR R1,[R0]

@5.设置PE10管脚输出时没有上拉下拉电阻  GPIOE_PUPDR[21:20]->00  0X5000600C
LDR R0,=0x5000600c
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)@[21L20]清0
STR R1,[R0] 

@5.设置PE8管脚输出时没有上拉下拉电阻  GPIOE_PUPDR[17:16]->00  0X5000600C
LDR R0,=0x5000600c
LDR R1,[R0]
BIC R1,R1,#(0x3<<16)
STR R1,[R0]

@设置PF10管脚为输出模式  GPIOF_MODER[21:20]->01   0x50007000
LDR R0,=0x50007000
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)@[21L20]清0
ORR R1,R1,#(0X1<<20) @设置
STR R1,[R0]

@设置PF10管脚为推挽输出  GPIOF_OTYPER[10]->0   0X50007004
LDR R0,=0X50007004
LDR R1,[R0]
BIC R1,R1,#(0X1<<10)
STR R1,[R0]

@设置PF10管脚为低速输出   GPIOF_OSPEEDR[21:20]->00  0X50007008
LDR R0,=0x50006008
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)@[21L20]清0
STR R1,[R0]

@设置PF10管脚输出时没有上拉下拉电阻  GPIOF_PUPDR[21:20]->00  0X5000700C
LDR R0,=0x5000700c
LDR R1,[R0]
BIC R1,R1,#(0x3<<20)@[21L20]清0
STR R1,[R0]

@  6.PE10输出高低电平      GPIOE_ODR[10]->1(高电平)  0(低电平)    0X50006014
@LED1亮灭交替
loop:
    @亮
    LDR R0,=0X50006014
    LDR R1,[R0]
    ORR R1,R1,#(0x1<<10)
    STR R1,[R0]
    BL delay
    @灭
    LDR R0,=0X50006014
    LDR R1,[R0]
    BIC R1,R1,#(0x1<<10)
    STR R1,[R0]
    BL delay

	LDR R0,=0X50007014
    LDR R1,[R0]
    ORR R1,R1,#(0x1<<10)
    STR R1,[R0]
    BL delay

	LDR R0,=0X50007014
    LDR R1,[R0]
    BIC R1,R1,#(0x1<<10)
    STR R1,[R0]
    BL delay

	@亮
    LDR R0,=0X50006014
    LDR R1,[R0]
    ORR R1,R1,#(0x1<<8)
    STR R1,[R0]
    BL delay
    @灭
    LDR R0,=0X50006014
    LDR R1,[R0]
    BIC R1,R1,#(0x1<<8)
    STR R1,[R0]
    BL delay

    b loop



@封装延时函数

delay:
    LDR R4,=0X10000000
mm:
    cmp r4,#0
    subne r4,r4,#1
    bne mm
    mov pc,lr  @程序返回


.end 

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

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

相关文章

Linux通过QQ邮箱账号使用mailx发送邮件

Linux通过QQ邮箱账号使用mailx发送邮件 第一步&#xff1a;安装mailx 第二步&#xff1a;获取邮箱的授权码 第三步&#xff1a;配置mailx服务 第四步&#xff1a;添加数字证书 第五步&#xff1a;发送邮件测试&#xff01; 第一步&#xff1a;安装mailx # 安装mailx yum…

1688商品详情数据接口,1688商品详情API接口申请指南

1688商品详情通常包括以下几个部分1&#xff1a; 商品主图&#xff1a;商品的展示图片&#xff1b;商品标题&#xff1a;商品的名字&#xff1b;价格&#xff1a;商品的价格&#xff1b;销量&#xff1a;商品的销量&#xff1b;商品描述&#xff1a;对商品功能的介绍&#xff…

flink双流join结果数据重复问题排查

1.背景 Kafka的两个topic&#xff0c;topic1 为用户下单明细记录&#xff08;包含订单基本信息&#xff09;&#xff0c;topic2为下单渠道记录&#xff08;包含下单来源和渠道内容设备相关的信息&#xff09; &#xff0c;要求实时统计每分钟内所有订单下的渠道来源分布详情。具…

异步爬虫实战:实际应用asyncio和aiohttp库构建异步爬虫

在网络爬虫的开发中&#xff0c;异步爬虫已经成为一种非常流行的技术。它能够充分利用计算机的资源&#xff0c;提高爬虫效率&#xff0c;并且能够处理大量的运算请求。Python中的asyncio和aiohttp库提供了强大的异步爬虫支持&#xff0c;使得开发者能够轻松构建高效的异步爬虫…

springboot+java+ssm高校学生学籍档案信息管理系统3cvy3

本文通过采用B/S架构&#xff0c;MVC开发模式、MySQL数据库以及JSP技术&#xff0c;结合国内学籍管理系统管理现状&#xff0c;开发了一个JSP学籍管理系统。系统前台分为四个功能模块:学院信息、课程信息、专业信息、校园公告。系统后台管理员分为十二个功能模块:首页、个人中心…

数字IC前端学习笔记:数字乘法器的优化设计(Dadda Tree乘法器)

相关阅读 数字IC前端https://blog.csdn.net/weixin_45791458/category_12173698.html?spm1001.2014.3001.5482 华莱士树仍然是一种比较规则的结构&#xff08;这使得可以方便地生成树的结构&#xff09;&#xff0c;这导致了它所使用的全加器和半加器个数不是最少的&#xff…

Step1:走进Java

文章目录 1.1 概述1.2 Java技术体系1.3 Java虚拟机家族1.4 作业:自己编译JDK1.1 概述 Java不仅仅是一门编程语言,它还是一个由一系列计算机软件和规范组成的技术体系,这个技术体系提供了完整用于软件开发和跨平台部署的支持环境,并广泛应用于嵌入式系统、移动终端、企业服…

抖音seo源码开发部署搭建分享--SaaS

应用场景&#xff1a;抖音seo源码&#xff0c;抖音矩阵源码&#xff0c;短视频seo源码&#xff0c;短视频矩阵系统 一、抖音seo源码系统开发需求设计 系统架构&#xff1a;包括系统环境、技术栈、框架等。数据存储&#xff1a;如数据库类型、数据表设计、字段设计等。API接口&…

使用Python进行广告点击率预测

广告点击率是指有多少用户点击了您的广告与有多少用户查看了您的广告的比率。例如&#xff0c;100个用户中有5个在观看XX视频时点击了广告。因此&#xff0c;在这种情况下&#xff0c;XX广告的CTR将是5%。分析点击率有助于公司为目标受众找到最佳广告。所以&#xff0c;如果你想…

一文带你了解三大开源关系型数据库:SQLite、MySQL和PostgreSQL

目录 1、概述 2、SQLite数据库 2.1、SQLite简介 2.2、SQLite优缺点 2.3、SQLite应用场景 3、MySQL数据库 3.1、MySQL简介 3.2、MySQL优缺点 3.3、MySQL应用场景 4、PostgreSQL数据库 4.1、PostgreSQL简介 4.2、PostgreSQL优势 4.3、PostgreSQL应用场景 5、在实际…

【操作系统】聊聊不可中断进程和僵尸进程

当我们输入top命令之后 其中S代表的是当前进程的状态 R (Running 或 Runnable) 进程在CPU的就绪队列中&#xff0c;正在运行或者等待运行。D (Disk Sleep) 不可中断睡眠&#xff0c;进程正在跟硬件交互&#xff0c;不运行被其他进程或者中断打断。Z (Zombie) 进程已经结束&am…

NICE-SLAM——论文简析

NICE-SLAM: Neural Implicit Scalable Encoding 现有的神经隐式表征方法会产生过度平滑的场景重建&#xff0c;并且难以扩展到大型场景。这些局限性主要是由于其简单的全连接网络架构没有将局部信息纳入观测。NICE-SLAM通过引入分层场景表示法&#xff0c;纳入了多层次的局部信…

2019架构真题2020案例(四十七)

数据存储在中央仓库&#xff0c;处理流程独立&#xff0c;交互性好数据和处理耦合在一起&#xff0c;每次修改需要重启劣势&#xff1a;需要通过连接组件进行连接&#xff0c;性能降低优势&#xff1a;支持并发通过仓库连接组件访问&#xff0c;效率高 (8分)缓存中存储当前的热…

基于Java的考试报名系统设计与实现(亮点:可修改任意形式的考试报名,如驾校考试报名、竞赛考试报名、英语四级考试报名等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09;有保障的售后福利 代码参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…

左值、右值、左值引用和右值引用

左值、右值和左值引用&#xff0c;在C11之前&#xff0c;我们都很熟悉也都很好理解。左值(LValue)就是有名字能够寻址的对象的值类型&#xff0c;右值就是在内存上没有名字的数值的值类型&#xff0c;左值引用就是指向左值的引用。 C11引入了右值引用&#xff0c;从而可以去读…

奔驰与蔚来,“联姻”只是传闻?

继比亚迪与丰田&#xff0c;小鹏汽车与大众&#xff0c;零跑汽车与Stellantis陆续展开或传出合作机会之后&#xff0c;近日蔚来也被曝出正在与奔驰进行合作洽谈。 这意味着&#xff0c;在新能源尤其是智能电动时代&#xff0c;传统外资车企占据技术主动权&#xff08;所谓的技术…

HarmonyOS/OpenHarmony原生应用-ArkTS万能卡片组件Span

作为Text组件的子组件&#xff0c;用于显示行内文本的组件。无子组件 一、接口 Span(value: string | Resource) 从API version 9开始&#xff0c;该接口支持在ArkTS卡片中使用。 参数&#xff1a; 参数名 参数类型 必填 参数描述 value string | Resource 是 文本内…

主流的图像—文本的多模态技术实现方法有哪些?

大体上可划分为3类&#xff1a; 1&#xff09;训练中间层以对齐视觉模块和语言模型。该类方法首先预训练视觉模块&#xff0c;将这些视觉模块与LLM冻结&#xff0c;然后在视觉模块与LLM之间插入可训练的中间层&#xff0c;构建多模态模型。接着在大规模的图像—文本对数据集上…

基于SSM的实验室考勤管理系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

项目总监必看:如何利用Git深度统计团队代码贡献?多语言实践教程揭秘!

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