摘要:本文为作者对第十三届蓝桥杯嵌入式设计与开发项目省赛(第一场)——程序设计试题的解析。本文包括“题目要求”、“程序设计”、“效果展示”3个部分。供复盘使用。若发现错误之处,请不吝赐教。
链接:蓝桥杯嵌入式方向备赛记录(STM32G431)为作者备赛蓝桥杯嵌入式过程中,整理的学习总结。包括各模块使用要点、各模块程序等,基本搭建好工程框架,给出了各模块处理程序。
写在前面:本道题整体上难度正常。逻辑理清了,完成起来就快了。
目 录
一、题目要求
二、程序设计
(一)思路分析
前期已准备好模块程序、搭建好工程框架,下面结合本道题,实际分析工程思路:
1、涉及考点
按键、LED、定时器、串口、LCD等。
2、几条主线
(1)按键:要完成按键检测+功能处理。“按键检测”使用模块程序(非阻塞+移位消抖)即可。下面分析具体功能:B1、B2、B3:调整密码,通过运算符对变量处理即可;B4:确认按键。
(2)LED:
这部分,5秒是关键,也是需要谨慎处理的点。LD1点亮5秒后熄灭,可以通过Systic秒计数实现;LD2以0.1秒为间隔闪烁5秒后熄灭,同样通过Systic计数5秒,0.1秒间隔可以通过设置LED处理函数刷新时间为0.1秒来实现(在LED处理函数中,if语句,5s内,翻转对应引脚。该函数0.1秒刷新一次,即可实现LD2以0.1秒为间隔闪烁)。
(3)定时器:一个脚,两个状态,输出“1路不同频率、不同占空比”的PWM。
本题切换输出信号状态,即需要修改频率和占空比