目录
1.课程回顾
经过前面10节课程,我们已经详细讲解了以下内容:
1. 每节课都是一个项目 手把手用STM32打造联网气象站-1-安装开发环境
上面详细讲解了如何搭建开发环境,如何用vscode来编辑代码,使得代码更加美观。
2. 每节课都是一个项目 手把手用STM32打造联网气象站-2-从点灯到volatile
上面讲解了如何点亮LED和SoftDelay并通过例子讲解了使用和不使用volatile的区别。如果在面试中,别人问到volatile的区别,你能够把这个例子讲出来,相信肯定能够大大加分。
3.每节课都是一个项目 手把手用STM32打造联网气象站-3-STM32基础三件套-掌握GPIO初始化
讲解了GPIO初始化步骤,如何规范的使用头文件,如何避免头文件被反复包含。前面3节比较简单,是为了使得学习曲线不要太陡峭,避免课程变为劝退课。
4. 每节课都是一个项目 手把手用STM32打造联网气象站-4-STM32基础三件套-TIM定时器初始化
第四节课内容开始明显增加,重点讲解了定时器以及中断的使用方法。讲了中断分组的不同设定方式,代码是如何把中断和中断处理函数关联起来的。
5.
每节课都是一个项目 手把手用STM32打造联网气象站-5-STM32基础三件套-采用TIM定时器,实现无阻塞LED任意占空比和次数闪烁
第五节重点讲解如何使用定时器,采用定时器作为心跳,实现无阻塞的控制LED的占空比和闪烁次数。
6. 每节课都是一个项目 手把手用STM32打造联网气象站-6-STM32基础三件套-USART的初始化和使用d
第六节讲解了串口的移植方法,纸飞机串口调试助手的使用,串口常见参数,将printf映射到串口的方法。
7.每节课都是一个项目 手把手用STM32打造联网气象站-7-诚不欺我,用TIM, GPIO, USART三板斧干项目(挖坑篇)
第七节把前面的TIM定时器,GPIO, USART串口这些综合起来实现简单的番茄时钟,复杂的番茄时钟,以及摩斯密码翻译器,将字母或者数字翻译成为摩斯密码,并且通过LED和蜂鸣器播放出来。
8. 每节课都是一个项目 手把手用STM32打造联网气象站-8-面子工程-学会点亮LCD屏幕
第八节详细讲解了LCD点亮的过程,什么是8080接口,什么是RGB接口,如何用FMSC模拟8080接口,如何移植屏幕驱动,如何点亮屏幕驱动,在屏幕上画直线的方法是什么?如何在屏幕上面画矩形。
9. 每节课都是一个项目 手把手用STM32打造联网气象站-9-用LCD显示中文英文和图片
第九节讲解了中英文字库的显示方法和调用方式,以及显示单色图片和真彩色图片的方法,也包括了如用用PC2LCD和IMG2LCD创建对应字模的方法。
2. 升级你的番茄时钟
完成了前面9节课程后,我们就可以把第七节开发的番茄钟和摩斯密码翻译器进行升级。
2.1项目需求-带有屏幕显示的番茄钟
前面的番茄时钟仅仅采用LED闪烁方式来显示时间,显然不够友好。新的番茄时钟里,将在LCD上面,显示倒计时时间;并且用图片方式,显示累计完成了多少个番茄;
2.2 需求分析
根据上面描述步骤,具体实现方式如下:
2.2.1 屏幕上方用中文字体显示:番茄时钟;
2.2.2 中文下方,带有时间倒计时显示;
2.2.3 一个番茄时间到底之后,屏幕上会显示一个小番茄;
2.2.4 继续采用串口命令,实现时钟的启动和停止;
2.3 实现步骤
2.3.1屏幕代码移植
将第九讲中LCD显示中文英文图片的代码,移植到第七讲改进番茄时钟。不改动代码,仅仅进行代码移植。完成移植后,分步验证中文输出,英文输出,图像输出;
2.3.2 增加中文字库,ASCII数字,显示倒计时时间
在这里实现倒计时时间显示
2.3.3 开发番茄显示功能
制作小番茄图片,开发番茄显示函数,能够根据输入参数,显示1个到多个番茄;
2.3.4 完成总体功能
在上面基础上,完整总体功能,通过串口设置番茄时间,启动或者停止番茄,并且在屏幕上显示倒计时时间,以及完成的番茄数量。
到这里,我们完成了前面9讲内容的大致回顾,并且把前面的番茄钟升级了屏幕显示功能。接下来,我们进一步增加按键输入,温湿度查询,气压查询等功能,实现升级版本的番茄种+家庭气象站功能。