久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4791|回復: 2
打印 上一主題 下一主題
收起左側

OLED屏點亮總結-重要補充

[復制鏈接]
跳轉到指定樓層
樓主
ID:1004040 發表于 2022-2-15 23:47 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
     本來這是一篇內容,但卻昨天實在太晚,沒有完成,這里把內容補充完整。
     OLED屏點不亮跟兩個方面有關:硬件(硬件驅動)和軟件(用戶程序)。
     OLED屏分兩種接口,SPI接口和IIC接口。
     1. 這里以SPI接口為例(網上有一家做的挺好,硬件驅動也非常工整、詳細,你如果仔細學習一下,可以用他們家的函數在屏幕上做出各種參數的矢量圖。但他們家也存在函數不統一的現象。后面的程序均以此家為例)還是拿STM32103C8T6來講。這款芯片有2個硬件SPI接口,你會發現廠家的OLED屏驅動引腳落在其中一組SPI引腳上(PA5,PA7),也僅有這兩個引腳可以復用SPI,其他的是普通引腳。所以說廠家的驅動程序是軟件模擬SPI接口,知道了這一點,我們可以做很多事情,也可以避免很多坑。
     不要設定硬件SPI,特別是使用STM32CubeMX設定硬件環境的。如果設了,你可能會點不亮屏,還不知什么原因。
    2.有人就會說,那是不是我就可以隨便選擇引腳了呢。請看下面這個坑。
      芯片STM32F103T8,這個芯片QFN封裝,36個引腳。
      a.使用內部晶振和OLED屏。使用普通引腳無法點亮,但把引腳設在SPI這幾個引腳上(引腳定義普通IO,不復用SPI硬件)卻可以點亮。
      b.使用外部晶振和OLED屏普通引腳可以點亮,你可以隨便選。
      為什么會這樣,這要回到單片機的物理特性了--PIN腳工作頻率。有人會說,我初始化時已經明確引腳頻率了。可是你可能沒有用示波器真實測過引腳的頻率,
實際的頻率遠比你設定的要低。
     但有一個明確的規律,硬件SPI的頻率高于普通引腳的頻率使用硬件晶振的引腳頻率高于使用內部晶振的引腳頻率所以你就會明白,OLED為什么點不亮,頻率不匹配。
    3.使用SPI引腳(PA15,PB3,PB4,PB5)時存在以下問題,當開啟Serial Wire Debug模式時,如果使用這幾個SPI引腳(PA15,PB3,PB4,PB5),你會點不亮OLED屏。查到的資料是說,在開啟Serial Wire Debug模式下,系統默認那幾個引腳是調試引腳,所以當你設為OLED屏驅動引腳時,是無法點亮屏幕的。
      你可以在引腳初始化函數里加上下面這兩行代碼,打開這幾個腳,就可以點亮了。
       GPIO_InitTypeDef  GPIO_InitStructure;
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);//打開時鐘
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//禁用調試功能
看到這個,你會發現,禁用了調試功能。沒錯,結果就是,屏幕亮了,卻不能Debug和燒錄程序了。怎么辦,長按reset鍵,再次燒錄,程序會刪除芯片中內容,并報錯。不要管錯誤,再次識別,發現芯片可以寫了。記著把剛才兩句刪掉。
     這幾個腳不是不能用,只是調試的時候慎用。
     下面再聊一下軟件。
     4.看下面代碼
     int main(void)
    {
        delay_init();
        OLED_Init();
        while(1)
        {
               
            OLED_ShowString(0,48,"ASCII:",16);  
            OLED_ShowString(63,48,"CODE:",16);

        }
   }
   該有的好像都有了,驅動也是原廠的,可就是點不亮屏幕。
   這個版本的驅動程序有一條指令:OLED_Refresh(),刷新屏幕。這個版本的邏輯是,上面的指令只是把內容寫進了顯存。你還需要下指令讓它更新屏幕。
  5.對于某些實例,7腳的SPI接口只定義4個引腳接口。新手會越看越糊涂。
    其實很好理解,7腳的SPI接口OLED屏最后一個引腳CS是片選引腳,也就是控制OLED屏是否可以使用。低電平有效,如果你對屏幕沒有特殊需求,可以把該腳直接接地。可以節省一個IO口。


    寫到這里,也就到結尾了。使用中總會碰到一些特殊的情況,特別記錄下來,供大家參考。如有不同意見,歡迎提出,共同學習。

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏5 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:116773 發表于 2022-2-16 09:54 | 只看該作者
問題1很可能是SPI的模式沒有選擇正確造成的;
問題2是SPI的速率沒有選擇正確造成的。
回復

使用道具 舉報

板凳
ID:458889 發表于 2022-2-16 13:50 | 只看該作者
hujj 發表于 2022-2-16 09:54
問題1很可能是SPI的模式沒有選擇正確造成的;
問題2是SPI的速率沒有選擇正確造成的。

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 激情视频一区 | 欧美一a | 日韩日韩日韩日韩日韩日韩日韩 | 久久精品久久久久久 | 91xx在线观看 | 成人福利网站 | 久久久久国产精品一区二区 | 蜜桃毛片| 在线观看www高清视频 | 国产欧美一区二区三区在线看 | 精品国产91乱码一区二区三区 | 亚洲性在线 | 精品视频一区二区三区 | 日韩一区二区在线播放 | 亚洲在线一区二区 | 久久久久久国产精品久久 | 久久成人人人人精品欧 | 国产精品久久久久久久免费大片 | 黑人成人网 | 亚洲韩国精品 | 日韩成人av在线 | 翔田千里一区二区 | 欧美日韩一 | 九九免费视频 | 色性av| 中文字幕在线观看一区二区 | 亚洲精品电影在线 | 免费黄色av网站 | 国产精品美女一区二区三区 | 欧美日韩午夜精品 | 国产乱码精品一区二区三区五月婷 | 欧美一区二区在线播放 | 91视频久久 | av黄色在线| 欧美一区二区三区 | 精品美女久久久 | 国产精品视频一区二区三区, | 欧美激情久久久 | 精品国产一区二区三区久久久四川 | 日韩中文一区二区三区 | www.日本三级 |