一兩年前買(mǎi)了一個(gè)OLED模塊,當(dāng)時(shí)跑了個(gè)例程能正常顯示就放著不管,前幾天拿出來(lái)玩玩怎么搞都是花屏,如下圖。

一開(kāi)始以為是OLED初始化的問(wèn)題,在網(wǎng)上搜了好幾個(gè)版本的初始化代碼都不行。
然后以為是iic時(shí)序的問(wèn)題,因?yàn)榇a中的iic協(xié)議與我當(dāng)時(shí)學(xué)習(xí)的時(shí)候有點(diǎn)差別,當(dāng)時(shí)學(xué)習(xí)iic協(xié)議的時(shí)候,在時(shí)鐘線拉高的時(shí)候,我記得是需要有一定的時(shí)間穩(wěn)定,再將數(shù)據(jù)線拉低,原先使用的代碼都沒(méi)有體現(xiàn)這個(gè),可能是因?yàn)楦鶰CU的運(yùn)行速度有關(guān)。
后面就將一開(kāi)始學(xué)習(xí)的iic協(xié)議代碼移植過(guò)來(lái),仍然還是會(huì)出現(xiàn)花屏或者是亂碼,不能正常顯示。
第三個(gè)問(wèn)題就是應(yīng)答響應(yīng),在官方的SSD1306中,進(jìn)行iic協(xié)議通信的時(shí)候,寫(xiě)入命令后都需要等待從機(jī)有一個(gè)響應(yīng)ACK,但是后面我發(fā)現(xiàn)這個(gè)ACK響應(yīng)是可以忽略的,加上ACK后反而不能正常顯示,目前還不太明白是因?yàn)槭裁础?/p>

在網(wǎng)上搜索解決方案,修改了好幾天代碼,都無(wú)法解決花屏問(wèn)題。最后看到帖子說(shuō)5v供電會(huì)燒(雖然我都沒(méi)燒),于是我就換成了3.3V供電,意外地順利,畫(huà)面很流暢地顯示出來(lái)。

終于解決問(wèn)題,OLED應(yīng)該使用3.3V供電而不是5V。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-635691.html
比較奇怪的是,當(dāng)時(shí)剛買(mǎi)回來(lái)時(shí),我用的就是5V供電,當(dāng)時(shí)的顯示是正常的,過(guò)了兩年,同樣的接線,同樣的代碼,反而無(wú)法正常顯示,不然我也就不會(huì)調(diào)試好多天了。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-635691.html
到了這里,關(guān)于關(guān)于OLED花屏的解決方案之一的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!