欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

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

Arduino篇—OLED顯示進(jìn)階

冬至子 ? 來源:X的創(chuàng)客課堂 ? 作者:MRXY ? 2023-11-02 09:19 ? 次閱讀

課程目標(biāo)

  • 取模軟件的使用
  • OLED中文字符的顯示

相關(guān)知識(shí)

**字模顯示原理:**我們使用的OLED屏是由方形的發(fā)光點(diǎn)陣列組成的,分辨率為128x64。英文和數(shù)字最小可用8x8像素,漢字最小顯示像素為16x16,通常為了顯示效果,英文和數(shù)字通常使用8x16像素表示,稱為1608字體。

在OLED顯示屏上顯示字符,和在點(diǎn)陣上顯示圖像是一樣的都是通過區(qū)域內(nèi)的像素點(diǎn)的亮暗來呈現(xiàn)圖案。

圖片

**1608字體:**1608代表著字符顯示的區(qū)域大小,即高度16位*寬度8位

圖片

**PCtoLCD取模軟件:**我們可以通過取模軟件來自動(dòng)生成想要顯示的文字編碼。這里重點(diǎn)講一下PCtoLCD軟件的應(yīng)用。

取模軟件的使用:

1、啟動(dòng)軟件,點(diǎn)擊「模式」,選擇「字符模式」。

圖片

2、點(diǎn)擊「選項(xiàng)」進(jìn)行字模配置。通常字模配置要根據(jù)程序驅(qū)動(dòng)方式來選擇,我們選擇陰碼、逐行式、順向,其他選項(xiàng)如下圖所示。

圖片

3、輸入漢字。點(diǎn)擊生成字?;蛘弑4孀帜#蜁?huì)得到對(duì)應(yīng)的點(diǎn)陣數(shù)據(jù)。

圖片

電路搭建

所需材料

ArduinoUNO * 1
OLED顯示屏 * 1
杜邦線若干

電路連接

OLED屏的VCC和GND分別連接開發(fā)板的5V和GND,OLED屏的SDA和SCL分別連接開發(fā)板A4和A5。

圖片

程序編寫

練習(xí)一:OLED顯示中文字符

通過取模軟件,將需要顯示的中文進(jìn)行轉(zhuǎn)換。然后編寫程序,讓OLED能夠顯示出來。圖形化方式這里不做贅述,主要通過代碼的方式來實(shí)現(xiàn)。

代碼方式:

/* 項(xiàng)目名稱:OLED顯示中文
   項(xiàng)目時(shí)間:2022.03.17
   項(xiàng)目作者:MRX
*/
#include < Wire.h >
#include < Adafruit_GFX.h >
#include < Adafruit_SSD1306.h >


#define OLED_RESET     4
Adafruit_SSD1306 display(128, 64, &Wire, OLED_RESET);


//取16X16漢字字模 逐行式 順向高位在前
static const unsigned char PROGMEM str1[] =
{
  0x10,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0xFD,0xFE,0x24,0x20,0x24,0x20,0x24,0x20,
  0x25,0xFC,0x49,0x04,0x29,0x04,0x11,0x04,0x29,0x04,0x45,0x04,0x85,0xFC,0x01,0x04

};/*"姑",0*/


static const unsigned char PROGMEM str2[] =
{
  0x08,0x20,0x08,0x20,0xFF,0xFE,0x08,0x20,0x0A,0x20,0x02,0x00,0x7F,0xF0,0x02,0x10,
  0x02,0x14,0x22,0x12,0x22,0x12,0x24,0x12,0x44,0x10,0x08,0x10,0x10,0xA0,0x20,0x40


};/*"蘇",1*/
static const unsigned char PROGMEM str3[] =
{
  0x20,0x28,0x20,0x24,0x20,0x20,0x27,0xFE,0x24,0x20,0xFC,0x20,0x24,0x24,0x27,0xA4,
  0x24,0xA4,0x24,0xA8,0x24,0xA8,0x3C,0x90,0xE6,0x92,0x49,0x2A,0x08,0x46,0x10,0x82


};/*"城",2*/


static const unsigned char PROGMEM str4[] =
{
  0x10,0x40,0x10,0x40,0x10,0x40,0x10,0x40,0x3E,0x40,0x22,0x60,0x42,0x50,0x42,0x48,
  0xA4,0x44,0x14,0x44,0x08,0x40,0x08,0x40,0x10,0x40,0x20,0x40,0x40,0x40,0x80,0x40


};/*"外",3*/


static const unsigned char PROGMEM str5[] =
{
  0x02,0x00,0x01,0x00,0x7F,0xFE,0x44,0x42,0x9F,0xF4,0x04,0x40,0x3F,0xF8,0x04,0x40,
  0xFF,0xFE,0x08,0x20,0x13,0x10,0x20,0x88,0xC0,0x46,0x06,0x00,0x01,0x80,0x00,0x40


};/*"寒",4*/


static const unsigned char PROGMEM str6[] =
{
  0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,
  0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x21,0x08,0x3F,0xF8,0x00,0x08,0x00,0x00


};/*"山",5*/


static const unsigned char PROGMEM str7[] =
{
  0x01,0x00,0x01,0x00,0x01,0x00,0x3F,0xF8,0x01,0x00,0x01,0x00,0xFF,0xFE,0x00,0x20,
  0x00,0x20,0x7F,0xFC,0x08,0x20,0x04,0x20,0x04,0x20,0x00,0x20,0x00,0xA0,0x00,0x40


};/*"寺",6*/


void setup() {
  display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
  display.setTextColor(WHITE);//開像素點(diǎn)發(fā)光
  display.clearDisplay();//清屏


  display.setTextSize(1); //設(shè)置字體大小
  display.setCursor(35, 5);//設(shè)置顯示位置
  display.println("-MRXCLASS-");//輸出字符


  display.drawBitmap(10, 32, str1, 16, 16, 1); //畫出字符對(duì)應(yīng)點(diǎn)陣數(shù)據(jù)
  display.drawBitmap(26, 32, str2, 16, 16, 1); //畫出字符對(duì)應(yīng)點(diǎn)陣數(shù)據(jù)
  display.drawBitmap(42, 32, str3, 16, 16, 1); //畫出字符對(duì)應(yīng)點(diǎn)陣數(shù)據(jù)
  display.drawBitmap(58, 32, str4, 16, 16, 1); //畫出字符對(duì)應(yīng)點(diǎn)陣數(shù)據(jù)
  display.drawBitmap(74, 32, str5, 16, 16, 1); //畫出字符對(duì)應(yīng)點(diǎn)陣數(shù)據(jù)
  display.drawBitmap(90, 32, str6, 16, 16, 1); //畫出字符對(duì)應(yīng)點(diǎn)陣數(shù)據(jù)
  display.drawBitmap(106, 32, str7, 16, 16, 1); //畫出字符對(duì)應(yīng)點(diǎn)陣數(shù)據(jù)
  display.display();//開顯示                


}


void loop() {


}

演示圖片:

圖片

代碼分析:

程序中我們使用了圖像庫(kù)「Adafruit_GFX」中的drawBitmap()函數(shù)進(jìn)行位圖繪制,函數(shù)參數(shù)分別輸入了要顯示的坐標(biāo),字符數(shù)據(jù)源,字符的寬高,最后參數(shù)由于我們的OLED是單色的,默認(rèn)為1**。**

void drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, uint16_t color);

這會(huì)在一部分顯示區(qū)域中發(fā)出連續(xù)的位信息。這里1代表是像素被設(shè)置成規(guī)定的顏色,0就是不設(shè)置像素的顏色。x,y是位圖左上角,w和h是寬度和高度。

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

    關(guān)注

    0

    文章

    162

    瀏覽量

    20907
  • SDA
    SDA
    +關(guān)注

    關(guān)注

    0

    文章

    124

    瀏覽量

    28277
  • SCL
    SCL
    +關(guān)注

    關(guān)注

    1

    文章

    240

    瀏覽量

    17182
  • GND
    GND
    +關(guān)注

    關(guān)注

    2

    文章

    540

    瀏覽量

    38913
  • OLED顯示
    +關(guān)注

    關(guān)注

    1

    文章

    56

    瀏覽量

    17063
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    《HELLO+FPGA》-項(xiàng)目進(jìn)階篇

    《HELLO+FPGA》-項(xiàng)目進(jìn)階篇
    發(fā)表于 09-27 10:13

    學(xué)習(xí)arduino進(jìn)階教學(xué)

    學(xué)習(xí)arduino進(jìn)階教學(xué)。arduino進(jìn)階準(zhǔn)備工作首先需要一塊面包板(又稱萬用線路板、集成電路實(shí)驗(yàn)板),一些小電阻,一些杜邦線,兩個(gè)LED燈。面包板面包板是由于板子上有很多小插孔
    發(fā)表于 02-24 07:48

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

    描述Arduino UNO機(jī)械開關(guān)和OLED屏幕護(hù)罩材料:4 個(gè) 10 歐姆電阻。4 個(gè)機(jī)械鍵盤開關(guān)。1x Arduino UNO20x 通用引腳。1x OLED
    發(fā)表于 08-30 06:54

    USB HID設(shè)備應(yīng)用(進(jìn)階篇

    Freescale的USB HID設(shè)備應(yīng)用(進(jìn)階篇
    發(fā)表于 12-07 18:19 ?0次下載

    0.96_OLED顯示屏_arduino_IIC_例程

    0.96OLED顯示屏_arduino_IIC_例程.rar
    發(fā)表于 07-11 18:43 ?96次下載

    0.96_OLED顯示屏_arduino_SPI_例程

    0.96OLED顯示屏_arduino_SPI_例程.rar
    發(fā)表于 07-12 10:36 ?117次下載

    OLED的波形曲線、進(jìn)度條、圖片顯示(STM32 HAL庫(kù) 模擬SPI通信 5線OLED屏幕)詳細(xì)

    OLED的波形曲線、進(jìn)度條、圖片顯示(STM32 HAL庫(kù) 模擬SPI通信 5線OLED屏幕)詳細(xì)
    發(fā)表于 12-01 10:51 ?57次下載
    <b class='flag-5'>OLED</b>的波形曲線、進(jìn)度條、圖片<b class='flag-5'>顯示</b>(STM32 HAL庫(kù) 模擬SPI通信 5線<b class='flag-5'>OLED</b>屏幕)詳細(xì)<b class='flag-5'>篇</b>

    Hello Alexa使用OLED顯示模塊和Arduino

    電子發(fā)燒友網(wǎng)站提供《Hello Alexa使用OLED顯示模塊和Arduino.zip》資料免費(fèi)下載
    發(fā)表于 11-10 10:37 ?1次下載
    Hello Alexa使用<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>模塊和<b class='flag-5'>Arduino</b>

    基于ArduinoOLED的元胞自動(dòng)機(jī)

    該項(xiàng)目使用I2C 128×64 OLED顯示Arduino Nano供電的微型細(xì)胞自動(dòng)機(jī)。
    發(fā)表于 12-06 10:22 ?0次下載

    使用ArduinoOLED顯示器的乒乓球游戲

    電子發(fā)燒友網(wǎng)站提供《使用ArduinoOLED顯示器的乒乓球游戲.zip》資料免費(fèi)下載
    發(fā)表于 02-01 11:32 ?1次下載
    使用<b class='flag-5'>Arduino</b>和<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>器的乒乓球游戲

    Arduino上將文本打印到OLED顯示

    電子發(fā)燒友網(wǎng)站提供《在Arduino上將文本打印到OLED顯示器.zip》資料免費(fèi)下載
    發(fā)表于 06-09 10:29 ?1次下載
    在<b class='flag-5'>Arduino</b>上將文本打印到<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>器

    帶有選擇選項(xiàng)的Arduino OLED顯示菜單

    電子發(fā)燒友網(wǎng)站提供《帶有選擇選項(xiàng)的Arduino OLED顯示菜單.zip》資料免費(fèi)下載
    發(fā)表于 06-28 15:53 ?3次下載
    帶有選擇選項(xiàng)的<b class='flag-5'>Arduino</b> <b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>菜單

    ArduinoOLED顯示

    OLED「OrganicLight-Emitting Diode」:** 有機(jī)發(fā)光二極管,又稱有機(jī)發(fā)光半導(dǎo)體,是當(dāng)下非常受歡迎的顯示技術(shù)。
    的頭像 發(fā)表于 11-02 09:15 ?7511次閱讀
    <b class='flag-5'>Arduino</b><b class='flag-5'>篇</b>—<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>屏

    RK3568驅(qū)動(dòng)指南|驅(qū)動(dòng)基礎(chǔ)進(jìn)階篇-進(jìn)階8 內(nèi)核運(yùn)行ko文件總結(jié)

    RK3568驅(qū)動(dòng)指南|驅(qū)動(dòng)基礎(chǔ)進(jìn)階篇-進(jìn)階8 內(nèi)核運(yùn)行ko文件總結(jié)
    的頭像 發(fā)表于 01-31 14:58 ?1236次閱讀
    RK3568驅(qū)動(dòng)指南|驅(qū)動(dòng)基礎(chǔ)<b class='flag-5'>進(jìn)階篇</b>-<b class='flag-5'>進(jìn)階</b>8 內(nèi)核運(yùn)行ko文件總結(jié)

    OLED 顯示雷達(dá)數(shù)據(jù)

    使用螢火工場(chǎng)CEM5826-M11雷達(dá)模塊,Arduino IDE 編譯代碼,OLED顯示雷達(dá)數(shù)據(jù)
    的頭像 發(fā)表于 12-10 13:38 ?239次閱讀
    <b class='flag-5'>OLED</b> <b class='flag-5'>顯示</b>雷達(dá)數(shù)據(jù)