发布时间:2026/7/10 14:04:54
ARM汇编控制LED流水灯详解 .text .global _start _start: 使能GPIOE的外设时钟 RCC_MP_AHB4ENSETR的第[4]设置为1即可使能GPIOE时钟 LDR R0,0X50000A28 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 ORR R1,R1,#(0x34) 将第4位设置为1 将第5位设置为1 将GPIOF 将GPIOE STR R1,[R0] 将修改后的数值写回 设置PE10为输出 将GPIOE_MODER[21:20]设置为01就能够让PE10为输出工作模式 设置PE8为输出 将GPIOE_MODER[17:16]设置为01就能够让PE08为输出工作模式 LDR R0,0X50006000 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x3316) 将第21:2017:16清0 ORR R1,R1,#(0x1116) 将第21:20设置为01, 17:16设置为01 STR R1,[R0] 将修改后的数值写回 设置PF10为输出 将GPIOF_MODER[21:20]设置为01就能够让PF10为输出工作模式 LDR R0,0X50007000 指定寄存器的地址 LDR R1,[R0] 操作寄存器的值将它写到R1 BIC R1,R1,#(0x320) 将R1的2021位清0方便将这两位置位为01 ORR R1,R1,#(0x120) 将R1的21:20位置位为1 STR R1,[R0] 将修改后的数值写回 设置PE10为推完输出 将GPIOE_OTYPER寄存器[10]设置为0就能够让PE10以推挽输出模式进行工 设置PE8为推完输出 将GPIOE_OTYPER寄存器[8]设置为0就能够让PE8以推挽输出模式进行工作 LDR R0,0X50006004 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x58) 将第10,8位清0 STR R1,[R0] 将修改后的数值写回 设置PF10为推完输出 将GPIOF_OTYPER寄存器[10]设置为0就能够让PF10以推挽输出模式进行工作 LDR R0,0X50007004 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x110) 将第10清0 STR R1,[R0] 将修改后的数值写回 设置PE10PE8为低速输出将GPIOE_OTYPER寄存器[10],[8],设置为0能够让PE10,PE8为低俗输出 LDR R0,0X50006008 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x3316) STR R1,[R0] 设置PF10为低速输出 LDR R0,0X50007008 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x320) STR R1,[R0] 设置无上拉下拉电阻 LDR R0,0X5000600C 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x3316) 将17:16 和21:20设置为00表示无上拉电阻 STR R1,[R0] 将修改后的数值写回 LDR R0,0X5000700C 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x320) STR R1,[R0] 将修改后的数值写回 loop: 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 b loop led1_on: 设置LED1亮 LDR R0,0X50006014 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 ORR R1,R1,#(0x110) 将第10设置为1 高电平 STR R1,[R0] 将修改后的数值写回 mov pc,lr led1_off: 设置LED1关灯 LDR R0,0X50006014 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x110) 将第10设置为1 低电平 STR R1,[R0] 将修改后的数值写回 mov pc,lr led2_on: 设置LED2亮 LDR R0,0X50007014 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 ORR R1,R1,#(0x110) 将第10设置为1 STR R1,[R0] 将修改后的数值写回 mov pc,lr led2_off: 设置LED2关灯 LDR R0,0X50007014 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x110) 将第10设置为1 STR R1,[R0] 将修改后的数值写回 mov pc,lr led3_on: 设置LED3亮 LDR R0,0X50006014 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 ORR R1,R1,#(0x18) 将第8设置为1 STR R1,[R0] 将修改后的数值写回 mov pc,lr led3_off: 设置LED2关灯 LDR R0,0X50006014 指定寄存器地址 LDR R1,[R0] 将寄存器原来的数值读取出来保存到R1中 BIC R1,R1,#(0x18) 将第8设置为1 STR R1,[R0] 将修改后的数值写回 mov pc,lr 延时函数 delay: LDR R3,0X10000000 mm: cmp R3,#0 subne R3,R3,#1 bne mm mov pc,lr .end

相关新闻

2026/7/10 13:59:54

大数据毕设选题推荐:基于 SpringBoot 的超市客流数据处理分析系统的设计与实现 大型超市营收数据处理可视化系统【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/10 13:59:54

2026工业废水用聚丙烯酰胺生产厂家盘点 避坑指南

工业废水用聚丙烯酰胺核心选型要求工业废水处理场景复杂,不同行业废水的污染物成分、PH值、悬浮物浓度差异显著,聚丙烯酰胺的选型直接决定水处理效率与排放合规性,是工业企业环保运维的核心采购决策项。当前国内水处理药剂赛道供应商数量较多…

2026/7/10 13:59:54

AD7175-8与PIC18F45K42构建高精度信号采集系统

1. 项目概述:高精度信号采集系统设计在工业测量、医疗设备和科学仪器等领域,对微弱信号的精确采集一直是工程师面临的挑战。AD7175-8作为ADI公司推出的高性能ADC(模数转换器),配合PIC18F45K42微控制器的强大处理能力&a…

2026/7/10 15:00:01

英雄联盟Akari助手:终极智能游戏效率提升工具完全指南

英雄联盟Akari助手:终极智能游戏效率提升工具完全指南 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 你是否在英雄联盟对局中经常…

2026/7/10 5:21:51

国内大模型选型与企业级落地实战指南

我不能提供任何关于访问境外网络信息的技术方案或变通方法。根据中国法律法规和网络管理要求,所有互联网服务必须遵守国家关于网络安全、数据安全和内容安全的规定。ChatGPT及其后续版本(如所谓“GPT-5”)是由境外机构研发的大语言模型&#…

2026/7/10 2:34:05

三步实战方案:高效获取智慧教育平台电子课本PDF的完整流程

三步实战方案:高效获取智慧教育平台电子课本PDF的完整流程 【免费下载链接】tchMaterial-parser 国家中小学智慧教育平台 电子课本下载工具,帮助您从智慧教育平台中获取电子课本的 PDF 文件网址并进行下载,让您更方便地获取课本内容。 项目…

2026/7/10 0:02:49

5大实战技巧:用ExifToolGUI轻松解决照片元数据管理难题

5大实战技巧:用ExifToolGUI轻松解决照片元数据管理难题 【免费下载链接】ExifToolGui A GUI for ExifTool 项目地址: https://gitcode.com/gh_mirrors/ex/ExifToolGui 你是否曾为整理旅行照片时发现拍摄时间错乱而头疼?是否需要在数百张照片中批量…

2026/7/10 6:36:15

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…