蓝桥杯嵌入式(一)学习准备

蓝桥杯嵌入式比赛中,开发板的主控芯片是stm32f103rbt6,芯片采用的架构是Cortex-M3。

开发板上模块较少,在比赛中使用到的模块:1块LCD显示屏,4个独立按键,1个蜂鸣器,1个EEPROM,8个LED,1个电位器。关于开发板的原理图和芯片的资料在蓝桥杯提供的文件夹中都有。

介绍完开发板,接下来我们就要学习搭建开发环境了,在蓝桥杯嵌入式比赛中,提供的是KEIL4,在提供的文件夹中还有一个官方给我们搭建好的工程模版,只需复制粘贴即可。

需要特别注意的是:蓝桥杯开发板下载程序并不是使用Stlink或者Jlink,而是CooCox。所以我们打开工程,点击魔法棒进入Debug界面。

 

 选择CooCox DeBugger选项,点击Setting进入设置界面

按照上图配置,连接上开发板,就可以直接下载程序了。蓝桥杯提供的工程模版现象是让LCD显示屏显示一系列图像。

观察到LCD显示图像就说明我们的开发环境搭建成功,开发板也是完好的。

有了搭建好的工程模版后,接下来就是学习如何使用这个模版,我们打开main.c这个函数,对其进行简单的修改,把多余部分删掉,只留下如下图所示部分

这样工程模版就修改完毕,比赛时就可按照这样修改直接使用。

个人认为这个工程模版中最香的地方就是提供了一个嘀嗒定时器和一个MS延时函数,这节约了我们很多时间。嘀嗒定时器的中断写在stm32f10x_it.c中。

这个中断1ms进入一次,我们可以把它当做1ms定时器来使用,但在中断中不可添加太多代码,不然会出现定时不准确的情况,但是如果我们只添加一些标志位,则影响可以忽略不计,因此可以用来实现LED闪烁、按键检测、显示刷新等基本功能。

这样在进行练习之前的准备就做完了,可以大大增加写代码的效率。