摘要:文章目录一原理二实现显示中文滚动显示显示字符串读取温湿度显示温湿度三结果开机显示欢迎信息循环读取温湿度以及滚动显示我的四总结五参考六源码一原理的定义就是串行外围设备接口。
SPI的定义
SPI(Serial Peripheral Interface)就是串行外围设备接口。
SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚。SPI 是一个环形总线结构,由 ss(cs)、sck、sdi、sdo 构成,时序主要是在 sck 的控制下,两个双向移位寄存器进行数据交换。
上升沿发送、下降沿接收、高位先发送。
上升沿到来的时候,sdo 上的电平将被发送到从设备的寄存器中。
下降沿到来的时候,sdi 上的电平将被接收到主设备的寄存器中。
代码过于多,只展示部分核心代码.更多代码可以直接下载源码
把需要显示的中文字符存放在该文件里面
通过提取子模软件提取对应汉字的点阵,点阵大小为16*16
在main函数中调用显示中文的函数
GUI_ShowCHinese(10,0,16,"重庆交通大学",1);
函数原型
水平滚动
OLED_WR_Byte(0x2E,OLED_CMD); //关闭滚动 OLED_WR_Byte(0x27,OLED_CMD); //水平向左或者右滚动 26/27 OLED_WR_Byte(0x00,OLED_CMD); //虚拟字节 OLED_WR_Byte(0x00,OLED_CMD); //起始页 0 OLED_WR_Byte(0x07,OLED_CMD); //滚动时间间隔 OLED_WR_Byte(0x02,OLED_CMD); //终止页 2 OLED_WR_Byte(0x00,OLED_CMD); //虚拟字节 OLED_WR_Byte(0xFF,OLED_CMD); //虚拟字节 //博客id GUI_ShowCHinese(10,0,16,"醉意丶千层梦",1); //开启滚动 OLED_WR_Byte(0x2F,OLED_CMD);
垂直滚动
OLED_WR_Byte(0x2e,OLED_CMD); //关闭滚动OLED_WR_Byte(0x29,OLED_CMD); //水平垂直和水平滚动左右 29/2aOLED_WR_Byte(0x00,OLED_CMD); //虚拟字节OLED_WR_Byte(0x00,OLED_CMD); //起始页 0OLED_WR_Byte(0x07,OLED_CMD); //滚动时间间隔OLED_WR_Byte(0x07,OLED_CMD); //终止页 1OLED_WR_Byte(0x01,OLED_CMD); //垂直滚动偏移量OLED_WR_Byte(0x2F,OLED_CMD); //开启滚动
GUI_ShowString(10,24,"631907060520",16,1);
函数原型
参考前面的博客STM32F103基于I2C协议的AHT20温湿度传感器的数据采集 了解如何获取温湿度的值
AHT20_Read_CTdata(CT_data);; //crc校验后,读取AHT20的温度和湿度数据 c1 = CT_data[0]*1000/1024/1024; //计算得到湿度值c1(放大了10倍) t1 = CT_data[1]*2000/1024/1024-500;//计算得到温度值t1(放大了10倍) //转为字符串易于显示 temp[0]=t1/100+"0"; temp[1]=(t1/10)%10+"0"; temp[2]="."; temp[3]=t1%10+"0"; temp[4]="/0"; hum[0]=c1/100+"0"; hum[1]=(c1/10)%10+"0"; hum[2]="."; hum[3]=c1%10+"0"; hum[4]=32; hum[5]="%"; hum[6]="/0";
//显示温度 GUI_ShowCHinese(15,28,16,"温度",1); GUI_ShowString(47,28,":",16,1); GUI_ShowString(62,28,temp,16,1); GUI_ShowCHinese(96,28,16,"℃",1); //显示湿度 GUI_ShowCHinese(15,48,16,"湿度",1); GUI_ShowString(47,48,":",16,1); GUI_ShowString(62,48,hum,16,1);
结合oled显示数据,可以使得数据可视化更加方便
https://github.com/TangtangSix/Stm32OLED
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/124048.html
摘要:带中文字库的是一种具有位位并行线或线串行多种接口方式,内部含有国标一级二级简体中文字库的点阵图形液晶显示模块其显示分辨率为。贴片按键模块支持标准的协议,完整的协议栈。以最低成本提供最大实用性,为功能嵌入其他系统提供无限可能。 项目简介 开发环境: Keil5.14,CubeMX6.0.1,主...
摘要:总线挂载的外设有等。外设地址映射片上外设区分为三条总线,根据外设速度的不同,不同总线挂载着不同的外设,挂载低速外设,和挂载高速外设。 第二章 STM32资源介绍 2...
基于STM32f103c8t6和L292N驱动设计避障小车(核心函数的建立为自己所写) 一.项目感触 完成这个项目自己一开始也是无法从本身上出发,看着这个最小系统板和这个电机驱动模块上面想着怎样实现让这两块板子实现四个电机上面转动呢,还要加入避障模块,自己一开始一头雾水,于是开始了漫长的借鉴之路,首先作为一个开发者,我觉得学习的地方首选是B站,所以我找了相关的做智能小车的视频 首先是B站智能小车教...
摘要:已初始化的读写数据,程序中定义并且初始化的全局变量和静态变量位于此处。好了,初步移植要点讲完了,下一篇文章讲内核配置文件函数启动后如何进入鸿蒙轻量内核。 9月30日,OpenHarmony 3.0 LTS版本发布,新版介绍见OpenHarmony 3.0 发布:OpenHarmony 3.0...
阅读 3857·2021-11-22 09:34
阅读 1449·2021-11-04 16:10
阅读 1690·2021-10-11 10:59
阅读 3240·2019-08-30 15:44
阅读 2001·2019-08-30 13:17
阅读 3401·2019-08-30 11:05
阅读 704·2019-08-29 14:02
阅读 2564·2019-08-26 13:34