本例程主要讲解如何点亮0.96寸的OLED屏幕,本例程采用的是STM32F030R8T6,64K大小的Flash。 硬件准备 首先需要准备一个开发板,这里我准备的是NUCLEO-F030R8的开发板。 OLED显示屏就是淘宝上IIC接口的12864模块。 选择芯片型号 使用STM32CUBEMX选择芯片stm32f030r8,如下所示: 配置时钟源 HSE与LSE
STM32CUBEMX--IIC,12864OLED移植 概述 硬件准备 选择芯片型号 配置时钟源 配置时钟树 IIC配置 生成工程设置 生成代码 配置keil 驱动代码 oled.c oled.h oledfont.h 取模 取模软件设置 主程序 演示效果 最后 概述 I2C总线硬件简单,资源消耗少,只有时钟和数据线。本例程主要讲解如何点亮0.96寸的OLED屏幕,本例程...
OLED_WR_CMD(0X8D);//SETDCDC命令OLED_WR_CMD(0X14);//DCDC ONOLED_WR_CMD(0XAF);//DISPLAY ON}//关闭OLED显示voidOLED_Display_Off(void){ OLED_WR_CMD(0X8D);//SET DCDC命令OLED_WR_CMD(0X10);//DCDC OFFOLED_WR_CMD(0XAE);//DISPLAY OFF}//坐标设置voidOLED_Set_Pos(uint8_tx,uint8_ty...
查看oled.c,可以看到是模拟iic,这些都可以注释不要,我们使用的是iIC,不是模拟。 HAL_I2C_Mem_Write() IIC写固定的设备写入数据。 记得导入#include "i2c.h" 将HAL_I2C_Mem_Write函数放入oled.c中。 例如将Write_IIC_Command函数修改为HAL_I2C_Mem_Write发送方式。 向0x78设备写命令0x00的IIC_Command指令。
本例程主要讲解如何点亮0.96寸的OLED屏幕,本例程采用的是STM32F030R8T6,64K大小的Flash。 硬件准备 首先需要准备一个开发板,这里我准备的是NUCLEO-F030R8的开发板: OLED显示屏就是淘宝上IIC接口的12864模块。 选择芯片型号 配置时钟源 HSE与LSE分别为外部高速时钟和低速时钟,在本文中使用内置的时钟源,故都选择Disable...
这里使用0.96OLED显示屏_STM32F103C8_IIC_V1.0来进行移植 查看工程可以知道主要是有3个文件来进行OLED的驱动,移入OLE.h .c 、oledfont.h 、 bmp.h 移入文件之后要注意导入C文件。 删除没有用的头文件 删除sys.h文件 删除delay.h文件 可以查看stdint.h ...
这里使用0.96OLED显示屏_STM32F103C8_IIC_V1.0来进行移植 查看工程可以知道主要是有3个文件来进行OLED的驱动,移入OLE.h .c 、oledfont.h 、 bmp.h 移入文件之后要注意导入C文件。 删除没有用的头文件 删除sys.h文件 删除delay.h文件 可以查看stdint.h 在oled.h中添加u8 u32定义 也可以直接修改 ...
二、OLED使用 (天下文章一大抄,网上的驱动程序基本都一样,只是很难找到用HAL库的,我们只需要把标准库的程序改为HAL库就行了,建议搞清楚IIC基本原理。) 源码在百度链接里,这里写一下我修改的地方,源码内原始的只注释掉了,并没有删除,很容易识别。
(与IIC相比,这个就是信号线,由主机向从机发送数据,即SDA) (4) MISO(Master Input,,Slave Output): 主设备输入/从设备输出引脚。主机从这条信线读入数据,从机的数据由这条信号线输出到主机,即在这条线上数据的方向为从机到主机。 (从机向主机发送数据,使用触摸屏时需要这根线。如果单纯使用LCD来显示,这根...
常用的OLED屏幕有蓝色、黄色、白色等几种。屏的大小为0.96寸,像素点为128*64,所以我们称为0.96oled屏或者12864屏。 这类屏幕大部分是由SSD1306来驱动的,查看数据手册在这:SSD1306Z 1. OLED引脚 2. OLED屏幕像素与GDDRAM (Graphic Display Data RAM) ...