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

嵌入式第六周作业任务二--PWM呼吸灯

1.编写所需头文件

屏幕截图 2025-10-19 002541
2.定义LED的引脚

屏幕截图 2025-10-19 002726
3.定义呼吸灯参数
分别定义呼吸灯的PWM周期,呼吸步进值以及呼吸更新间隔(ms)。

屏幕截图 2025-10-19 002902
4.定义全局变量
分别定义TIM3 PWM占空比,TIM4 PWM占空比(从中间开始,与TIM3错开),TIM3方向(1增加,0减少)以及TIM3方向(1增加,0减少)。

屏幕截图 2025-10-19 003119
5.声明函数

屏幕截图 2025-10-19 003147
6.编写GPIO配置函数
分别配置使能GPIO时钟,配置板载LED (PC13) - 推挽输出以及配置外接LED (PA6) - 复用推挽输出 (TIM3_CH1)。

屏幕截图 2025-10-19 003353
7.编写TIM3配置函数
分别配置使能TIM3时钟以及配置定时器基础(包括自动重装载值,预分频器,时钟分频和向上计数模式)。

屏幕截图 2025-10-19 003612
8.编写TIM4配置函数
分别配置使能TIM4时钟以及配置定时器基础(包括自动重装载值,预分频器,时钟分频和向上计数模式)。

屏幕截图 2025-10-19 003715
9.初始化TIM3 PWM
分别配置PWM模式(包括PWM模式1,输出使能,输出极性高和初始占空比为0)和配置通道1。

屏幕截图 2025-10-19 003925
10.初始化TIM3 PWM
分别配置PWM模式(包括PWM模式1,输出使能,输出极性高和初始占空比为50%)和配置通道1。
11.更新PWM占空比函数
首先更新TIM3占空比 (外接LED),然后更新TIM4占空比 (板载LED),最后设置新的占空比。

屏幕截图 2025-10-19 021323
12.设计简单延时函数

屏幕截图 2025-10-19 021412
13.编写main主函数
依次初始化系统时钟,配置GPIO,配置定时器,初始化PWM,启动定时器,启动PWM输出,更新PWM占空比以及延时。

屏幕截图 2025-10-19 021702
硬件连接
板载LED: PC13(固定连接)
外接LED: 可以连接到PA6(TIM3_CH1)或PB6(TIM4_CH1)
程序说明

  1. 硬件配置
    TIM3_CH1: PA6 → 驱动外接LED
    TIM4_CH1: 通过软件控制PC13 → 驱动板载LED

  2. 呼吸灯原理
    PWM频率: 1kHz (1MHz / 1000 = 1kHz)
    占空比在0-1000范围内变化。
    两个LED呼吸相位错开,产生交替呼吸效果。

http://www.hskmm.com/?act=detail&tid=33964

相关文章:

  • 2022 ICPC Shenyang
  • tryhackme-预安全-网络安全简介-进攻性安全简介-01
  • 20231326第五周预习报告
  • 复矩阵的奇异值分解(SVD)
  • idea与cursor的整合方案
  • Codeforces Round 496 (Div. 3) F. Berland and the Shortest Paths
  • 《程序员修炼之道:从小工到专家》第五章读后感
  • 元推理框架,有机AI是天使
  • PWN手的成长之路-18_铁人三项(第五赛区)_2018_rop
  • Dotnet通过Http2解决CVE-2025-55315高危漏洞
  • 日志|JAVAWEB|YApi|vue-cli|VUE-Element
  • 20232401 2025-2026-1 《网络与系统攻防技术》实验二实验报告
  • FFT学习小结
  • OI 笑传 #20
  • 幂等的双倍快乐,你值得拥有
  • 2025.10.18——1黄
  • 10.18总结
  • 10.17总结
  • 软考中级学习总结(2)
  • 2025年粉末冶金制品/零件厂家推荐排行榜,高精度耐磨粉末冶金零件,优质粉末冶金制品公司推荐!
  • Neo4j 图数据库搭建和 Springboot 访问
  • 2025粉末冶金制品优质厂家推荐:鸿瑞粉末冶金,专业定制品质卓越!
  • AI元人文理论框架体系研究:价值原语化的文明演进机制与治理范式转变——声明Ai研究
  • 20251018
  • [buuctf]bjdctf_2020_router
  • AtCoder Beginner Contest 428 ABCDE 题目解析
  • 稻草火把下的星辰:回忆我的90年代求学路
  • 10月18日日记
  • 第九章-实战篇-运维杰克
  • AntennaPod - 开源Android播客管理器