鴻蒙系統 OLED螢幕驅動

2021-10-09 23:01:33 字數 1257 閱讀 4543

hi3861 oled驅動

hispark wifi開發套件又提供乙個oled螢幕,但是鴻蒙原始碼中沒有這個螢幕的驅動,我們需要自己去移植。

(2)設定i2c引腳復用

確定i2c引腳,檢視原理圖,可以看到oled螢幕使用到的是i2c0,引腳是gpio13、gpio14  

/* i2c io復用也可以選擇3/4; 9/10,根據產品設計選擇 */

hi_io_set_func(hi_io_name_gpio_13, hi_io_func_gpio_13_i2c0_sda);

hi_io_set_func(hi_io_name_gpio_14, hi_io_func_gpio_14_i2c0_scl);

#endif

複製**

(3)開啟i2c功能

修改檔案:vendor\hisi\hi3861\hi3861\build\config\usr_config.mk

增加 config_i2c_support=y

以上修改變完成了,重新編譯即可看到oled能成功驅動。

(4)oled螢幕驅動講解

入口函式:

void my_oled_demo(void)

複製**

i2c寫函式:

hi_u32 my_i2c_write(hi_i2c_idx id, hi_u16 device_addr, hi_u32 send_len)

; es8311_i2c_data.send_buf = g_send_data;

es8311_i2c_data.send_len = send_len;

status = hi_i2c_write(id, device_addr, &es8311_i2c_data);

if (status != hi_err_success)

return hi_err_success;

}

oled螢幕模組

oled螢幕模組似乎是廠家提供的 也許可以根據螢幕驅動晶元去寫 根據現在了解的晶元一般有兩個 sh1106和ssd1306 不過這次我們用的是ssd1306晶元驅動的螢幕 下面是從裸屏到模組的pcb 有上面的圖可以看出,雖然是雙色,但是只是底子不同罷了,其實還是單色的.下面是51微控制器的程式 下面...

cherry專案學習 OLED螢幕

關於oled螢幕的設計,我是第一次接觸,完全由零開始。在 找到的模組有i2c通訊和spi通訊的,但所給的資料太少,i2c和spi我也是第一次接觸 路慢慢長 所以在找合適的型號上花了不少時間。128 64的屏大部分由30個引腳,二有用上的不過一半,由spi和i2c方式的所用的更少。以下做說明 不知道什...

基於51的OLED驅動

oled12864.h include reg51.h include 6x8.h include 8x16.h include 16x16.h define xlevell 0x00 define xlevelh 0x10 define xlevel xlevelh 0x0f 16 xlevell...