对于这次已经是第二次参加蓝桥杯了,对于一些经验想在这里分享给一些参加蓝桥杯嵌入式的学弟。对于每次蓝桥杯虽然是有点水,但是可以打下STM32的基础,对于一些外设都可以进行尝试,为后面的电赛打下基础。对于蓝桥杯官方还是推荐使用CubeMax这个软件,但是我个人并不是非常推荐,即使当时我也是非常的喜欢这个软件,后面就不太喜欢了。因为有个学弟发现生成的代码非常不匹配,对于这个问题在比赛假如碰见是一个非常大的隐患。
那应该如何不使用CubeMax软件就能进行一个工程的搭建?比赛官方还是提供了STM32的官方资料和数据手册,在没有CubeMax的那个时代,我们都是使用这个进行代码参考和工程搭建的。
所以在这个幸运的时代,我们都是幸运的人。
在十四届蓝桥杯的模拟题中我们可以看见LCD、LED指示灯、脉冲输出、串口通信和按键输入,简单的框架就是这样。
基本功能:
(1)通过PA1引脚和PA7引脚输出脉冲。
(2)通过串口完成界面切换功能。
(3)通过按键完成占空比、频率、界面切换和模式切换。
(4)通过LCD和LED完成显示和指示功能。
总个框架还是比较简单的,这个题目没有ADC和脉冲捕获。对于一开始我们就先对按键输入和LCD的显示进行一个封装,这样我们就可以至少能拿奖,不会让钱进行打水漂。
对于按键的输入我还是采用了一个轮询的写法,并没有使用外部中断。
简单来说,按键搞好了,差不多就搞好一半了,因为很多都能都是由按键的功能切换实现的。
对于LED灯的使用我还是比较喜欢使用寄存器去操作蓝桥杯开发板上面的八个灯。因为有时就要求这一个灯的状态不影响另外一个灯的使用,所以我们可以用一个变量储存这个灯的状态,达到我们对于LED指示灯的使用。
脉冲的输出一直是一个比较简单的一个外设,只需要设置好频率和占空比就可以了,没有什么难度。
串口通信这里就显得比较简单,不需要做任何的数据解析处理,只需要判断一个字符就可以了,没有数据格式要求,数据不是过长的那一种,非常的友好。
简单来说还是比较简单的,只要整体框架有个大概思路,就显得非常的简单。
马上就要参加14届蓝桥杯的比赛了,希望自己有一个好的成就。