欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 4137|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

關(guān)于0.91寸oled的ssd1306時(shí)序問(wèn)題

[復(fù)制鏈接]
回帖獎(jiǎng)勵(lì) 2 黑幣 回復(fù)本帖可獲得 2 黑幣獎(jiǎng)勵(lì)! 每人限 3 次(中獎(jiǎng)概率 70%)
跳轉(zhuǎn)到指定樓層
樓主
本帖最后由 xda 于 2020-2-27 11:07 編輯

說(shuō)起來(lái)奇怪,在開(kāi)始使用中景園的歷程點(diǎn)亮oled的時(shí)候,發(fā)現(xiàn)iic的初始化時(shí)序部分居然可以用spi的,查看ssd1306的手冊(cè)許久,也沒(méi)看出來(lái)所以然
只變了時(shí)序部分,我會(huì)在下面貼出來(lái),其他什么都沒(méi)變,為什么顯示會(huì)有這么大差別呢,到底是我哪里沒(méi)注意到,,望大神指點(diǎn)
===================================iic原本時(shí)序===========================================

delay_ms(200);
OLED_WR_Byte(0xAE,OLED_CMD);//關(guān)閉顯示
        
        OLED_WR_Byte(0xf0,OLED_CMD);//---set low column address
        OLED_WR_Byte(0x0f,OLED_CMD);//---set high column address

        OLED_WR_Byte(0xC8,OLED_CMD);//-not offset

        OLED_WR_Byte(0x81,OLED_CMD);//設(shè)置對(duì)比度
        OLED_WR_Byte(0xff,OLED_CMD);

        OLED_WR_Byte(0xa1,OLED_CMD);//段重定向設(shè)置

        OLED_WR_Byte(0xa6,OLED_CMD);//
        
        OLED_WR_Byte(0xa8,OLED_CMD);//設(shè)置驅(qū)動(dòng)路數(shù)
        OLED_WR_Byte(0x1f,OLED_CMD);
        
        OLED_WR_Byte(0xd3,OLED_CMD);
        OLED_WR_Byte(0x00,OLED_CMD);
        
        OLED_WR_Byte(0xd5,OLED_CMD);
        OLED_WR_Byte(0xf0,OLED_CMD);
        
        OLED_WR_Byte(0xd9,OLED_CMD);
        OLED_WR_Byte(0x22,OLED_CMD);
        
        OLED_WR_Byte(0xda,OLED_CMD);
        OLED_WR_Byte(0x02,OLED_CMD);
        
        OLED_WR_Byte(0xdb,OLED_CMD);
        OLED_WR_Byte(0x49,OLED_CMD);
        
        OLED_WR_Byte(0x8d,OLED_CMD);
        OLED_WR_Byte(0x14,OLED_CMD);
        
        OLED_WR_Byte(0xaf,OLED_CMD);
        OLED_Clear();


===================================iic原本時(shí)序===========================================
===================================移植spi時(shí)序===========================================
OLED_WR_Byte(0xAE,OLED_CMD);//--turn off oled panel
//        OLED_WR_Byte(0xf0,OLED_CMD);//---set low column address
//        OLED_WR_Byte(0x0f,OLED_CMD);//---set high column address
//        OLED_WR_Byte(0x40,OLED_CMD);//--set start line address  Set Mapping RAM Display Start Line (0x00~0x3F)
//        OLED_WR_Byte(0x81,OLED_CMD);//--set contrast control register
//        OLED_WR_Byte(0xCF,OLED_CMD); // Set SEG Output Current Brightness
//        OLED_WR_Byte(0xA1,OLED_CMD);//--Set SEG/Column Mapping     0xa0左右反置 0xa1正常
//        OLED_WR_Byte(0xC8,OLED_CMD);//Set COM/Row Scan Direction   0xc0上下反置 0xc8正常
//        OLED_WR_Byte(0xA6,OLED_CMD);//--set normal display
//        OLED_WR_Byte(0xA8,OLED_CMD);//--set multiplex ratio(1 to 64)
//        OLED_WR_Byte(0x3f,OLED_CMD);//--1/64 duty
//        OLED_WR_Byte(0xD3,OLED_CMD);//-set display offset        Shift Mapping RAM Counter (0x00~0x3F)
//        OLED_WR_Byte(0x00,OLED_CMD);//-not offset
//        OLED_WR_Byte(0xd5,OLED_CMD);//--set display clock divide ratio/oscillator frequency
//        OLED_WR_Byte(0x80,OLED_CMD);//--set divide ratio, Set Clock as 100 Frames/Sec
//        OLED_WR_Byte(0xD9,OLED_CMD);//--set pre-charge period
//        OLED_WR_Byte(0xF1,OLED_CMD);//Set Pre-Charge as 15 Clocks & Discharge as 1 Clock
//        OLED_WR_Byte(0xDA,OLED_CMD);//--set com pins hardware configuration
//        OLED_WR_Byte(0x12,OLED_CMD);
//        OLED_WR_Byte(0xDB,OLED_CMD);//--set vcomh
//        OLED_WR_Byte(0x40,OLED_CMD);//Set VCOM Deselect Level
//        OLED_WR_Byte(0x20,OLED_CMD);//-Set Page Addressing Mode (0x00/0x01/0x02)
//        OLED_WR_Byte(0x02,OLED_CMD);//
//        OLED_WR_Byte(0x8D,OLED_CMD);//--set Charge Pump enable/disable
//        OLED_WR_Byte(0x14,OLED_CMD);//--set(0x10) disable
//        OLED_WR_Byte(0xA4,OLED_CMD);// Disable Entire Display On (0xa4/0xa5)
//        OLED_WR_Byte(0xA6,OLED_CMD);// Disable Inverse Display On (0xa6/a7)
//        OLED_WR_Byte(0xAF,OLED_CMD);//--turn on oled panel
//        
//        OLED_WR_Byte(0xAF,OLED_CMD); /*display ON*/
//        OLED_Clear();
//        OLED_Set_Pos(0,0);

===================================移植spi時(shí)序(去掉屏蔽符號(hào))======================================

這兩個(gè)到底哪里不同會(huì)導(dǎo)致字體大小差異呢,其他函數(shù)都沒(méi)變,一點(diǎn)都沒(méi)改過(guò),偶爾在點(diǎn)屏的時(shí)候發(fā)現(xiàn)的一點(diǎn)小意外

IMG_20200225_113448.jpg (4.72 MB, 下載次數(shù): 59)

iic原本的時(shí)序顯示圖

iic原本的時(shí)序顯示圖

IMG_20200225_113246.jpg (4.92 MB, 下載次數(shù): 57)

移植spi時(shí)序的顯示圖

移植spi時(shí)序的顯示圖

IMG_20200225_113355.jpg (5 MB, 下載次數(shù): 69)

移植spi時(shí)序的顯示圖

移植spi時(shí)序的顯示圖
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:248659 發(fā)表于 2020-2-26 09:41 | 只看該作者
真就沒(méi)人知道嗎
回復(fù)

使用道具 舉報(bào)

板凳
ID:248659 發(fā)表于 2020-3-11 17:20 | 只看該作者
自頂,有大神知道這個(gè)問(wèn)題怎么解決不
回復(fù)

使用道具 舉報(bào)

地板
ID:401564 發(fā)表于 2020-3-11 20:03 | 只看該作者
你把SPI的函數(shù)的先后順序排得和IIC的一模一樣試一下,有一些是雙字節(jié)命令,順序是不能變的
回復(fù)

使用道具 舉報(bào)

5#
無(wú)效樓層,該帖已經(jīng)被刪除
6#
ID:248659 發(fā)表于 2020-3-15 22:38 | 只看該作者
Y_G_G 發(fā)表于 2020-3-11 20:03
你把SPI的函數(shù)的先后順序排得和IIC的一模一樣試一下,有一些是雙字節(jié)命令,順序是不能變的

我調(diào)整了部分spi初始化時(shí)許,但是還是一樣的字體。很好奇,因?yàn)檫@個(gè)屏幕我一般用的是iic驅(qū)動(dòng),然后字體都是默認(rèn)16*16的,再用spi時(shí)序操作的時(shí)候沒(méi)有選擇(就只動(dòng)時(shí)序其他代碼一律不動(dòng))就出現(xiàn)了這個(gè)怪問(wèn)題
回復(fù)

使用道具 舉報(bào)

7#
ID:401564 發(fā)表于 2020-3-16 00:49 | 只看該作者
OLED_WR_Byte(0xf0,OLED_CMD);//
OLED_WR_Byte(0x0f,OLED_CMD);//
OLED_WR_Byte(0xC8,OLED_CMD);/
=====================================
OLED_WR_Byte(0xf0,OLED_CMD);//
OLED_WR_Byte(0x0f,OLED_CMD);
OLED_WR_Byte(0x40,OLED_CMD);
你看一下你IIC和SPI的操作順序,根本不同好嗎?后面的就不用看了
雖然不能保證一定是這的問(wèn)題,但找問(wèn)題就是這么一步一步來(lái)的,至少先要保證操作的代碼地址是一樣的
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表