樹莓派使用 OLED 屏顯示圖片及文字

樹莓派默認是不帶顯示屏的,若是想要查看系統的一些信息,須要使用電腦登陸到樹莓派,或者經過 HDMI 鏈接外接顯示器查看。這樣作老是有點麻煩,咱們能夠經過外接一個 OLED 屏來顯示一些關鍵參數或者圖片。本文將詳細介紹操做方法。python

OLED 模組介紹

OLED 屏主要有兩種:128×32 和 128×64 ,主要顏色是白、黃、藍。OLED 屏的特色是功耗低,價格便宜,使用 I2C 接口與主機鏈接。本文所使用的是 128×64 尺寸的屏幕,外形以下:git

它的接口很簡單,只有 4 個 Pin 腳:VCC,GND,SDA,SCL,因此它與樹莓派的鏈接也很簡單,以下圖所示(本文使用樹莓派 3B):github

開啓 I2C 接口

樹莓派默認是不開啓 I2C 接口的,因此咱們須要手動打開它。執行如下命令:ui

$ sudo apt-get install -y python-smbus
$ sudo apt-get install -y i2c-tools
$ sudo raspi-config

而後按如下動圖方式開啓 I2C 功能。3d

安裝 OLED 屏的 Python 庫

爲了在 OLED 屏上顯示文字或圖像,咱們須要使用到 Adafruit 的 Python 庫,這個庫支持全部的 SSD1306 相關的顯示屏,包括 128×32 和 128×64 屏幕。code

首先咱們須要下載這個庫:blog

$ git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git

而後進入到目錄,再進行安裝:接口

$ cd Adafruit_Python_SSD1306
$ sudo python3 setup.py install	# 若是使用 Python2 ,則使用對應命令

找到 OLED 模組地址

安裝好 Python 庫以後,咱們可使用 i2cdetect 命令來找到 OLED 屏的物理地址:圖片

$ i2cdetect -y 1

咱們會獲得相似這樣的輸出:get

不一樣的模組可能獲得不一樣的輸出。這裏咱們的 I2C 地址就是 0x3C。若是你使用的是初代樹莓派(256MB的樹莓派1代B),那麼須要使用下面的命令:

$ i2cdetect -y 0

使用 OLED 屏顯示圖像及文字

在剛剛下載的那個庫文件裏,有一個 examples 目錄,在那個目錄裏,咱們能夠看到如下內容:

  • animate.py
  • buttons.py
  • image.py
  • shapes.py
  • stats.py

這幾個文件咱們能夠直接運行,好比:

$ python3 shapes.py

這幾個文件運行的結果以下圖示:

屏幕尺寸適配

以上的幾個示例文件裏,它們都默認你的屏幕尺寸是 128×32 ,但它們依然能夠跑在 128×64 的屏幕上。若是咱們想要看得更舒服一點,咱們能夠將尺寸進行適配。

在每一個 Python 文件裏,都有下面這麼一段代碼:

這裏也寫得很清楚了,上下兩行代碼分別表明 128×32 和 128×64 的屏幕,使用何種尺寸的屏幕,只需將對應的代碼前面的 # 去掉便可。


公衆號:良許Linux

有收穫?但願老鐵們來個三連擊,給更多的人看到這篇文章

相關文章
相關標籤/搜索