OLED硬件IIC HAL库 (硬件SPI使用注意事项)

文章介绍了IIC地址的结构,指出OLED的IIC地址为0x78,且仅支持写操作。提供了HAL库中的I2C内存写函数用于向OLED发送控制命令和数据。强调了IIC需加上拉电阻,并提到模拟IIC的开漏输出模式可用于共享总线和双向通信。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

配置 

注:IIC地址实际只有7位,加上最低位的读写位,一共8位。部分手册已经把读写位包含在地址中。

写0,读1.

由于OLED只有写数据,所以8位地址是0x78.最低位是0

.如果带有读写的功能芯片,在程序中IIC地址中填入8位写即可,因为在读时,hal库中会自动+1。

调用函数

这里只配置了最基础的写数据,直接在其他驱动程序函数中替换

void WriteCmd()
{
	uint8_t i = 0;
	for(i=0; i<27; i++){
		HAL_I2C_Mem_Write(&hi2c1 ,0x78,0x00,I2C_MEMADD_SIZE_8BIT,CMD_Data+i,1,0x100);
	}
}
//向设备写控制命令
void OLED_WR_CMD(uint8_t cmd)
{
	HAL_I2C_Mem_Write(&hi2c1 ,0x78,0x00,I2C_MEMADD_SIZE_8BIT,&cmd,1,0x100);
}
//向设备写数据
void OLED_WR_DATA(uint8_t data)
{
	HAL_I2C_Mem_Write(&hi2c1 ,0x78,0x40,I2C_MEMADD_SIZE_8BIT,&data,1,0x100);
}

注:IIC必须加上拉电阻,使用模拟IIC可以设置为开漏输出模式,实现共享总线和双向通信。无需重复配置输入输出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

随风飘零翼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值