目录
一、AHT20温度传感器数据采集
1.目的
2.准备条件
3.1实现代码
3.2连接器件
3.3编译烧录
3.4运行结果
二、OLED屏显和汉字点阵编码
1.目的
使用STM32F103的SPI或IIC接口实现以下功能
2.准备
3.实现代码(显示学号和姓名)
3.1.1代码修改
3.2.2添加点阵字
3.1.3取模
3.1 4.编译烧录看看结果
4.实现代码(显示AHT20的温度和湿度)
4.1编译烧录看看结果
5.实现代码(上下或左右的滑动显示长字符)
5.1代码修改
5.2编译烧录看看结果
三、总结
参考:
一、AHT20温度传感器数据采集
1.目的
使用STM32F103完成基于I2C协议(硬件I2C完成)的AHT20温湿度传感器的数据采集,并将采集的温度-湿度值通过串口输出。编程实现:每隔2秒钟采集一次温湿度数据,并通过串口发送到上位机(win10)
###顺便说一下硬件I2C和软件I2C的差别:硬件 I2C 直接使用外设来控制引脚,可以减轻 CPU 的负担。不过使用硬件I2C 时必须使用某些固定的引脚作为 SCL 和 SDA,软件模拟 I2C 则可以使用任意 GPIO 引脚,相对比较灵活。对于硬件I2C用法比较复杂,软件I2C的流程更清楚一些。如果要详细了解I2C的协议,使用软件I2C可能更好的理解这个过程。在使用I2C过程,硬件I2C可能通信更加快,更加稳定。
2.准备条件
STM32F103C8T系列芯片、 AHT20温度传感器、pc机、串口调试助手
3.1实现代码
链接:https://pan.baidu.com/s/1TZNBqkWH_aRGktK8Wk8cTA
提取码:qwer
3.2连接器件
按图连接好器件
3.3编译烧录
先打开工程下载下来的工程文件编译
然后烧录到芯片上
3.4运行结果
gif图片调快了,实际是没两秒输出一次
二、OLED屏显和汉字点阵编码
1.目的
使用STM32F103的SPI或IIC接口实现以下功能
1) 显示自己的学号和姓名;
2) 显示AHT20的温度和湿度;
3) 上下或左右的滑动显示长字符
2.准备
在上个项目基础上加一块OLED显示屏
3.实现代码(显示学号和姓名)
链接:https://pan.baidu.com/s/1vawtPaudZmzuWdMjImrF3Q
提取码:qwer
3.1.1代码修改
找到这个test.c文件修改
3.2.2添加点阵字
由于程序中没有我名字的点阵字代码,需要自己添加
先下载一个汉字的取模工具
链接:https://pan.baidu.com/s/1hoh1iYDoNSsJI9uaOsi68g
提取码:qwer
3.1.3取模
设置字模输出选项
取模
将生成的字体代码粘贴到oledfont.h文件中
3.1 4.编译烧录看看结果
4.实现代码(显示AHT20的温度和湿度)
链接:https://pan.baidu.com/s/1fwpkkrHpujE57SGZBOXlmQ
提取码:qwer
4.1编译烧录看看结果
5.实现代码(上下或左右的滑动显示长字符)
链接:https://pan.baidu.com/s/1KhdrhXcBWLVsky-pVAXH_A
提取码:qwer
5.1代码修改
找到test.c
图片标注的地方输入想显示的内容
添加所需文字的点阵字
重复上一个实验的步骤
5.2编译烧录看看结果
三、总结
过程主要是对应字库的一个了解,跟着代码注释一点点分析,进一步理解stm32的编译原理,加深了各种器件搭配STM32的操作过程。
参考:
基于STM32的0.96寸OLED显示屏显示数据_Harriet的博客-CSDN博客_基于stm32的oled显示时间
基于I2C的AHT20温度采集器以及基于SPI协议OLED显示_Laul Ken-Yi的博客-CSDN博客