发现 OLED 只需要一种 6*8 字库,就可显示 16*8 字体
请见谅,这个有标题党的嫌疑,但是,这是我在调试时不小心犯错发现的一个“秘密”
当时我用 I2C 驱动,后来我又换成了 硬件 或者 模拟 I2C 驱动,结果都是一样
我估计,这个与单片机的型号没有关系,应该是 OLED 内部的问题
void IIC_WriteByte(u8 dat) //主机写单个字节
{
I2C_DR=dat;
while(!I2C_SR1_TXE);
}
把上面的代码修改成下面的代码,效果就出来了
就是重复一次发送数据而已
void IIC_WriteByte(u8 dat) //主机写单个字节
{
I2C_DR=dat;
while(!I2C_SR1_TXE);
I2C_DR=dat;
while(!I2C_SR1_TXE);
}
|