當前位置:編程學習大全網 - 源碼下載 - 玩轉 ESP32 + Arduino (八) U8G2驅動OLED

玩轉 ESP32 + Arduino (八) U8G2驅動OLED

目前Arduino平臺上使用最廣泛的OLED庫: U8G2

github地址: /olikraus/u8g2/

設置和參考手冊: /olikraus/u8g2/wiki

U8g2:單色顯示器庫,版本2

U8g2是用於嵌入式設備的單色圖形庫。U8g2支持單色OLED和LCD,包括以下控制器:SSD1305,SSD1306,SSD1309,SSD1322,SSD1325,SSD1327,SSD1329,SSD1606,SSD1607,SH1106,SH1107,SH1108,SH1122,T6963,RA8835,LC7981,PCD8544,PCF8812,HX12 ,UC1601,UC1604,UC1608,UC1610,UC1611,UC1701,ST7565,ST7567,ST7588,ST75256,NT7534,IST3020,ST7920,LD7032,KS0108,SED1520,SBN1661,IL3820,MAX7219(完整列表請參見 此處 )。

為什麽要運用U8g2庫?

支持單片機平臺:

再platformIO.ini中配置庫

方法可以分為四大類:

初始化顯示器, 清屏, 喚醒屏幕

只是初始化顯示器, 並不清屏, 也不喚醒屏幕

開啟UTF-8後,我們可以使用其UTF-8字庫

如果支持繪制顏色(也就是不是單色顯示器),那麽由setDrawColor設置;

例: 畫圓動畫 (4幀)

實例:

示例:下面例子,ascent是18

示例:下面例子,descent是-5

啟用(1)或禁用(0)透明模式

U8g2支持三種繪制模式:

特點:

用法:

特點:

特點:

看例程裏有無數條代表著各種屏幕的寫好的U8g2初始化語句,選擇適合的壹條解除註釋即可

我的ESP32 DEVKIT V1+SSD1306(IIC)是選擇這個:

/olikraus/u8g2/wiki/fntlistall

/olikraus/u8g2/wiki/fntgrpiconic

示例: 顯示所有iconic圖標

/olikraus/u8g2/wiki/fntgrpwqy

可以看到, 最小的字高12px, 最大的字高18px,如果想要更大的字,請取XBM格式字模

我使用了在線轉換器:

https://convertio.co/zh/image-converter/?utm_source=chrome_extension

整個轉換過程很簡單, 轉換好的XBM文件用記事本打開就能看到數組了, 感覺比傳統的 Img2Lcd 或者 PCtoLCD2002 好用

  • 上一篇:HTML5 2012到2015有什麽變化
  • 下一篇:ARP斷線攻擊,怎麽回事,怎麽解決!
  • copyright 2024編程學習大全網