Orodha ya maudhui:
- Hatua ya 1: Maktaba
- Hatua ya 2: Wemos Lolin ESP32 OLED
- Hatua ya 3: Mfano
- Hatua ya 4: Mkutano
- Hatua ya 5: Kanuni
- Hatua ya 6: Baadhi ya Kazi Nyingine za Kuvutia
Video: ESP32 Pamoja na Oled Onyesha - Baa ya Maendeleo: Hatua 6
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
ESP32 ambayo tutazungumza leo ni ile ambayo tayari inakuja na Oled Oled iliyojengwa. Kazi hii inafanya maisha yetu kuwa rahisi sana, kwa sababu tunaweza kuwa na maoni kuhusu dhamana ya anuwai inayoonekana. Sio lazima hata uangalie dirisha la utatuzi. Pia, unaweza kukusanya uwakilishi na kuchora chati za utendaji, kati ya mambo mengine. Kwa sababu ya faida hizi, ninachukulia mfano huu kama bidhaa nzuri, na tutaipanga leo kwa kutumia Arduino IDE.
Kwa hivyo, kwenye video hii tutapanga bar ya maendeleo. Ni muhimu kukumbuka kuwa ikiwa ESP32 yako haina oled ya kuonyesha, inawezekana kuinunua kando. Pia, ikiwa haujawahi kupanga ESP32, ninashauri utazame video hii: UTANGULIZI WA VIDEO KWA ESP32, ambayo inashughulikia somo hilo kwa undani zaidi.
Hatua ya 1: Maktaba
Kutumia onyesho la oled, tunahitaji kusanidi maktaba katika Arduino IDE. Ili kufanya hivyo, pakua maktaba kupitia kiunga.
Unzip faili na ubandike kwenye folda ya maktaba ya Arduino IDE.
C: / ProgramFiles (x86) / Arduino / maktaba
Hatua ya 2: Wemos Lolin ESP32 OLED
Wemos Lolin ni jina la ESP hii. Kwenye picha, sehemu nyeusi ni onyesho na, karibu na kifaa, tunaonyesha pinout nzima. Kama inavyoonyeshwa, kuna IO kadhaa ambazo zinaturuhusu kuwasha na kuzima vitu anuwai. Kwa kuongeza, mtindo huu una kizazi kipya cha WiFi na Bluetooth.
Hatua ya 3: Mfano
Kwenye video, unaweza kuona mradi wetu tayari, na jinsi ya kutumia onyesho la oled kuonyesha bar ya maendeleo inayodhibitiwa na potentiometer.
Hatua ya 4: Mkutano
Kwa mkutano wetu nilitumia potentiometer ya 10k, na nikawasha mshale wa GPIO25. Pia tuna 3v3 na GND, kama unaweza kuona kwenye takwimu hapa chini. Nguvu itatoka kwa USB yenyewe.
Hatua ya 5: Kanuni
Kwanza, tunaongeza maktaba "SSD1306.h". Kwa hili, tutafikia onyesho la oled. Baada ya hapo, tunaunda kitu cha kuonyesha cha aina ya SSD1306 ambacho kitakuwa na jukumu la kudhibiti yaliyomo kwenye onyesho la oled.
# pamoja na "SSD1306.h" // alias for #include "SSD1306Wire.h" // objeto controlador do show de led / * 0x3c: é um identificador único para comunicação do show pino 5 e 4 são os de comunicação (SDA, SDC Skrini ya SSD1306 (0x3c, 5, 4); // pino que ligamos o potenciometro #fasili PINO_POTENCIOMETRO 25 // utilizado para fazer o contador de porcentagem int contador;
Sanidi
Katika kazi ya kuanzisha (), tutaanzisha kitu chetu cha kuonyesha ili tuweze kudhibiti kile kitaonyeshwa. Kupitia kitu hiki, tutasanidi chanzo cha maandishi kwa maandishi ambayo yataonyeshwa. Na, mwishowe, tuliweka pini (haswa, pini ambapo tuligeuza potentiometer) kwa INPUT ili kusoma thamani.
kuanzisha batili () {Serial.begin (115200); Serial.println (); Serial.println (); // Inicializa o objeto que controlará o que será exibido na tela screen.init (); // gira o kuonyesha 180º (deixa de ponta cabeça) // display.flipScreenVertically (); // usanidi fonte de escrita "ArialMT_Plain_10" skrini.setFont (ArialMT_Plain_10); // configura o pino para fazer a leitura do potenciômetro. pinMode (PINO_POTENCIOMETRO, INPUT); }
Kitanzi
Katika kazi ya kitanzi (), tutasoma thamani ya sasa ya potentiometer. Tunaweza kugundua kuwa tunatumia kazi ya "ramani" mara tu baada ya kusoma thamani, kwa sababu thamani ya kusoma ni ya juu sana kuweka bar ya maendeleo, kwa hivyo tutapanga ramani kuwa kati ya 0 hadi 100.
kitanzi batili () {// leitura do valor do potenciometro int valor = analogRead (PINO_POTENCIOMETRO); //Serial.println (Valor); // mapeando o valor do potenciometro para o valor da barra de progresso // potenciometro faz a leitura do valor no intervalo de 0 a 4095 // a barra de progresso espera um valor entre 0 e 100 contador = ramani (uhodari, 0, 4095, 0, 100); // limpa todo o onyesha, apaga o contúdo da tela screen.clear (); // ++ kaunta; // kaunta> 100? kaunta = 0: kaunta = kaunta; // desenha maendeleo bar kutekaProgressBar (); // exibe na tela o que foi configurado até então. onyesho la skrini (); kuchelewesha (10); }
Katika kazi "drawProgress ()", tutatumia thamani iliyosomwa kutoka kwa potentiometer ambayo imehifadhiwa katika "percProgress" inayobadilika kuweka kwenye mwambaa wa maendeleo. Pia tutaweka maandishi juu tu ya mwambaa wa maendeleo, ikionyesha asilimia ya sasa.
// função para desenhar maendeleo ya bar hakuna onyesho la kuzuia drawProgressBar () {Serial.print (">>"); Serial.println (contador); // desenha maendeleo bar / * * DrawProgressBar (x, y, upana, urefu, thamani); parametros (p): p1: x coordenada X no plano cartesiano p2: y coordenada Y no plano cartesiano p3: wide comprimento da barra de progresso p4: height altura da barra de progresso p5: value valor que a barra de progresso deve assumir * / skrini.drawProgressBar (10, 32, 100, 10, contador); // usanidi wa alinhamento fanya maandishi ya barua pepe / soma caso alinharemos o texto ao centro screen.setTextAlignment (TEXT_ALIGN_CENTER); // escreve o texto de porcentagem / * * DrawString (x, y, maandishi); parametros (p): p1: x coordenada X no plano cartesiano p2: y coordenada Y no plano cartesiano p3: string texto que será exibido * / screen.drawString (64, 15, String (contador) + "%"); // se o contador está em zero, sambaza kamba "valor mínimo" ikiwa (contador == 0) {screen.drawString (64, 45, "Valor mínimo"); } // se contador está em 100, ongeza kamba "valor máximo" vingine ikiwa (contador == 100) {screen.drawString (64, 45, "Valor máximo"); }}
Hatua ya 6: Baadhi ya Kazi Nyingine za Kuvutia
Onyesha
// huweka onyesho la kichwa chini
utupu flipScreen Vertically ();
Kuchora
// huchota pikseli moja kutoka skrini
kuwekaPixel batili (int16_t x, int16_t y);
// chora mstari
Utupu wa kuchora (int16_t x0, int16_t y0, int16_t x1, int16_t y1);
// chora mstatili
DrawRect batili (int16_t x, int16_t y, int16_t upana, int16_t urefu);
// chora duara
chora batili Mzunguko (int16_t x, int16_t y, int16_t radius);
// jaza duara
batili kujaza Mzunguko (int16_t x, int16_t y, int16_t radius);
// chora laini
chora batiliLine ya Mzunguko (int16_t x, int16_t y, int16_t urefu);
// chora mstari wa wima
chora batili VerticalLine (int16_t x, int16_t y, int16_t urefu);
Nakala
// huweka mpangilio wa maandishi kuandikwa
// TEXT_ALIGN_LEFT, TEXT_ALIGN_CENTER, TEXT_ALIGN_RIGHT, TEXT_ALIGN_CENTER_BOTH
batili setTextAlignment (OLEDDISPLAY_TEXT_ALIGNMENT textAlignment);
Ilipendekeza:
Jinsi ya Kuweka OSMC Pamoja na Hyperion kwenye Raspberry Pi Pamoja na Ukanda wa WS2812b: Hatua 8
Jinsi ya Kuanzisha OSMC Pamoja na Hyperion kwenye Raspberry Pi Na WS2812b Led Strip: Wakati mwingine mimi ni kingereza vizuri sana, wakati mwingine hakuna … Vitu vya kwanza kwanza. Hii ni lugha yangu ya kwanza kufundishwa na Kiingereza sio lugha yangu ya asili, kwa hivyo tafadhali, usiwe mgumu sana kwangu. Hii haitakuwa juu ya jinsi ya kujenga fremu, hiyo ni rahisi. Inahusu usakinishaji
Bodi ya Maendeleo ya ESP32 ya DIY - ESPer: Hatua 5 (na Picha)
Bodi ya Maendeleo ya ESP32 ya DIY - ESPer: Hivi karibuni nilikuwa nikisoma juu ya IoTs nyingi (Mtandao wa Vitu) na kuniamini, sikuweza kungoja kujaribu moja ya vifaa hivi nzuri, na uwezo wa kuungana na mtandao, mwenyewe na kupata mikono yangu kwenye kazi. Kwa bahati nzuri nafasi
ESP32 GPS Tracker Pamoja na OLED Onyesha: Hatua 7
ESP32 GPS Tracker Pamoja na OLED Display: Hii ni tracker ya GPS inayoonyesha data zote za mkao kwenye onyesho la OLED. Kitufe husaidia mtumiaji kuingiliana na UI kwenye OLED. Haya, kuna nini, jamani? Akarsh hapa kutoka CETech. Nambari inatoa programu inayotokana na menyu kwa kutumia kitufe cha ubao,
Jinsi ya Kutumia Magari ya Stepper Kama Encoder ya Rotary na OLED Onyesha kwa Hatua: 6 Hatua
Jinsi ya Kutumia Magari ya Stepper Kama Encoder ya Rotary na OLED Onyesha kwa Hatua: Katika mafunzo haya tutajifunza jinsi ya kufuatilia hatua za gari za stepper kwenye OLED Onyesho. Tazama video ya maonyesho. Sifa ya mafunzo ya Asili huenda kwa mtumiaji wa youtube " sky4fly "
Utangulizi ESP32 Lora OLED Onyesha: Hatua 8
Utangulizi ESP32 Lora OLED Onyesha: Hii ni video nyingine inayohusu Utangulizi wa ESP32 LoRa. Wakati huu, tutazungumza haswa juu ya onyesho la picha (la saizi 128x64). Tutatumia maktaba ya SSD1306 kuonyesha habari kwenye onyesho hili la OLED na kuwasilisha mfano o