Мазмуну:

OLED I2C Display Arduino/NodeMCU үйрөткүчү: 15 кадам
OLED I2C Display Arduino/NodeMCU үйрөткүчү: 15 кадам

Video: OLED I2C Display Arduino/NodeMCU үйрөткүчү: 15 кадам

Video: OLED I2C Display Arduino/NodeMCU үйрөткүчү: 15 кадам
Video: OLED 128х64 i2c подключение к nodeMCU (esp8266), установка библиотек Adafruit_GFX, и Adafruit_SSD130 2024, Июль
Anonim
Image
Image

Сиз үйрөнө баштаганда жазган эң биринчи программа а

жаңы программалоо тили: "Hello World!".

Программанын өзү экранда "Hello World" текстин басуудан башка эч нерсе кылбайт.

Ошентип, кантип биздин Arduino "Салам Дүйнө!"

Бул видеодо мен кичинекей 0.91 (128x32) жана 0.96 (128x64) I2C OLED дисплейлерин кантип баштоону көрсөтөм.

Интернетте бир эле нерсени ар кандай жолдор менен түшүндүргөн 100дөгөн окуу куралдары бар, бирок мен OLED дисплейи жана аны ар кандай сценарийлерде кантип колдонуу керектигин айтып бергенди тапкан жокмун. Мунун баарын иштеп чыгуу үчүн мага бир аз убакыт керек болду. Ошентип, мен үйрөнгөн нерселерим боюнча окуу куралын түзүп, OLED дисплейлерин биздин долбоорлордо колдонуунун бардык мүмкүнчүлүктөрүн жана ыкмаларын айкалыштыруу керек деп ойлодум.

1 -кадам: Бүгүн биз үйрөнө турган нерселер

Аппараттык талап
Аппараттык талап

Бул видеодо биз сөз кылабыз:

- OLED дисплей деген эмне?

- Анда биз 0.91 (128x32) жана 0.96 (128x64) I2C OLED дисплейлерин жакшылап карап чыгабыз.

- Андан кийин биз Adafruit китепканасын Arduino IDEге орнотуу жөнүндө сүйлөшөбүз

- Андан кийин NodeMCU менен Arduino'ду OLED дисплейге туташтырабыз

- Кийинкиде биз кодду карап, андагы графиканы жана текстти көрсөтөбүз

- Биз ошондой эле Ыңгайлаштырылган шрифттерди колдонуу жана Сүрөттөрдү көрсөтүү жөнүндө сүйлөшөбүз

- Андан кийин I2C мультиплексорунун жардамы менен бир нече OLEDди микро контроллерге туташтырабыз

- Акыр -аягы, биз OLED дисплейлерин колдонууда адамдар жасаган бир нече жалпы каталар жөнүндө сүйлөшөбүз

2 -кадам: Аппараттык талап

Бул окуу куралы үчүн бизге керек:

- А нан тактасы

- 0.91 "(128x32) жана 0.96" (128x64) I2C OLED дисплейлери

- Arduino UNO/NANO (эмне ыңгайлуу болсо)

- NodeMCU

- TCA9548A I2C мультиплексор

- Бир нече туташтыруучу кабелдер

- жана кодду жүктөө үчүн USB кабели

3 -кадам: OLED дисплей деген эмне?

OLED дисплей деген эмне?
OLED дисплей деген эмне?
OLED дисплей деген эмне?
OLED дисплей деген эмне?

OLED же органикалык жарык чыгаруучу диод-жарык чыгаруучу

диод (светодиод), анда эмиссивдүү электролюминесценттүү катмар электр тогуна жооп катары жарык чыгаруучу органикалык кошулманын пленкасы (миллиондогон кичинекей LED чырактар) болуп саналат.

OLEDлер телевизор экраны, компьютер мониторлору, мобилдик телефондор, портативдүү оюн консолу жана PDA сыяктуу түзүлүштөрдө санариптик дисплейлерди түзүү үчүн колдонулат. OLED дисплей арткы жарыксыз иштейт, анткени ал көзгө көрүнгөн жарыкты чыгарат.

4 -кадам:

Сүрөт
Сүрөт

OLED дисплейлеринин көптөгөн түрлөрү бар

алардын негизинде базар

- Өлчөмдөр

- Түс

- Бренддер

- Протокол

- SPI (Serial Perifheral Interface) же I2C

-Пассивдүү-матрицалуу (PMOLED) же активдүү-матрицалуу (AMOLED) башкаруу схемасы

Бул окуу куралында мен туташуу жөнүндө сүйлөшөм

көк түс 0.91 (128x32 OLED) жана 0.96 (128x64 OLED) I2C OLDE Arduino NANO жана NodeMCU дисплейлерине көрсөтүлөт. I2C автобус технологиясы MCUдун 2 гана казыгын колдонот, андыктан бизде башка сенсорлор үчүн үймөктөр бар.

5 -кадам: Жакыныраак караңыз

Жакыныраак кароо
Жакыныраак кароо
Жакыныраак кароо
Жакыныраак кароо
Жакыныраак кароо
Жакыныраак кароо

Келгиле, бул эки дисплейге жакыныраак мамиле кылалы.

Бул дисплейлердин артында SMD конденсаторлору жана резисторлор бортто ширетилген; бирок, анын I2C түзмөгү болгондуктан, биз бул 2 казыкка гана кам көрөбүз (SCL жана SDA)

Дисплей Arduino менен болгону төрт зым аркылуу туташат - экөө кубат үчүн (VCC жана GND) жана экөө маалымат үчүн (SCL сериялык сааты жана

сериялык маалыматтар SDA), зымдарды абдан жөнөкөй кылып. Маалымат туташуусу I2C (I²C, IIC же интегралдык микросхема) жана бул интерфейс TWI (Two Wire Interface) деп да аталат.

- Борттогу төөнөгүчтөр ар кандай тартипте болушу мүмкүн, андыктан долбооруңузга илинерден мурун дайыма үч жолу текшериңиз.

- Иштөө чыңалуусу 3v менен 5v ортосунда, бирок, өндүрүүчүнүн маалымат барагындагы көрсөтмөлөрдү колдонуу эң жакшы.

- Кээде долбоорлорубузда 2 дисплейди колдонушубуз керек. Ошентип, биз буга кантип жетише алабыз?

Айла - дисплейиңизде конфигурациялануучу даректин болушу. Бул блок 0x78 жана 0x7A ортосунда конфигурациялануучу дарекке ээ. Жөн эле 0Ohm резисторун бир тараптан ажыратып, экинчи жагына өйдө коюу же жөн эле глобалдык ширетүү аркылуу биз даректи өзгөртө алабыз. Бул окуу куралынын кийинки бөлүмүндө Arduinoго бир нече дисплейди туташтырганда, биз бул жөнүндө тереңирээк сүйлөшөбүз.

Сүрөттө бул дисплейлер абдан чоң көрүнөт. Бирок, иш жүзүндө алар кичинекей. Алар 128 x 32/64 жеке OLED пикселдерден жасалган жана эч кандай арткы жарыкты талап кылбайт. Муну караңыз жана анын канчалык кичине экенин көрүңүз. Кичинекей болсо да, алар ар кандай электрондук долбоорлордо абдан пайдалуу болушу мүмкүн.

6 -кадам: Китепкана

Китепкана
Китепкана
Китепкана
Китепкана
Китепкана
Китепкана

Буларды көзөмөлдөө үчүн бир нече китепканалар бар

көрсөтөт. Мурун мен "u8glib китепканасын" колдонгом, бирок AdaFruit китепканасын түшүнүү жана биздин долбоорлордо колдонуу оңой деп ойлойм. Ошентип, мен бул үйрөткүчтө AdaFruit китепканасын колдонмокчумун.

OLED дисплейди башкаруу үчүн сизге "adafruit_GFX.h" китепканасы жана "adafruit_SSD1306.h" китепканасы керек болот.

Китепкананы Arduino IDEге жүктөөнүн жана орнотуунун эки жолу бар.

Метод 1

"Китепкана менеджерине" барып, "adafruit_SSD1306" жана "adafruit_gfx" издеңиз.

Акыркы версиясын тандап, Орнотуу баскычын басыңыз.

Орнотулгандан кийин бул китепканаларды программаңызда колдоно аласыз.

Метод 2

Бул эки китепкананы githubдан жүктөп алууга болот (экөө тең керек):

Мен шилтемелерди төмөндөгү сүрөттөмөдө берем.

Көргөзмө китепканасы:

GFX китепканасы:

Жүктөлүп алынгандан кийин, Adafruit_SSD1306-master папкасын жүктөлгөн сыдырылган файлдан Arduino китепканалар папкасына көчүрүңүз. Бул папка көбүнчө Windows системасындагы Документтер> Arduino> китепканаларынан табылат. Linuxто ал көбүнчө үй папкасы> Arduino> китепканаларынан табылат. Акыры Arduino китепкана папкасында, Adafruit_SSD1306-master папкасын Adafruit_SSD1306 деп өзгөртүңүз. Атын өзгөртпөсөңүз да, бул жакшы.

7 -кадам:

Сүрөт
Сүрөт

Эми, "Adafruit_SSD1306.h" карап көрөлү

файл

Бул китепканада эки нерсени билишибиз керек:

1. Кичирээк дисплейди колдонууну кааласаңыз, демейки 128_32ди колдонуңуз, антпесе чоңураак дисплейге 128_32 жана комментарийге 128_64 жазыңыз.

2. Эгерде сиз 0x7A дарегин доскага такап койсоңуз (бул жөнүндө кийинчерээк сүйлөшөбүз), анда чоңураак дисплейлер үчүн 7 бит 0x3D дарегин колдонуңуз, антпесе демейки 0x3C дарегин колдонуңуз. Кичинекей дисплейлер үчүн дарек 0x3C.

8 -кадам: 128 X 64/32 OLED'дерди зымдоо

Уюлдук 128 X 64/32 OLED
Уюлдук 128 X 64/32 OLED

NodeMCUду дисплейге туташтыруудан баштайлы.

Белгилей кетүүчү биринчи жана эң маанилүү нерсе, кээ бир дисплейлерде GND жана VCC кубаткычтары алмаштырылышы мүмкүн. Дисплейиңиздин сүрөткө окшош экенин текшериңиз. Эгерде казыктар алмаштырылса, Arduino же NodeMCU менен болгон байланышты өзгөртүүнү унутпаңыз.

- NodeMCU OLED зымдары

OLED VCC - NodeMCU 3.3V

OLED GND - NodeMCU GND

OLED SCL - NodeMCU D1

OLED SDA - NodeMCU D2

- Arduino Uno OLED зымдары

OLED VCC - Arduino 5V

OLED GND - Arduino GND

OLED SCL - Arduino Uno A5

OLED SDA - Arduino Uno A4

- Arduino MEGA 2560 OLED зымдары

OLED VCC - Arduino 5V

OLED GND - Arduino GND

OLED SCL - Arduino MEGA 2560 пин 21

OLED SDA - Arduino MEGA 2560 пин 20

9 -кадам: Код

Code
Code
Code
Code
Code
Code
Code
Code

Adafruit китепканасы экөө үчүн жакшы мисалдар менен келет

128x32 жана 128x64 дисплейлер.

Китепкана Файл> Мисалдар> Adafruit SSD1306> астында, андан кийин Arduino IDEдеги дисплей түрү астында жайгашкан.

Биз 128x32 I2C мисалын колдонобуз жана аны 128x64 жана 128x32 дисплей муштуму менен иштөө үчүн аны Arduinoго, андан кийин NodeMCU тактасына илип, өзгөртөбүз.

Код Adafruit китепканаларын кошуу менен башталат. Бул окуу куралында мен коддун тактайларга жана дисплейлерге жүктөө үчүн зарыл болгон бөлүктөрүнө гана токтолом. Эгерде сиз код жөнүндө көбүрөөк билгиңиз келсе, менин блогума же төмөндөгү комментарийлер бөлүмүнө комментарий калтырыңыз, мен сизге кайра кайрылууга аракет кылам.

- Адегенде биз кодду 128x32 дисплейге туташкан Arduino Nanoго жүктөйбүз.

Биз кодду эч кандай өзгөртүүсүз колдоно алабыз.

128x32 0x3C дарегин колдонот, андыктан бул жерде баары жакшы көрүнөт, баш китепкананы эки жолу текшерүүгө мүмкүндүк берет, ооба ал 0x3C дарегин колдонот жана дисплей түрү 128x32.

- Эми 128x64 дисплейди туташтырабыз. Биз билгендей, ал демейки боюнча 0x3C дарегин колдонот, андыктан даректи коддо же китепканада жаңыртуунун кажети жок.

Биз жөн гана 128_32ге комментарий берип, 128_64ту китепканадагы комментарийден ажыратып, LCDHEIGHTти кодубуздагы 64кө өзгөртүшүбүз керек.

- Эми ошол эле кодду NodeMCUде иштетүү үчүн биздин коддогу дагы бир сапты өзгөртүү керек.

"#Define OLED_RESET 4"> "#define OLED_RESET LED_BUILTIN" калган коду Arduino менен бирдей

Эң биринчи нерсени колдонуу үчүн мурунку экранды тазалоо керек

display.clearDisplay (); // Буферди тазалаңыз

Андан кийин объектти тартыңыз

testdrawline (); // Чийиңиз

Аны жабдыкта көрсөтүңүз

display.display (); // Аларды дисплейдин жабдыктарында көрүнүктүү кыл!

Кийинки нерсени көрсөтүү үчүн бир аз күтө туруңуз.

кечигүү (2000); // 2 секунд күтө туруңуз

Бул мисалда биз текст, сызыктар, чөйрөлөр, жылдыруучу текст, үч бурчтуктар жана башкалар сыяктуу бир нече нерселерди көрсөтөбүз. Баргыла жана фантазияңарды колдонуп, каалаган нерсеңерди ушул кичинекей дисплейлерде көрсөткүлө.

10 -кадам: Текстти ыңгайлаштыруу жана сүрөттөрдү кошуу

Текстти ыңгайлаштыруу жана сүрөттөрдү кошуу
Текстти ыңгайлаштыруу жана сүрөттөрдү кошуу
Текстти ыңгайлаштыруу жана сүрөттөрдү кошуу
Текстти ыңгайлаштыруу жана сүрөттөрдү кошуу
Текстти ыңгайлаштыруу жана сүрөттөрдү кошуу
Текстти ыңгайлаштыруу жана сүрөттөрдү кошуу

Кээде сиздин код ыңгайлаштырылган шрифттерди жана

сүрөттөр. Эгерде сиз бит картада абдан жакшы болсоңуз, анда жөн эле шрифттерди жана сүрөттөрдү түзүү үчүн дисплейдин кичинекей LED диоддорун күйгүзүү же өчүрүү аркылуу байт массивдерин түзүшүңүз керек.

Бирок, мен бул карталарды жасоодо анча жакшы эмесмин жана бит карта таблицаларын түзүүгө бир нече саат короткум келбейт.

Ошо сыяктуу эле, менин жолдору кандай? Мен көбүнчө эки веб -сайтты колдонуучу шрифттерди жана сүрөттөрдү түзүү үчүн колдоном. Шилтемелер төмөндөгү сүрөттөмөдө берилген.

Ыңгайлаштырылган шрифттер

Шрифт конвертеринин веб -сайтына өтүңүз, "Adafruit GFX Font" катары ариптин үй -бүлөсүн, стилин, өлчөмүн, Китепкана версиясын тандап, анан "Түзүү" баскычын басыңыз. Бул барактын оң жагында сиз шрифтиңиздин чыныгы дисплейде кандай болорун көрө аласыз.

Тандооңуздун негизинде веб -баракча шрифттердин баш файлын түзөт. Сиздин кодуңуз болгон папкада "modified_font.h" деп аталган файлды түзүңүз жана ага түзүлгөн кодду көчүрүп сактаңыз. Андан кийин сиз жөн эле шрифтти колдонуу үчүн кодуңузга башкы файлды кошушуңуз керек.

#"modified_font.h" кошуу

Андан кийин, текстти көрсөтүүдөн мурун, арипти орнотушуңуз керек, ага ылайыкташтырылган шрифтти колдонуңуз.

display.setFont (& Your_Fonts_Name);

Сиз шрифттин атын долбооруңузга жаңы эле кошулган баш файлдан ала аласыз. Мына, оңой.

Ыңгайлаштырылган шрифттерди колдонууда эс тутум дайыма тынчсыздандырат, андыктан дайыма эс тутуму керектелүүчү байттарды эске алыңыз. Эсиңизде болсун, Arduino UNOдо 32K гана эс бар.

Ыңгайлаштырылган сүрөттөр

Экранда битмап сүрөтүн көрсөтүү үчүн алгач 128 x 64/32 өлчөмүндөгү сүрөттү түзүү керек.

Мен эски "MS Paintти" 128 x 64 разряддык сүрөттү түзүү үчүн колдонуп жатам, андан кийин бул сүрөттү конвертер вебсайтына жүктөйм. Вебсайт Arduino жана OLED дисплейлери менен колдонула турган сүрөттөрдү байт-саптарга айландырат.

Сүрөттү вебсайтка жүктөө менен баштаңыз. Андан кийин "Сүрөттүн түстөрүн буруңуз" деген кутучаны белгилеңиз жана "Чыгуу кодунун форматын" "Arduino Code" деп өзгөртүп, багытын тандап, "Кодду түзүү" баскычын басып, байт массивин түзүңүз. "Алдын ала көрүү" бөлүмү сиздин сүрөтүңүздүн чыныгы дисплейде кандай болорун көрсөтөт.

Мен бул окуу куралы менен бирге кодду коштум, анда сиз сүрөттөрдү көрсөтүү үчүн колдоно аласыз. Сиз жөн гана менин кодумдагы массивди өзүңүз түзгөнгө алмаштырып, анан аны Arduinoго жүктөшүңүз керек.

11 -кадам: 2 дисплейди туташтыруу

2 дисплейди туташтыруу
2 дисплейди туташтыруу
2 дисплейди туташтыруу
2 дисплейди туташтыруу

Проектке 128 х 64 дисплейди туташтыруу оңой.

Сиз жөн гана 0x78 дарегинен 0Ohm каршылыгын ажыратып, аны 0x7Aга коюп, анан демейки 0x3C ордуна кодуңуздагы 0x3D дарегин колдонушуңуз керек.

Сиз эмне үчүн 0x78 жана 0x7A эмес, 0x3C жана 0x3D дарегин колдонуп жатканыбызга таң калышыңыз керек. Arduino 8 биттик аппараттык даректерди эмес, 7 биттик даректерди кабыл алат. Ошентип, биз адегенде 8-бит дарегин экиликке айландырышыбыз керек, андан кийин 7 битти алуу үчүн анча маанилүү эмес бөлүгүн кесип салыш керек. Андан кийин кодуңузга кирген 0x3C же 0x3D даректерди алуу үчүн 7 битти HEXке айлантыңыз.

Биринчиден, уникалдуу ат коюу менен дисплейди инициалдаңыз:

Adafruit_SSD1306 display1 (OLED_REST);

Adafruit_SSD1306 display2 (OLED_REST);

Андан кийин кодуңузда дисплейди 1 жана дисплейди 2 колдонуңуз, алардагы түзмөктүн даректери менен баштоо билдирүүлөрүн чакыруу үчүн:

display1.begin (SSD1306_SWITCHCAPVCC, 0x3C); // 1 op дарегин көрсөтүү 0x3C

display2.begin (SSD1306_SWITCHCAPVCC, 0x3D); // 2 op дарегин көрсөтүү 0x3D

Болду, эми кодуңуздун калган бөлүгүндө Display 1 же Display 2ди колдонуп, каалаган нерсеңизди кыла аласыз. Мен бул үйрөткүч менен мисал келтирдим.

Өткөрүү мурунку кылгандарыбызга окшош, дээрлик сиз Arduino же NodeMCUнун I2C казыктарына башка дисплейди кошушуңуз керек. Даректердин негизинде, MCU андан кийин I2C маалымат линиясына маалыматтарды жөнөтөт.

12 -кадам: 2ден ашык дисплейди туташтыруу

2ден ашык дисплейди туташтыруу
2ден ашык дисплейди туташтыруу
2ден ашык дисплейди туташтыруу
2ден ашык дисплейди туташтыруу
2ден ашык дисплейди туташтыруу
2ден ашык дисплейди туташтыруу

Эми, эгер сиз 2ден ашык дисплейди туташтыргыңыз келсе?

Arduino төөнөгүчтөрүнүн саны чектелүү, демек, сиз ага белгилүү өлчөмдө калканчтарды тиркей албайсыз. Мындан тышкары, ал I2C автобустарынын бир гана жуп бар.

Ошентип, биз кантип 2ден ашык I2C дисплейлерин Arduinoго тиркей алабыз? Айла - TCA9548 мультиплексорун колдонуу.

TCA9548 бир микроконтроллерге "64 сенсорлор" менен баардык I2C даректери менен байланышууга мүмкүнчүлүк берет, ар бир сенсордун суб-шинасына уникалдуу канал берүү.

Биз бир нече түзмөккө 2 зым аркылуу маалыматтарды жөнөтүү жөнүндө сөз кылганыбызда, аларды чечүүнүн жолу керек. Почтальон жалгыз жолдо келип, почта пакеттерин ар кайсы үйлөргө таштаган сыяктуу, анткени аларда башка даректер жазылган.

Мультиплексор микро контроллердин 3V3, GND, SDA жана SCL линияларына туташат. Кул сенсорлору борттогу SCL/SDA кул портторунун бирине туташкан. Каналдар TCA9548A анын I2C дарегин (0x70 {default} - 0x77), андан кийин каналдын номерин (0b00000001 - 0b10000000) жөнөтүү менен тандалат. Ушул мультиплексорлордун максимум 8инде 0x70-0x77 даректерине бириктирилип, ошол эле I2C даректелген бөлүктөрдүн 64үн көзөмөлдөө үчүн болушу мүмкүн. A0, A1 жана A2 үч дарек биттерин VINге туташтыруу менен сиз даректердин ар кандай айкалышын ала аласыз. Мен муну TCA9548A сынык тактасындагы кийинки үйрөткүчүмдө түшүндүрөм. Азырынча, бул тактага 8 OLEDди туташтырып, кодду тез карап көрөлү.

Туташуу:

VIN 5V чейин (же 3.3V)

GND жерге

SCLден I2C саатына чейин

SDAдан I2Cге чейинки маалыматтар

Андан кийин сенсорлорду VIN, GNDге туташтырыңыз жана SCn / SDn мультиплекстүү автобустарынын бирин колдонуңуз

Эми, Int коду "Wire" китепканасын кошуудан жана мультиплексорлордун дарегин аныктоодон баштайт.

#"Wire.h" кошуу

#кошуу

#аныктоо MUX_Address 0x70 // TCA9548A Encoders дареги

Андан кийин биз байланышкысы келген портту тандап, бул функцияны колдонуу менен андагы маалыматтарды жөнөтүшүбүз керек:

жараксыз tcaselect (uint8_t i) {

if (i> 7) кайтуу;

Wire.beginTransmission (MUX_Address);

Wire.write (1 << i);

Wire.endTransmission ();

}

Андан кийин, "u8g.begin ();" деп чакырып, орнотуу бөлүмүндөгү дисплейди баштайбыз. MUX тиркелген ар бир дисплей үчүн "tcaselect (i);"

Инициализациялангандан кийин, биз "tcaselect (i);" функциясын чакырып, каалаган нерсебизди жасай алабыз. мында "i" - бул мультиплексирленген автобустун мааниси, анан ошого жараша маалыматтарды жана саатты жөнөтүү.

13 -кадам: Артыкчылыктары жана кемчиликтери

Артыкчылыктары жана кемчиликтери
Артыкчылыктары жана кемчиликтери

OLEDдин сүрөтү сонун. Бирок, OLEDде дагы бар

кемчиликтер. OLED экрандарында органикалык материалдар болгондуктан, алардын өмүрү ЖК дисплейлерге караганда кыска. Мындан тышкары, көптөгөн OLED дисплейлери узак убакыт бою бир эле сүрөттү көрсөткөндөн кийин күйүп кетет. Күйгөндөн кийин, сүрөт башка сүрөттү көрсөткөндөн кийин да экранда калат. Андыктан экранды бир нече секунд сайын жаңыртып турганыңызды текшериңиз. Суу ошол дисплейлердин органикалык материалдарын дароо бузушу мүмкүн.

Артыкчылыктары

Арткы жарыктын кереги жок

Дисплейлер абдан ичке жана жеңил

Аз энергия керектөө

ЖКга караганда көрүү бурчтары кененирээк

Жарыктык жана контраст улуу

Жогорку ылдамдык жана жооп берүү убактысы аз

Терең кара түс

Кемчиликтери

Кымбат технология

Кыска жашоо цикли

OLEDS күйүп кетүү ыктымалдуулугу жогору

Суу зыян

14 -кадам: Жалпы каталар

Жалпы каталар
Жалпы каталар

Окутууну бүтүрүү үчүн, бир нече жалпы каталар жөнүндө сүйлөшөлү

адамдар бул дисплейлерди колдонуп жатканда:

- Долбооруңузда колдонуудан мурун, пиндерди дайыма үч жолу текшериңиз

- Башкы файлдагы жана кодуңуздагы туура китепкана дарегин алыңыз

#define SSD1306_I2C_ADDRESS 0x3C // in Adafruit_SSD1306.h

жана

display.begin (SSD1306_SWITCHCAPVCC, 0x3C); // кодуңузда

Эгерде дарек туура эмес болсо, OLED эч нерсени көрсөтпөйт

- Дисплейдин өлчөмүн драйверде колдонуудан мурун өзгөртүү керек. Эгерде ал өзгөртүлбөсө, сиз кодду текшерүүгө аракет кылып жатканда ката тууралуу билдирүү аласыз

#error ("Бийиктик туура эмес, Adafruit_SSD1306.h оңдоңуз!");

- Эгерде NodeMCU колдонуп жатсаңыз, OLED_RESETти 4төн LED_BUILTINге алмаштырганыңызды текшериңиз.

#аныктоо OLED_RESET LED_BUILTIN

Менде бул OLED дисплейди колдонуп, ар кандай нерселерди жасап жаткан адамдар бар. Кээ бирлери видео оюндарды да жасашты. Мен бул кичинекей дисплейди колдонуп видео оюн жасоого кызыкдар эмесмин. Бирок, мен азыр сиздин кыялыңызды изилдөөгө жана укмуштуудай идеялар менен чыгууга таштап кетем.

15 -кадам: Шилтемелер

- Блог:

- Сүрөт кошуу:

- Ыңгайлаштырылган текст:

- Adafruit дисплей китепканасы:

-Adafruit GFX китепканасы:

- u8glib китепканасы: https://code.google.com/archive/p/u8glib/ же

Эгерде сиз кичирээк дисплейди колдонууну кааласаңыз, демейки 128_32ди колдонуңуз, антпесе чоңураак дисплейге 128_32 комментарий бериңиз жана кодуңуздагы 128X64 NO_ACK белгисин комментарийлеңиз (колдонуп жаткан экраныңыздын түрүн комментарийлеңиз) (шрифттер ариптердин китепканасында)

Сунушталууда: