IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> K_A00_002 基于单片机驱动OLED 0.91 字符/切换图片/滚动显示 -> 正文阅读

[嵌入式]K_A00_002 基于单片机驱动OLED 0.91 字符/切换图片/滚动显示

目录

一、资源说明

二、基本参数

三、通信协议说明

? ? ? ? IIC通信

? ? ? ?1、起始信号

? ? ? ? 2、停止信号

? ? ? ? 3、等待应答

? ? ? ? 4、发送数据

四、部分代码说明

? ? ? ? 1、接线说明

? ? ? ? 2、背光参数

五、相关资料

六、字符图片提取格式

?七、视频效果展示与程序资料获取

八、项目所有材料清单

?九、注意事项

十、接线表格


一、资源说明

单片机型号

测试条件

模块名称

代码功能

STC89C52RC

1.晶振11.0592M

OLED 0.91(4针 IIC)

  1. 0.91OLED显示分秒时钟
  2. 0.91OLED显示文字
  3. 0.91OLED切换显示图片
  4. 0.91OLED文字滚动显示

STM32F103C8T6

  1. 晶振8M
  2. 系统时钟72M

OLED 0.91(4针 IIC)

二、基本参数

  1. 一般使用主要关注驱动芯片,分辨率,通信接口,供电电压。

????

  1. 引脚说明

4针IIC引脚

引脚说明

GND

GND引脚接电源地,如果外接电源,一般必须共地

VCC

VCC电源引脚,可接3.3V或5V,推荐3.3V

SCL

IIC时钟线

SDA

IIC数据线

三、通信协议说明

? ? ? ? IIC通信

? ? ? ? ? 1、起始信号

????????????????时序图:

?????????????????代码:

//IIC Start
void IIC_Start()
{
   OLED_SCL_High;		
   OLED_SDA_High;
	 IIC_Delay();
   OLED_SDA_Low;
	 IIC_Delay();
   OLED_SCL_Low;
}

? ? ? ? 2、停止信号

?????????????时序图:

??????????????????代码:

//IIC Stop
void IIC_Stop()
{
   OLED_SCL_Low;
   OLED_SDA_Low;
	 IIC_Delay();
	 OLED_SCL_High;		
   OLED_SDA_High;
}

? ? ? ? 3、等待应答

?????????????时序图:

???????????????????代码:

//等待信号响应,对应答信号进行判断并添加返回值
uint8_t I2C_WaitAck(void) //测数据信号的电平
{
	uint8_t Ack_Sta;
	OLED_SDA_High;
	IIC_Delay();
	OLED_SCL_High;
	IIC_Delay();
	if(OLED_SDA)
	{
		Ack_Sta = 1;
	}
	else
	{
		Ack_Sta = 0;
	}
	OLED_SCL_Low;
	IIC_Delay();
	return Ack_Sta;
}

? ? ? ? 4、发送数据

?????????????时序图:

????????????????????代码:

// 通过I2C总线写一个字节
uint8_t Write_IIC_Byte(uint8_t IIC_Byte)
{
	uint8_t i;
	for(i=0;i<8;i++)
	{
		if(IIC_Byte & 0x80)
		{
			OLED_SDA_High;
		}
		else
		{
			OLED_SDA_Low;
		}
		IIC_Delay();
		OLED_SCL_High;
		IIC_Delay();
		OLED_SCL_Low;
		IIC_Byte<<=1;
	}
  return I2C_WaitAck();
}

四、部分代码说明

? ? ? ? 1、接线说明

需要自定义引脚可在此处更改,STM32要自定义引脚的话也要注意引脚时钟使能的更改

????????1.1、STC89C52RC+4针OLED(IIC)

sbit OLED_SCL = P1^0; //串行时钟

sbit OLED_SDA = P1^1; //串行数据

sbit OLED_RES = P1^2; //

????????1.2、STM32F103C8T6+4针OLED(IIC)

//IIC 对应IO口高低电平 宏定义

//RES引脚

#define ??????OLED_RES_CLK ????????????????RCC_APB2Periph_GPIOB ??

#define ??????OLED_RES_PORT ???????????????GPIOB ??

#define ??????OLED_RES_PIN ????????????????GPIO_Pin_5

//SCL//DO

#define ??????OLED_SCL_CLK ????????????????RCC_APB2Periph_GPIOB ???

#define ??????OLED_SCL_PORT ???????????????GPIOB

#define ??????OLED_SCL_PIN ????????????????GPIO_Pin_6 ?????

//SDA//DI

#define ??????OLED_SDA_CLK ????????????????RCC_APB2Periph_GPIOB ???

#define ??????OLED_SDA_PORT ???????????????GPIOB

#define ??????OLED_SDA_PIN ????????????????GPIO_Pin_7

? ? ? ? 2、背光参数

????????如需改OLED显示亮度可改Brightness宏定义,范围0x00~0xff,

//背光亮度调节宏定义,0x00~0xff

#define Brightness 0xCF

WriteCmd(0x81); //--set contrast control register//设置对比度,也就是亮度

WriteCmd(Brightness); //亮度调节 0x00~0xff

五、相关资料

  1. STC89C52RC程序下载 直戳跳转
  2. STM32F103C8T6程序下载
    1. 串口下载????????????????直戳跳转?
    2. ST-LINK下载?????????????直戳跳转
    3. J-LINK下载??????????????直戳跳转
    4. DAP-LINK下载????????????直戳跳转
  3. 字符软件使用 ? ?直戳跳转

六、字符图片提取格式

文字格式:共阴——列行式——逆向——C51——行前后缀括号去掉

图像格式:共阴——列行式——逆向——C51——行前后缀括号去掉

?七、视频效果展示与程序资料获取

????????视频连接? ? 直戳跳转

????????资料获取? ? 直戳跳转

八、项目所有材料清单

STC89C52RC驱动方案图片STM32F103C8T6驱动方案图片

备注

K_A00_002

STC89C52RC系统板X1

STM32F103C8T6系统板X1

  1. OLED4针和7针看需要选一种即可
  2. STM32系统板两根Micro USB线一根用于J-LINK下载器,另一根用于给系统板供电
  3. 杜邦线建议不用太长的
OLED 0.91 4针X1OLED 0.91 4针X1
Micro USB线X1Micro USB线X1
母母杜邦线X7母母杜邦线X7
J-LINK下载器

?九、注意事项

  1. VCC GND请勿接反,接反易烧
  2. 显示异常时,排除接线接触不良
  3. 同程序换其他同类屏幕后需要按单片机复位才会正常显示
  4. 不同尺寸OLED屏幕程序并不完全兼容
  5. 下载后显示多出一些杂点的时候可以重新上电复位下?

十、接线表格

单片机型号

模块

对应引脚(上:模块引脚 下:单片机引脚)

STM32F103

C8T6

OLED0.91??4针(IIC)

GND

VCC

SCL

SDA

RES

备注:OLED0.91?RES可不接

GND

3.3V

PB6

PB7

STC89C52RC

OLED0.91??4针(IIC)

GND

VCC

SCL

SDA

RES

GND

3.3V

P1.0

P1.1


?

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-10-22 21:31:28  更:2022-10-22 21:33:28 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 18:34:59-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码