此系列教程将以蓝桥杯官方指定的开发板和接口板来深入浅出的讲解stm32的知识。本片文章将从以下几个问题做介绍:(1)什么是蓝桥杯?(2)本专题适合的读者?(3)学习需要具备哪些基础知识?(4)有别的stm32板子,适合看这个专题的文章吗?(5)简单介绍这块开发板和扩展板?
(1)什么是蓝桥杯?
百度百科中对蓝桥杯的定义:为推动软件开发技术的发展,促进软件专业技术人才培养,向软件行业输送具有创新能力和实践能力的高端人才,提升高校毕业生的就业竞争力,全面推动行业发展及人才培养进程,工业和信息化部人才交流中心特举办“全国软件专业人才设计与创业大赛”,本赛包括个人赛和团队赛两个比赛项目,个人赛设置:1、C/C++程序设计(本科A组、本科B组、高职高专组)2、Java软件开发(本科A组、本科B组、高职高专组)3、嵌入式设计与开发(大学组、研究生组)4、单片机设计与开发(大学组)5、电子设计与开发(大学组),团队赛设置:软件创业赛一个科目组别。并且形成了立足行业,结合实际,实战演练,促进就业的特色。
从定义中我们可以看到这个比赛涉及面还是比较广的,有C/C++程序设计、Java软件开发、嵌入式设计与开发、单片机设计与开发以及电子设计与开发。嵌入式设计与开发这个比赛中会用到stm32的知识,因此笔者将自己的学习方法、学习过程以及经验以文章的形式记录下来。
(2)本专题适合的读者?
1)对stm32感兴趣的伙伴
2)致力于stm32开发的本科生、研究生
3)想参加蓝桥杯嵌入式设计与开发比赛的小伙伴
4)想从事stm32开发但是没有基础
(3)学习需要具备哪些基础知识?
答:
(1)编程需要C语言基础,如果感觉自己的C语言基础比较薄弱,可以阅读我写的C语言专题文章(已更新20篇文章,目前仍在更新中)嵌入式Linux开发之《C语言专题概述》嵌入式Linux开发《C语言专题(五:(3)实用的内存函数总结7)》
(2)模电和数电知识,达到具备阅读原理图的能力,如果不具备这些知识,没关系,我会在文章中详细介绍。
(3)坚持不懈的精神,这个也是最重要的。做技术是个苦活,不要“三天打鱼,两天晒网。但是做技术也有乐趣,比如你终于实现了某个功能等。其实坚持下来了也就那么回事,刚开始觉得难很正常,所谓“万事开头难”嘛,挺过去了,再回头看看当初的自己,都不觉得苦了,都觉得很值得。
(4)有别的stm32板子,适合看这个专题的文章吗?
当然可以,开发思路和使用方式不因板子不同而不同,核心是不变的。只要你对一种板子的使用比较熟悉,那么对其他板子的使用也会很快上手,这就是触类旁通的原因。拿最简单的led流水灯来举例:只要知道led灯所用的引脚,这些引脚在不同的开发板上是不一样的。之后在代码中先初始化这些引脚,之后将引脚设置为高电平或者低电平加上延时函数就可以实现流水灯效果。我们要学的就是这些流程也就是这些防方法,以及这些流程中所涉及到的代码使用方式。这样当你拿到别的开发板时,用一句话来讲:这都不是事儿。
(5)简单介绍这块开发板和扩展板?
开发板名称:CT117E 采用全新的设计开发理念,集仿真器与开发板为一体,板上集成Colink,可直接通过USB接口进行软件仿真和程序下载。支持IAR Systems EWARM和Keil uVsion集成开发环境,核心MCU为STM32F103RBT6(100pin)处理器,功能简单,能够让STM32初学者快速入门。基于STM32F103RBT6处理器设计,STM32F103RBT6是CortexM3内核的STM32中密度产品,片内具有128Kbytes FLASH存储器,能够满足一般应用,同时配有丰富的外设资源;CT117E嵌入式竞赛板是工业和信息化部人才交流中《全国电子专业人才设计与技能大赛》指定考核和训练套件。
蓝桥杯开发板
硬件资源:
1)STM32F103RBT6处理器;
2)128KB Flash存储器;
3)一路RS232接口;
4)一路USB转串口;
5)USB CLIENT接口;
6)SD卡座;
7)2.4’ TFT-LCD;
8)I2C接口EEPROM
9)8位LED
10)电位器(模拟输入)
11)4个独立功能
12)蜂鸣器
扩展板如下图所示:
蓝桥杯扩展板
扩展板资源:
(1)按键模块:8个ADC按键
(2)显示模块:3位7段共阴数码管
(3)传感器模块:LIS302DL三轴传感器+DS18B20温度传感器+DHT11温湿度传感器
(4)信号发生模块:两路模拟信号输出+光敏电阻模拟量及开光量信号输出+四路脉冲信号输出
总结:
1)一方面这个板子的性价比还行,另一方面参与这个比赛获奖后学校还可以加分,对在校学生评奖学金也有一定的优势吆。
2)结合开发板和扩展板所带的资源,作为stm32初学者的入门系列已经够了。