1-1 LCD1306显示与控制

如何开启LCD1306的显示与控制,根据手册找到开启的顺序如下图所示:

根据官方手册给定的步骤开启LCD1306显示

cpp 复制代码
// OLED显示初始化
void OLED_Init(void)
{
    // 初始化OLED
    MyI2C_Init();

    OLED_WriteCommand(0xAE); // 设置显示开启/关闭,0xAE关闭,0xAF开启

    OLED_WriteCommand(0xD5); // 设置显示时钟分频比/振荡器频率
    OLED_WriteCommand(0x80); // 0x00~0xFF

    OLED_WriteCommand(0xA8); // 设置多路复用率
    OLED_WriteCommand(0x3F); // 0x0E~0x3F

    OLED_WriteCommand(0xD3); // 设置显示偏移
    OLED_WriteCommand(0x00); // 0x00~0x7F

    OLED_WriteCommand(0x40); // 设置显示开始行,0x40~0x7F

    OLED_WriteCommand(0xA1); // 设置左右方向,0xA1正常,0xA0左右反置

    OLED_WriteCommand(0xC8); // 设置上下方向,0xC8正常,0xC0上下反置

    OLED_WriteCommand(0xDA); // 设置COM引脚硬件配置
    OLED_WriteCommand(0x12);

    OLED_WriteCommand(0x81); // 设置对比度
    OLED_WriteCommand(0xCF); // 0x00~0xFF

    OLED_WriteCommand(0xD9); // 设置预充电周期
    OLED_WriteCommand(0xF1);

    OLED_WriteCommand(0xDB); // 设置VCOMH取消选择级别
    OLED_WriteCommand(0x30);

    OLED_WriteCommand(0xA4); // 设置整个显示打开/关闭

    OLED_WriteCommand(0xA6); // 设置正常/反色显示,0xA6正常,0xA7反色

    OLED_WriteCommand(0x8D); // 设置充电泵
    OLED_WriteCommand(0x14);

    OLED_WriteCommand(0xAF); // 开启显示
}

IIC 初始化显示

cpp 复制代码
/**
  * 函    数:I2C初始化
  * 参    数:无
  * 返 回 值:无
  * 注意事项:此函数需要用户实现内容,实现SCL和SDA引脚的初始化
  */
void MyI2C_Init(void)
{
	/*开启时钟*/
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);	//开启GPIOB的时钟
	
	/*GPIO初始化*/
	GPIO_InitTypeDef GPIO_InitStructure;
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO_Pin_9;
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_Init(GPIOB, &GPIO_InitStructure);					//将PB10和PB11引脚初始化为开漏输出
	
	/*设置默认电平*/
	GPIO_SetBits(GPIOB, GPIO_Pin_8 | GPIO_Pin_9);			//设置PB10和PB11引脚初始化后默认为高电平(释放总线状态)
}

....

相关推荐
小曹要微笑3 小时前
STM32F7 时钟树简讲(快速入门)
c语言·stm32·单片机·嵌入式硬件·算法
XINVRY-FPGA3 小时前
XCVP1802-2MSILSVC4072 AMD Xilinx Versal Premium Adaptive SoC FPGA
人工智能·嵌入式硬件·fpga开发·数据挖掘·云计算·硬件工程·fpga
沐欣工作室_lvyiyi4 小时前
家用按摩椅控制系统设计(论文+源码)
单片机·物联网·毕业设计·按摩椅控制系统
天天爱吃肉82186 小时前
电机控制技术深度解析:从基础原理到前沿实战
python·嵌入式硬件·汽车
学习路上_write6 小时前
FREERTOS_互斥量_创建和使用
c语言·开发语言·c++·stm32·单片机·嵌入式硬件
czhaii7 小时前
单片机RTOS“实时响应时间”的定义与测量方法
单片机
DIY机器人工房8 小时前
简单理解:什么是EMC 整改?
stm32·单片机·嵌入式硬件·面试题·emc·diy机器人工房
偶像你挑的噻18 小时前
11-Linux驱动开发-I2C子系统–mpu6050简单数据透传驱动
linux·驱动开发·stm32·嵌入式硬件
Chat_zhanggong34520 小时前
K4A8G165WC-BITD产品推荐
人工智能·嵌入式硬件·算法