前言:上一篇博客介绍了IIC通信,这篇我们就来玩玩oled模块。当然选用的是IIC接口,因为市面上还有一种是SPI接口的。对于oled长啥样,采用了什么材料,工艺怎么怎么样等等这里就不作任何介绍,搞得眼花缭乱的,对我们用它做开发也没任何帮助,同时节省读者阅读时间。为什么会有这种想法,就是因为发现一些博客在无关紧要的东西方面写了大半篇幅,而在实现原理方面草草了之,再放点代码,贴个效果实现图就算完事了,虚的一批。所以想自己写点东西,话不多说,下面直接开干,上技术活。强调:相关IIC通信代码请参考我的上篇博客1、写模式——写命令与写数据当我们拿到一个硬件产品准备做开发时,毫无疑问首先要做的就是参考产
STM32F103系列_OLED屏幕(SSD1306、SSD1315驱动)SPI驱动【DMA】(高刷)一、SSD1306和SSD1315二、电路原理图(SPI接法)三、STM32_SPI四、STM32_DMA五、代码OLED.cOLED.hOLED_Library.hDelay.h六、调用方法例:main.c七、该库函数的优缺点优点缺点一、SSD1306和SSD1315分辨率都是128*64,电压都在3.3V最佳,这两者可互相替代,但价格上SSD1315会比SSD1306便宜,毕竟用的人少。二、电路原理图(SPI接法)为了提高屏幕的刷新速度(帧率),SPI接法远远优于IIC接法。电路图如下:其
前言最近在学习如何实现oled多级菜单时,查看了大多数博主发的文章,大概似懂的文章内容可让我好一阵思考,于是我觉得应该有一篇更加简单易懂的文章能轻易上手;我们实现项目时一定先要准备以下知识点:1.结构体2.结构体数组3.函数指针(如果还有没有这方面的C语言知识,可以阅读相关博客学习,因为只有我们了解了这些知识后,才不会望而却步!)一、定义一个结构体定义一个结构体,结构体里面应当有你想要怎样操作界面的变量等,一般包括:1.当前索引号,2.下一个,3.确定,4.当前执行函数的函数指针;我这里使用两个按键,一个表切换下一个,一个表确定。//定义一个结构体包含你想操作内容typedefstruct{
本文将介绍如何使用STM32F103C8T6单片机和HC-SR04超声波测距模块来实现测距功能,并通过0.96寸OLED屏幕显示测距结果。首先,我们需要了解一下HC-SR04超声波测距模块的工作原理。该模块通过发送超声波脉冲并接收回波信号的时间来计算物体与模块之间的距离。具体实现过程如下:发送一个10微秒的高电平脉冲至Trig引脚,该脉冲将触发模块发送一组8个40kHz的超声波脉冲。当超声波脉冲发射后,模块将Echo引脚输出高电平,并持续时间与超声波传播路径的长度成正比。使用STM32F103C8T6单片机的定时器(Timer)来测量Echo引脚输出高电平的时间,即为超声波传播路径的时间t。计
学习过程不易,发文共享以下学习过程~先说说我的设计内容的组成:目录学习过程不易,发文共享以下学习过程~1.STM32控制ESP8266获取网络时间第一步:电脑控制ESP8266获取时间数据;2.STM32基于获取到的时间使用定时器本地运行3.使用OLED显示时间数据,包括自定义的文字显示,图片显示,视频显示;4.完整的工程代码1.STM32控制ESP8266获取网络时间为了更好的理解原理,可以先从电脑通过串口控制ESP8266获取时间数据开始入手学习。为此需要准备以下的软件和硬件1.ESP8266-01S(其他ESP8266应该也可以)2.一个烧录下载器3.正点原子的串口助手第一步:电脑控制E
文章目录前言1SPI简介2OLED简介3OLED显示姓名学号3.1显示汉字字模3.2主要程序代码分析如下3.3效果展示4OLED滚动显示4.1滚屏设置4.2代码撰写4.3效果展示5OLED显示AHT20的温度和湿度5.1代码撰写5.2效果展示总结前言软件版本STM32CubeMX6.40Keil531硬件STM32F103C8T6题目要求理解OLED屏显和汉字点阵编码原理,使用STM32F103的SPI或IIC接口实现以下功能:显示自己的学号和姓名;显示AHT20的温度和湿度;上下或左右的滑动显示长字符,如一段歌词或诗词(最好使用硬件刷屏模式)。1SPI简介SPI(SerialPeripher
K_A12_033基于STM32等单片机驱动TCS34725颜色传感串口与OLED0.96双显示一、资源说明二、基本参数参数引脚说明三、驱动说明时序对应程序:四、部分代码说明1、接线引脚定义1.1、STC89C52RC+TCS34725颜色传感模块1.2、STM32F103C8T6+TCS34725颜色传感模块五、基础知识学习与相关资料下载六、视频效果展示与程序资料获取七、注意事项八、接线说明STC89C52RCSTM32F103C8T6一、资源说明单片机型号测试条件模块名称代码功能STC89C52RC晶振11.0592MTCS34725颜色传感模块STC89C52RC驱动TCS34725颜色
0.96寸OLED显示汉字图片及简单GIF只是做一些简单显示,具体逻辑大家自行添加。网上的OLED驱动很多,我懂的也不是很深,这里就不说了,我这里用的是中景园的驱动。这里重点说怎么改可以显示这些东西。首先我们需要两个重要的东西,一个是字取模软件,另一个是图片的处理取模软件。感谢大佬。显示汉字首先我们打开PCtoLCD2002。将取模软件设置为这样的然后在1中输入我们要显示的汉字,复制2中的hex码。放到程序中16*16显示的数组中。.然后调用OLED_ShowCHinese(0,0,0);//加去显示,第一、二个参数是起始显示的x、y的位置,第三个参数是显示数组中第几个字。这样就可以了。cha
首先想要使用oled需要知道oled的一些使用协议最简单的oled分为7PIN和4PIN分别为IIC协议和SPI协议一般使用oled的时候都是通过单片机IO口去模拟IIC或者SPI协议的时序进行通信的,这里oled的两种协议也具有非常成熟的函数封装。当然笔者这里也提供了oled对应的函数方便移植。好了,接下来就是关于Protues中仿真的oled代码移植步骤,首先确定使用的oeld是7PIN还是4PIN找到对应的库,将其添加进自己建立的工程中:并且在对应工程存放.h文件夹中添加oled对应的.h头文件也可以单独在工程目录下建立oled的文件夹然后将.h文件的目录添加进来即可 之后只需要修改对应
首先想要使用oled需要知道oled的一些使用协议最简单的oled分为7PIN和4PIN分别为IIC协议和SPI协议一般使用oled的时候都是通过单片机IO口去模拟IIC或者SPI协议的时序进行通信的,这里oled的两种协议也具有非常成熟的函数封装。当然笔者这里也提供了oled对应的函数方便移植。好了,接下来就是关于Protues中仿真的oled代码移植步骤,首先确定使用的oeld是7PIN还是4PIN找到对应的库,将其添加进自己建立的工程中:并且在对应工程存放.h文件夹中添加oled对应的.h头文件也可以单独在工程目录下建立oled的文件夹然后将.h文件的目录添加进来即可 之后只需要修改对应