我使用悠景0.91寸12832 白光 I2C OLED 液晶显示屏 SSD1306 14PIN,在淘宝买的裸屏,屏是好的,外围驱动电路自己设计的,实际使用也没问题,下面是电路图:
驱动起来后使用感觉还是很方便的,我设计的系统是一个低功耗系统,希望单片机休眠后尽可能降低功耗,所以单独设计了电路控制进入休眠前关闭OLED电源,发现我的电路没有办法关闭电源,执行关闭代码后发现OLED电源仍然为2.8V左右,实际电源电压为3.3V,也就是主系统电源。
焊接下来OLED发现,电源输出是可以控制的,于是又焊接上OLED,把把R26 R27电阻去掉,OLED电源线割掉,这时候发现系统启动后OLED仍然工作,而且测量OLED电源电压2.8V左右,现在只有IO模拟的IIC接口和单片机通讯,难道电源是从这里进来的,感觉好奇怪,测试电路板也没有发现电源其他地方有问题,系统工作正常,就是没有办法关掉OLED电源。
下面是控制OLED的电源电路:
下面是我的电路板:
麻烦大家帮我分析分析,非常感谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
确实,休眠之前把SCL和SDA的IO口拉低,屏幕就灭了,但是唤醒后还得初始化屏幕。
你都掉电了。肯定要重新初始化呀。
不多说了,直接上代码。
void OLED_ON(void)
{
WriteCmd(0X8D); //设置电荷泵
WriteCmd(0X14); //开启电荷泵
WriteCmd(0XAF); //OLED唤醒
}
void OLED_OFF(void)
{
WriteCmd(0X8D); //设置电荷泵
WriteCmd(0X10); //关闭电荷泵
WriteCmd(0XAE); //OLED休眠
}
IIC上面的两个上拉电阻,如果可以就不要焊上去,大概有几ma的影响,你直接用芯片的内部上拉,去试试吧。功耗肯定在ua级别
非常感谢,马上试试。
一周热门 更多>