首页/新闻资讯/正文详情

STM32F103C8T6 寄存器方式流水灯实验报告

发布时间:2026/9/24 11:03:44 来源:云帆数科 栏目:资讯中心
STM32F103C8T6 寄存器方式流水灯实验报告
STM32F103C8T6 寄存器方式流水灯实验报告一、实验目的熟悉STM32F103C8T6最小系统板Blue Pill硬件结构了解最小系统构成。理解STM32 GPIO寄存器原理掌握端口时钟、引脚模式、输出寄存器的配置。使用寄存器直接编程配置GPIOA、GPIOB、GPIOC引脚外接红、绿、蓝LED结合板载PC13 LED4个LED轮流点亮切换间隔1秒。掌握Keil工程编译、程序烧录流程学习Git基础命令将工程上传至Gitee代码仓库。二、实验器材STM32F103C8T6最小系统板 ×1面包板 ×1红色LED、绿色LED、蓝色LED 各1只220Ω限流电阻 ×3杜邦线若干、ST-Link下载器、USB数据线软件Keil MDK5、STM32CubeProgrammer、Git三、实验原理3.1 硬件电路原理LED采用共阴极接法GPIO引脚输出低电平LED点亮输出高电平LED熄灭。PA0外接红色LED 220Ω电阻 → GNDPB0外接绿色LED 220Ω电阻 → GNDPC0外接蓝色LED 220Ω电阻 → GNDPC13开发板自带板载LED3.2 相关寄存器说明寄存器名称寄存器地址功能说明RCC_APB2ENR0x40021018APB2外设时钟使能寄存器开启GPIOA/GPIOB/GPIOC时钟GPIOx_CRL0x40010800 0x00GPIO低8位配置寄存器配置PA0、PB0、PC0引脚模式GPIOx_CRH0x40010800 0x04GPIO高8位配置寄存器配置PC13引脚模式GPIOx_ODR0x40010800 0x0CGPIO输出数据寄存器控制引脚输出高低电平寄存器配置说明RCC_APB2ENRBit21开启GPIOABit31开启GPIOBBit41开启GPIOC。GPIOx_CRL/CRH配置位0011代表通用推挽输出最大速度2MHz。GPIOx_ODR对应bit置0引脚输出低电平LED点亮bit置1高电平LED熄灭。3.3 程序设计思路开启GPIOA、GPIOB、GPIOC的APB2外设时钟。配置PA0、PB0、PC0、PC13为推挽输出模式。主循环依次单独点亮1个LED其余全部熄灭延时1秒循环切换。点亮顺序PA0红灯 → PB0绿灯 → PC0蓝灯 → PC13板载LED循环往复。四、实验代码寄存器版本main.c#includestm32f10x.hvoidDelay_1s(void){uint32_ti,j;for(i0;i1000;i)for(j0;j7200;j);}intmain(void){RCC-APB2ENR|(12);//Bit2 IOPAEN1开启GPIOA时钟RCC-APB2ENR|(13);//Bit3 IOPBEN1开启GPIOB时钟RCC-APB2ENR|(14);//Bit4 IOPCEN1开启GPIOC时钟GPIOA-CRL~(0x0F0);//清空PA0的4位配置位GPIOA-CRL|(0x030);//0011通用推挽输出最大速度2MHzGPIOB-CRL~(0x0F0);GPIOB-CRL|(0x030);GPIOC-CRL~(0x0F0);GPIOC-CRL|(0x030);GPIOC-CRH~(0x0F20);GPIOC-CRH|(0x0320);while(1){GPIOA-ODR~(1U0);GPIOB-ODR|(1U0);GPIOC-ODR|(1U0);GPIOC-ODR|(1U13);Delay_1s();GPIOA-ODR|(1U0);GPIOB-ODR~(1U0);GPIOC-ODR|(1U0);GPIOC-ODR|(1U13);Delay_1s();GPIOA-ODR|(1U0);GPIOB-ODR|(1U0);GPIOC-ODR~(1U0);GPIOC-ODR|(1U13);Delay_1s();GPIOA-ODR|(1U0);GPIOB-ODR|(1U0);GPIOC-ODR|(1U0);GPIOC-ODR~(1U13);Delay_1s();}}cc五、实验现象程序烧录完成按下复位键后4 个 LED 按照顺序依次点亮PA0 红灯亮 1s→PB0 绿灯亮 1s→PC0 蓝灯亮 1s→PC13 板载 LED 亮 1s循环往复任意时刻只有一个 LED 点亮。流水灯六、实验总结本次实验直接操作 STM32 底层寄存器理解 GPIO 外设工作原理掌握寄存器配置步骤。学会 Keil 编译、程序烧录同时掌握 Git 版本控制将工程托管到 Gitee 仓库。熟悉 STM32 最小系统硬件掌握 GPIO 驱动 LED 的底层原理。

相关推荐

今天制作的app普通广告片
今天制作的app普通广告片

· 2026/9/24 11:03:31

用笨办法啃透《编码》:从手电筒到CPU的底层学习指南
用笨办法啃透《编码》:从手电筒到CPU的底层学习指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/24 11:03:31

第1章:开发环境搭建,安装 VMware 虚拟机
第1章:开发环境搭建,安装 VMware 虚拟机

专栏导航 上一篇:Linux 0.12 内核学习笔记专栏开篇语 回到目录 下一篇:无 本节前言 在上一节,我是写了一些个开篇辞。从本节开始,我们要开始来搭建开发环境了。 我们首先要去做的,是去安装一个虚拟机。 搭建开发… · 2026/9/24 11:03:31

Formily Vue 中 SchemaField 的 JSON Schema 模式:直接传入 Schema 对象动态渲染表单
Formily Vue 中 SchemaField 的 JSON Schema 模式:直接传入 Schema 对象动态渲染表单

前端UI组件 【免费下载链接】formily 📱🚀 🧩 Cross Device & High Performance Normal Form/Dynamic(JSON Schema) Form/Form Builder -- Support React/React Native/Vue 2/Vue 3 项目地址: https://gitcode.com/gh_mirrors… · 2026/9/24 15:33:22

Apache Pulsar 负载仿真工具详解:Simulation Client / Controller 与 Broker Monitor 使用指南
Apache Pulsar 负载仿真工具详解:Simulation Client / Controller 与 Broker Monitor 使用指南

消息队列后端流处理 【免费下载链接】pulsar Apache Pulsar - distributed pub-sub messaging system 项目地址: https://gitcode.com/gh_mirrors/pulsar28/pulsar 点击查看 免费下载 导读 本指南围绕 Apache Pulsar 官方文档中的 Simulation tools(负… · 2026/9/24 15:33:22

stats4cj分位数完全指南:percentile、四分位数、IQR与三均值逐层详解
stats4cj分位数完全指南:percentile、四分位数、IQR与三均值逐层详解

stats4cj分位数完全指南:percentile、四分位数、IQR与三均值逐层详解 【免费下载链接】stats4cj stats4cj是一个仓颉实现的数学统计库,包括总体/样本均值、总体/样本方差、分位数、统计分布等多种数理统计函数。 项目地址: https://gitcode.com/Cangji… · 2026/9/24 15:33:22

鸿蒙远控横评:ToDesk/向日葵/RayLink,功能完整度才是真正的分水岭
鸿蒙远控横评:ToDesk/向日葵/RayLink,功能完整度才是真正的分水岭

鸿蒙远控,功能完整度才是真正的分水岭鸿蒙系统从发布至今,远程控制软件的适配一直是个痛点。不少用户反馈,安卓端能用的功能到了鸿蒙端要么缺失,要么体验打折扣。市面上主流的远控软件——ToDesk、向日葵、RayLink——在鸿蒙端的表… · 2026/9/24 15:33:16

Sinon `assert.calledOnceWithMatch` 断言完全指南:精确匹配一次调用
Sinon `assert.calledOnceWithMatch` 断言完全指南:精确匹配一次调用

测试开发工具 【免费下载链接】sinon Test spies, stubs and mocks for JavaScript. 项目地址: https://gitcode.com/gh_mirrors/si/sinon 点击查看 免费下载 本文基于 Sinon.JS 官方文档(docs/concepts/assertions/api/called-once-with-match.md&… · 2026/9/24 15:33:16

Yii 2 框架核心包(yiisoft/yii2)安装指南与框架结构解析
Yii 2 框架核心包(yiisoft/yii2)安装指南与框架结构解析

后端Web框架 【免费下载链接】yii2 Yii 2: The Fast, Secure and Professional PHP Framework 项目地址: https://gitcode.com/gh_mirrors/yi/yii2 点击查看 免费下载 Yii 2 是目前 Yii 框架家族中应用最广的稳定版本,其核心框架代码以 yiisoft/yii2 包… · 2026/9/24 15:33:16

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13

1D-CNN时间序列建模实战:从Conv1d原理到工业落地
1D-CNN时间序列建模实战:从Conv1d原理到工业落地

简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26

柔软的L:汉语语流中被忽视的舌肌张力控制
柔软的L:汉语语流中被忽视的舌肌张力控制

1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码