0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OLED顯示器如何與Raspberry Pi一起使用?

科技觀察員 ? 來源:circuitdigest ? 作者:薩達(dá)姆 ? 2022-11-17 16:52 ? 次閱讀

我們大多數(shù)人都熟悉16×2點(diǎn)陣LCD顯示器,在大多數(shù)項(xiàng)目中用于向用戶顯示一些信息。但是這些LCD顯示器有很多局限性。在本教程中,我們將了解OLED顯示器以及如何將它們與Raspberry Pi一起使用。市場上有很多類型的OLED顯示器,有很多方法可以讓它們工作。我們已經(jīng)將 7 針 OLED 與 Arduino 一起使用。

所需硬件

128×64 OLED 顯示模組 (SSD1306)

樹莓派

面包板

連接線

電源

了解OLED顯示器:

術(shù)語OLED代表“有機(jī)發(fā)光二極管”,它使用與我們大多數(shù)電視中使用的相同技術(shù),但與它們相比像素更少。將這些看起來很酷的顯示模塊與Raspberry Pi連接真的很有趣,因?yàn)樗鼤?huì)讓我們的項(xiàng)目看起來很酷。我們在這里介紹了有關(guān)OLED顯示器及其類型的完整文章。在這里,我們使用單色 4 針 SSD1306 0.96 英寸 OLED 顯示屏。此液晶屏只能與 I2C 模式配合使用。

poYBAGN19keAISeQAAA76nBfuRE571.jpg

poYBAGN19kqANx8NAABLt8eQv9o212.jpg

以下是OLED與樹莓派的連接:

有機(jī)硅引腳 RPI 引腳
可變資本公司 3.3V
接地 接地
自主權(quán)評估 SDA(物理引腳 3)
標(biāo)準(zhǔn)及校正實(shí)驗(yàn)所 SCL(物理引腳 5)

電路圖:

pYYBAGN19kuAUn1JAADekWYXGQo048.png

poYBAGN19lGAZkrqAAE44vlSzYM680.jpg

將OLED與樹莓派連接:

RPI社區(qū)已經(jīng)為我們提供了很多庫,可以直接用于使這變得更加簡單。我嘗試了一些庫,發(fā)現(xiàn)Adafruit_SSD1306 OLED庫非常易于使用,并且有一些圖形選項(xiàng),因此我們將在本教程中使用相同的選項(xiàng)。

步驟 1:啟用 I2C 通信

在安裝 Adafruit SSD1306 庫之前,我們需要在樹莓派中啟用 I2C 通信。

要在樹莓派控制臺(tái)中執(zhí)行此操作:

sudo raspi-config

然后會(huì)出現(xiàn)藍(lán)屏?,F(xiàn)在選擇接口選項(xiàng)

pYYBAGN19lKALXQzAABaCu_MXus618.png

在此之后,我們需要選擇I2C

pYYBAGN19lWAbvE-AABgdvt9pKQ463.png

在此之后,我們需要選擇是并按回車鍵,然后確定

poYBAGN19laAWTcPAAAldGEUqF8406.png

在此之后,我們需要通過發(fā)出以下命令重新啟動(dòng)樹莓派:

sodo reboot

第 2 步:查找 OLED I2C 地址并更新它

然后我們需要使用給定的命令找到OLED I2C地址,您將看到一個(gè)十六進(jìn)制地址。

sudo i2cdetect –y 1

pYYBAGN19leAZUwVAAAVJM7Z8Zs681.png

然后使用給定的命令更新樹莓派:

sudo apt-get update

第 3 步:安裝 python-pip 和 GPIO 庫

在此之后,我們需要使用給定的命令安裝pip:

sudo apt-get install build-essential python-dev python-pip

并安裝樹莓派 GPIO 庫

sudo pip installs RPi.GPIO

步驟 4:安裝Python 映像庫和smbus庫

最后,我們需要使用給定的命令在 Raspberry Pi 中安裝 Python 映像庫和 smbus 庫:

sudo apt-get install python-imaging python-smbus

pYYBAGN19liAeM9GAACcZ7_PLOk969.png

第 5 步:安裝 Adafruit SSD1306 python 庫

現(xiàn)在是時(shí)候使用給定的命令安裝 Adafruit SSD1306 python 庫代碼和示例了:

sudo apt-get install git

git clone

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

cd Adafruit_Python_SSD1306 sudo python setup.py install

poYBAGN19luANEYoAAB8cGXW8LM309.png

現(xiàn)在用戶可以在樹莓派中找到OLED接口的代碼,您可以直接播放或自己自定義。在這里,我們自定義了一個(gè)示例代碼進(jìn)行演示。您可以在文章末尾找到完整的 Python 代碼。

pYYBAGN19l6AYxeeAADwmuf4REg794.jpg

編程說明:
用于將OLED與RPi項(xiàng)目接口的編程部分很容易。首先,我們需要導(dǎo)入一些必要的庫。

import time
import Adafruit_GPIO.SPI as SPI
import Adafruit_SSD1306
from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont
import subprocess
在此初始化后初始化顯示

RST = 0

disp = Adafruit_SSD1306.SSD1306_128_64(rst=RST)
disp.begin()
disp.clear()
disp.display()

width = disp.width
height = disp.height

image1 = Image.new('1', (width, height))

draw = ImageDraw.Draw(image1)
draw.rectangle((0,0,width,height), outline=0, fill=0)

padding = -2
top = padding

bottom = height-padding
x = 0
font = ImageFont.load_default()

在此之后,我們可以使用給定的代碼將數(shù)據(jù)或圖像發(fā)送到OLED
# Write two lines of text.

disp.clear()
disp.display()
draw.text((x, top), "OLED Interfacing " , font=font, fill=255)
draw.text((x, top+8), "Circuit Digest", font=font, fill=255)
draw.text((x, top+16), "For more Videos", font=font, fill=255)
draw.text((x, top+25), "Visit at", font=font, fill=255)
draw.text((x, top+34), "www.circuitdigest.com", font=font, fill=255)

# Display image.
disp.image(image1)
disp.display()
time.sleep(2)

if disp.height == 64:
image = Image.open('img1.png').convert('1')
else:
image = Image.open('img1.png').convert('1')

disp.image(image)
disp.display()
time.sleep(2)

if disp.height == 64:
image = Image.open('img3.jpg').convert('1')
else:
image = Image.open('img3.jpg').convert('1')

這款OLED有兩種變體,一種是128 * 32,另一種是128 * 64,因此用戶可以在初始化OLED時(shí)相應(yīng)地選擇任何人。在這里,我們?yōu)閮烧呔帉懥舜舜a。用戶只需要初始化128 * 64像素的OLED,例如:

disp = Adafruit_SSD1306.SSD1306_128_64(rst=RST)

所有代碼和函數(shù)都易于理解,無需進(jìn)一步解釋。只需開始并嘗試使用高度,寬度和圖像,并嘗試其他一些功能來創(chuàng)建一些更酷的幾何圖形。

import time

import Adafruit_GPIO.SPI as SPI

import Adafruit_SSD1306

from PIL import Image

from PIL import ImageDraw

from PIL import ImageFont

import subprocess


RST = 0


disp = Adafruit_SSD1306.SSD1306_128_64(rst=RST)

disp.begin()

disp.clear()

disp.display()


width = disp.width

height = disp.height

image1 = Image.new('1', (width, height))

draw = ImageDraw.Draw(image1)

draw.rectangle((0,0,width,height), outline=0, fill=0)


padding = -2

top = padding

bottom = height-padding

x = 0

font = ImageFont.load_default()


while True:

draw.rectangle((0,0,width,height), outline=0, fill=0)


# Write two lines of text.

disp.clear()

disp.display()

draw.text((x, top), "OLED Interfacing " , font=font, fill=255)

draw.text((x, top+8), "Circuit Digest", font=font, fill=255)

draw.text((x, top+16), "For more Videos", font=font, fill=255)

draw.text((x, top+25), "Visit at", font=font, fill=255)

draw.text((x, top+34), font=font, fill=255)


# Display image.

disp.image(image1)

disp.display()

time.sleep(2)


if disp.height == 64:

image = Image.open('img1.png').convert('1')

else:

image = Image.open('img1.png').convert('1')


disp.image(image)

disp.display()

time.sleep(2)


if disp.height == 64:

image = Image.open('img3.jpg').convert('1')

else:

image = Image.open('img3.jpg').convert('1')


disp.image(image)

disp.display()

time.sleep(2)


if disp.height == 64:

image = Image.open('img4.jpg').convert('1')

else:

image = Image.open('img4.jpg').convert('1')


disp.image(image)

disp.display()

time.sleep(2)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • OLED顯示器
    +關(guān)注

    關(guān)注

    0

    文章

    65

    瀏覽量

    13103
收藏 人收藏

    評論

    相關(guān)推薦

    如何在Raspbian上設(shè)置沒有顯示器和鍵盤的Raspberry Pi

    在本教程中,我們將了解如何在新安裝的 Raspbian 上設(shè)置沒有顯示器和鍵盤的 Raspberry Pi。
    發(fā)表于 09-22 16:31 ?1576次閱讀
    如何在Raspbian上設(shè)置沒有<b class='flag-5'>顯示器</b>和鍵盤的<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>

    通過以太網(wǎng)線與VEE一起使用Raspberry Pi不起作用

    大家好,我想通過以太網(wǎng)線與VEE一起使用Raspberry Pi。我的問題是VEE沒有檢測到我的設(shè)備,我嘗試使用覆盆子的IP地址進(jìn)行手動(dòng)配置,但它不起作用。 Raspberry
    發(fā)表于 10-10 17:15

    個(gè)Raspberry Pi擴(kuò)展板

    描述clumsyMIDI - 樹莓派擴(kuò)展板個(gè) Raspberry Pi 擴(kuò)展板,包含個(gè) MIDI 接口、DAC 和 OLED
    發(fā)表于 07-29 06:12

    Raspberry Pi 4機(jī)械開關(guān)和OLED屏幕護(hù)罩的資料分享

    描述Raspberry Pi 4 機(jī)械開關(guān)和 OLED 屏幕護(hù)罩。材料:4 個(gè) 10 歐姆電阻。4 個(gè)機(jī)械鍵盤開關(guān)。1 個(gè)樹莓派 3B40x 通用引腳。(如果您的電路板有引腳,請?zhí)^此部分)1x
    發(fā)表于 08-30 07:23

    Raspberry Pi 2機(jī)械開關(guān)和OLED屏幕護(hù)罩的資料分享

    描述Raspberry Pi 2 機(jī)械開關(guān)和 OLED 屏幕護(hù)罩。材料:4 個(gè) 10 歐姆電阻。4 個(gè)機(jī)械鍵盤開關(guān)。1 個(gè)樹莓派 240x 通用引腳。(如果您的電路板有引腳,請?zhí)^此部分)1x
    發(fā)表于 08-30 06:32

    oled顯示器

    oled顯示器 OLED:Organic Light Emitting Display,即有機(jī)發(fā)光顯示器,在手機(jī)LCD上
    發(fā)表于 12-11 18:59 ?1449次閱讀

    TFT LCD與Raspberry Pi連接的方式

    Raspberry pi款信用卡大小的緊湊型計(jì)算機(jī),如今在物聯(lián)網(wǎng)應(yīng)用和數(shù)據(jù)科學(xué)、python、機(jī)器學(xué)習(xí)等高計(jì)算應(yīng)用中非常流行。許多應(yīng)用程序需要外部顯示器才能與
    的頭像 發(fā)表于 08-12 15:42 ?4664次閱讀
    TFT LCD與<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>連接的方式

    三星顯示器計(jì)劃將透明PI基板應(yīng)用于柔性OLED

      據(jù)報(bào)道,三星電子旗下面板制造商三星顯示器(Samsung Display)表示,正在考慮開發(fā)透光性更好的OLED面板,以提高屏幕下攝像頭的質(zhì)量。據(jù)報(bào)道,三星顯示器計(jì)劃到2024年將透明聚酰亞胺
    的頭像 發(fā)表于 10-10 10:48 ?1584次閱讀

    如何在Raspberry Pi Pico中使用OLED顯示器

    電子發(fā)燒友網(wǎng)站提供《如何在Raspberry Pi Pico中使用OLED顯示器.zip》資料免費(fèi)下載
    發(fā)表于 10-18 09:15 ?4次下載
    如何在<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> Pico中使用<b class='flag-5'>OLED</b><b class='flag-5'>顯示器</b>

    Raspberry Pi 2機(jī)械開關(guān)和OLED屏幕護(hù)罩

    電子發(fā)燒友網(wǎng)站提供《Raspberry Pi 2機(jī)械開關(guān)和OLED屏幕護(hù)罩.zip》資料免費(fèi)下載
    發(fā)表于 02-06 10:28 ?0次下載
    <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 2機(jī)械開關(guān)和<b class='flag-5'>OLED</b>屏幕護(hù)罩

    Raspberry Pi 3B+機(jī)械開關(guān)和OLED屏幕護(hù)罩

    電子發(fā)燒友網(wǎng)站提供《Raspberry Pi 3B+機(jī)械開關(guān)和OLED屏幕護(hù)罩.zip》資料免費(fèi)下載
    發(fā)表于 02-06 09:29 ?0次下載
    <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 3B+機(jī)械開關(guān)和<b class='flag-5'>OLED</b>屏幕護(hù)罩

    Raspberry Pi 4機(jī)械開關(guān)和OLED屏幕護(hù)罩

    電子發(fā)燒友網(wǎng)站提供《Raspberry Pi 4機(jī)械開關(guān)和OLED屏幕護(hù)罩.zip》資料免費(fèi)下載
    發(fā)表于 02-06 09:23 ?0次下載
    <b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> 4機(jī)械開關(guān)和<b class='flag-5'>OLED</b>屏幕護(hù)罩

    如何將RFID模塊與Raspberry Pi集成在一起

    目的:本教程旨在展示何將RFID讀卡和執(zhí)行Raspberry Pi集成在一起?;诒疚挠懻摰幕驹?,我們還會(huì)制造
    的頭像 發(fā)表于 02-27 10:27 ?733次閱讀
    如何將RFID模塊與<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>集成在<b class='flag-5'>一起</b>

    將Arduino庫與Raspberry Pi Pico C/C++ SDK一起使用

    電子發(fā)燒友網(wǎng)站提供《將Arduino庫與Raspberry Pi Pico C/C++ SDK一起使用.zip》資料免費(fèi)下載
    發(fā)表于 06-15 14:43 ?1次下載
    將Arduino庫與<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b> Pico C/C++ SDK<b class='flag-5'>一起</b>使用

    Raspberry Pi添加15美元的顯示器

    電子發(fā)燒友網(wǎng)站提供《為Raspberry Pi添加15美元的顯示器.zip》資料免費(fèi)下載
    發(fā)表于 06-20 11:04 ?0次下載
    為<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>添加15美元的<b class='flag-5'>顯示器</b>