<?xml version="1.0" encoding="UTF-8" ?><!-- generator=Zoho Sites --><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><atom:link href="https://www.uktech.com.br/bloguk/tag/ssd1306-by-adafruit/feed" rel="self" type="application/rss+xml"/><title>UKTech - Blog UKTech #SSD1306 by Adafruit</title><description>UKTech - Blog UKTech #SSD1306 by Adafruit</description><link>https://www.uktech.com.br/bloguk/tag/ssd1306-by-adafruit</link><lastBuildDate>Thu, 07 May 2026 09:41:05 -0700</lastBuildDate><generator>http://zoho.com/sites/</generator><item><title><![CDATA[Utilizando o ESP32-C3 em conjunto com o display OLED para exibir imagens]]></title><link>https://www.uktech.com.br/bloguk/post/utilizando-o-esp32-c3-em-conjunto-com-o-display-oled-para-exibir-imagens</link><description><![CDATA[<img align="left" hspace="5" src="https://www.uktech.com.br/vishnu-mohanan-r98pDCvbcfM-unsplash.jpg"/>No tutorial de hoje vamos mostrar como usar o ESP32-C3 em conjunto com o display OLED para exibir imagens. Materiais utilizados: 1. ESP32-C3 (UKT-ESP32C ]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_VvQUh915Tm-xBWyUS4_FgQ" data-element-type="section" class="zpsection zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_VvQUh915Tm-xBWyUS4_FgQ"].zpsection{ border-radius:1px; } </style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_cfVpmi0SMcUt_I9LMxyePQ" data-element-type="row" class="zprow zprow-container zpalign-items-center zpjustify-content-center " data-equal-column=""><style type="text/css"> [data-element-id="elm_cfVpmi0SMcUt_I9LMxyePQ"].zprow{ border-radius:1px; } </style><div data-element-id="elm_pQ-qvL9E5-AGHbIA7f3DmQ" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- zpdefault-section zpdefault-section-bg "><style type="text/css"> [data-element-id="elm_pQ-qvL9E5-AGHbIA7f3DmQ"].zpelem-col{ border-radius:1px; } </style><div data-element-id="elm_FV1a-8_ufkf5d04WKSO1Qg" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_FV1a-8_ufkf5d04WKSO1Qg"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-center " data-editor="true"><div><div><div><p style="color:inherit;text-align:left;">No tutorial de hoje vamos mostrar como usar o ESP32-C3 em conjunto com o display OLED para exibir imagens.</p><p style="color:inherit;text-align:left;"><br/></p><p style="text-align:left;"><span style="font-size:28px;color:rgba(49, 188, 173, 0.88);">Materiais utilizados:</span></p><p style="color:inherit;text-align:left;">1. ESP32-C3 (UKT-ESP32C3-DEV-MINI-USB)<a href="https://www.uktech.eng.br/MLB-3441547157-placa-desenvolvimento-esp32-c3-usb-c-carregador-de-bateria-_JM" title="(Onde comprar)" target="_blank" rel=""><br/></a></p><p style="color:inherit;text-align:left;">2. Display LCD (128x32);</p><p style="color:inherit;text-align:left;">3. Jumper’s ou fios.</p><p style="color:inherit;text-align:left;"><br/></p><p style="text-align:left;"><span style="font-size:28px;color:rgb(49, 188, 173);">Esquemático:</span></p></div></div></div></div>
</div><div data-element-id="elm_h23P9hnKd1Yy9d4nr4L9Dg" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_h23P9hnKd1Yy9d4nr4L9Dg"] .zpimage-container figure img { width: 500px ; height: 666.67px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_h23P9hnKd1Yy9d4nr4L9Dg"] .zpimage-container figure img { width:500px ; height:666.67px ; } } @media (max-width: 767px) { [data-element-id="elm_h23P9hnKd1Yy9d4nr4L9Dg"] .zpimage-container figure img { width:500px ; height:666.67px ; } } [data-element-id="elm_h23P9hnKd1Yy9d4nr4L9Dg"].zpelem-image { border-radius:1px; } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-left zpimage-tablet-align-left zpimage-mobile-align-left zpimage-size-medium zpimage-tablet-fallback-medium zpimage-mobile-fallback-medium hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Untitled.png" width="500" height="666.67" loading="lazy" size="medium" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_5kvsAZ7lPK4sgdcItH9JkA" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_5kvsAZ7lPK4sgdcItH9JkA"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><div><div><p style="color:inherit;">Bibliotecas Arduíno utilizadas:</p><ul style="color:inherit;"><li>SSD1306 by Adafruit.</li></ul><p style="color:inherit;">E dependências das respectivas bibliotecas acima.</p><p style="color:inherit;text-align:justify;"><br/></p><p style="text-align:justify;"><span style="font-size:28px;color:rgb(49, 188, 173);">Seleção da placa na Arduíno IDE:</span></p><div style="color:inherit;"><figure><div><img src="https://media.licdn.com/dms/image/D4D12AQH30VwLri90WQ/article-inline_image-shrink_1500_2232/0/1696504869849?e=1701907200&amp;v=beta&amp;t=dJbXLspWglwmMQYgZK9lAj-iZO67x64jdRighEQL6lE" alt=""></div></figure></div><p style="color:inherit;">Selecionamos o módulo ESP32C3.</p><p style="color:inherit;"><br/></p><p><span style="font-size:28px;color:rgb(49, 188, 173);">Código</span><span style="color:inherit;">:</span></p></div></div></div>
</div><div data-element-id="elm_5W4Q07bBKKQjDiCrQLYPSg" data-element-type="codeSnippet" class="zpelement zpelem-codesnippet "><div class="zpsnippet-container"><pre><code>#include &quot;Adafruit_SSD1306.h&quot;

// Define o tamanho do display OLED
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 32

const unsigned char uktech_negativo_branco [] PROGMEM = {
	// &#x27;uktech_negativo_branco, 128x32px
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x70, 0x3d, 0xe0, 0xff, 0xfe, 0xff, 0xe0, 0xfc, 0x1c, 0x0e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x70, 0x3d, 0xe1, 0xff, 0xfe, 0xff, 0xe3, 0xff, 0x3c, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x70, 0x3d, 0xe3, 0xff, 0xfe, 0xff, 0xe7, 0xff, 0xbc, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x70, 0x3d, 0xe7, 0x81, 0xe0, 0xf0, 0x0f, 0xcf, 0xbc, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x70, 0x3d, 0xef, 0x01, 0xe0, 0xf0, 0x0f, 0x02, 0x3c, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x70, 0x3d, 0xfe, 0x01, 0xe0, 0xf0, 0x1e, 0x00, 0x3c, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x70, 0x3d, 0xfe, 0x01, 0xe0, 0xff, 0xde, 0x00, 0x3f, 0xfe, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x70, 0x3d, 0xfe, 0x01, 0xe0, 0xff, 0xde, 0x00, 0x3f, 0xfe, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x70, 0x3d, 0xff, 0x01, 0xe0, 0xff, 0xde, 0x00, 0x3f, 0xfe, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x78, 0x3d, 0xe7, 0x81, 0xe0, 0xf0, 0x1e, 0x00, 0x3c, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x78, 0x3d, 0xe3, 0xc1, 0xe0, 0xf0, 0x0f, 0x03, 0xbc, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x3c, 0x79, 0xe3, 0xc1, 0xe0, 0xff, 0xef, 0xcf, 0xbc, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x3f, 0xf9, 0xe1, 0xe1, 0xe0, 0xff, 0xe7, 0xff, 0xbc, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x1f, 0xf1, 0xe0, 0xf1, 0xe0, 0xff, 0xe3, 0xff, 0x3c, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x0f, 0xc1, 0xe0, 0xf9, 0xe0, 0xff, 0xe0, 0xfc, 0x3c, 0x1e, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x20, 0x20, 0x1c, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x13, 0x24, 0xb2, 0xe8, 0x89, 0x2c, 0xa9, 0x88, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x12, 0xcf, 0x6a, 0xad, 0xcb, 0xc9, 0x76, 0x98, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x1a, 0x6d, 0x6e, 0xbd, 0xcb, 0xe9, 0xad, 0x98, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};

Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &amp;Wire, -1);


void setup() {
  //Velocidade do monitor serial
  Serial.begin(115200);
  // Pinos do barramento I2C
  Wire.begin(18, 19);

   // Verifica estado de inicialização do display, acusa falha em caso de erro
  if (!display.begin(SSD1306_SWITCHCAPVCC, 0, false, true)) {
    Serial.println(F(&quot;Falha ao inicializar o SSD1306&quot;));
    for (;;)
      ;
  }

}

void loop() {
display.clearDisplay();
  display.drawBitmap(0, 0, uktech_negativo_branco, 128, 32, SSD1306_WHITE); // Draw the bitmap
  display.display(); // Show the image on the display
  delay(1000); // Pause for 1 second

}</code></pre></div>
</div><div data-element-id="elm_pNMfi0P63_y2SDJfS5g3dQ" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_pNMfi0P63_y2SDJfS5g3dQ"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><p><span style="color:inherit;"><span style="font-size:20px;">Onde o vetor uktech_negativo_branco[] foi gerado a partir da seguinte imagem.</span></span><br/></p></div>
</div><div data-element-id="elm_-OsiyM1MS_4mc5gIaqILIQ" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_-OsiyM1MS_4mc5gIaqILIQ"] .zpimage-container figure img { width: 500px ; height: 186.25px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_-OsiyM1MS_4mc5gIaqILIQ"] .zpimage-container figure img { width:500px ; height:186.25px ; } } @media (max-width: 767px) { [data-element-id="elm_-OsiyM1MS_4mc5gIaqILIQ"] .zpimage-container figure img { width:500px ; height:186.25px ; } } [data-element-id="elm_-OsiyM1MS_4mc5gIaqILIQ"].zpelem-image { border-radius:1px; } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-medium zpimage-tablet-fallback-medium zpimage-mobile-fallback-medium hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/uktech_negativo_verde.png" width="500" height="186.25" loading="lazy" size="medium" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_KVlCK4RVlE9G8J1yi22nPg" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_KVlCK4RVlE9G8J1yi22nPg"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><p><span style="font-size:28px;color:rgb(49, 188, 173);">Como obter o vetor de bytes a partir de uma imagem:&nbsp;</span></p><p><span style="color:inherit;">Basta utilizar algum das ferramentas abaixo:</span></p><ul><li><span style="color:inherit;"><a href="https://javl.github.io/image2cpp/" title="https://javl.github.io/image2cpp/&nbsp;" target="_blank" rel="">https://javl.github.io/image2cpp/&nbsp;</a></span><br/></li><li><span style="color:inherit;"><a href="https://diyusthad.com/image2cpp" title="https://diyusthad.com/image2cpp&nbsp;" target="_blank" rel="">https://diyusthad.com/image2cpp&nbsp;</a></span><br/></li><li><span style="color:inherit;"><a href="https://mischianti.org/images-to-byte-array-online-converter-cpp-arduino/" title="https://mischianti.org/images-to-byte-array-online-converter-cpp-arduino/" target="_blank" rel="">https://mischianti.org/images-to-byte-array-online-converter-cpp-arduino/</a></span><br/></li></ul></div>
</div><div data-element-id="elm_aQ-iDdPyfKJ2v-hvstDiLg" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_aQ-iDdPyfKJ2v-hvstDiLg"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><p><span style="color:rgb(49, 188, 173);font-size:28px;">Resultado:</span><br/></p></div>
</div><div data-element-id="elm_8HfNx78h6WekdZ3wi-mDBw" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_8HfNx78h6WekdZ3wi-mDBw"] .zpimage-container figure img { width: 500px ; height: 666.67px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_8HfNx78h6WekdZ3wi-mDBw"] .zpimage-container figure img { width:500px ; height:666.67px ; } } @media (max-width: 767px) { [data-element-id="elm_8HfNx78h6WekdZ3wi-mDBw"] .zpimage-container figure img { width:500px ; height:666.67px ; } } [data-element-id="elm_8HfNx78h6WekdZ3wi-mDBw"].zpelem-image { border-radius:1px; } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-left zpimage-tablet-align-left zpimage-mobile-align-left zpimage-size-medium zpimage-tablet-fallback-medium zpimage-mobile-fallback-medium hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/Untitled%201.png" width="500" height="666.67" loading="lazy" size="medium" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_8qocvXLaOpfWoka3TN8a3w" data-element-type="divider" class="zpelement zpelem-divider "><style type="text/css"> [data-element-id="elm_8qocvXLaOpfWoka3TN8a3w"].zpelem-divider{ border-radius:1px; } </style><style></style><div class="zpdivider-container zpdivider-line zpdivider-align-center zpdivider-width100 zpdivider-line-style-solid "><div class="zpdivider-common"></div>
</div></div><div data-element-id="elm_OgBEGXwO_Eg3_dhq88ZeLA" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_OgBEGXwO_Eg3_dhq88ZeLA"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><div><p><span style="font-size:18px;color:rgb(49, 188, 173);">Sobre o autor:</span></p><p style="color:inherit;"><span style="font-family:verdana, sans-serif;">Matheus Ernan Reichert</span></p><p style="color:inherit;"><span style="color:inherit;">Matheus desempenha o papel de desenvolvedor de sistemas de tecnologia da informação dentro da equipe da UKTech. Possui experiência no domínio de micro controladores e desenvolvimento de software, e está na reta final de sua graduação em Engenharia de Computação. Em seus momentos de lazer, ele se dedica a interesses como jogos de computador e a apreciação de animes.</span><br/></p></div></div>
</div><div data-element-id="elm_SKn6lUyXjU2FkJhAV4_hqA" data-element-type="divider" class="zpelement zpelem-divider "><style type="text/css"> [data-element-id="elm_SKn6lUyXjU2FkJhAV4_hqA"].zpelem-divider{ border-radius:1px; } </style><style></style><div class="zpdivider-container zpdivider-line zpdivider-align-center zpdivider-width100 zpdivider-line-style-solid "><div class="zpdivider-common"></div>
</div></div><div data-element-id="elm_xxO0A9jJKthwKr_NQEPLNA" data-element-type="button" class="zpelement zpelem-button "><style> [data-element-id="elm_xxO0A9jJKthwKr_NQEPLNA"].zpelem-button{ border-radius:1px; } </style><div class="zpbutton-container zpbutton-align-center "><style type="text/css"></style><a class="zpbutton-wrapper zpbutton zpbutton-type-primary zpbutton-size-md zpbutton-style-none " href="/Fale-conosco" target="_blank"><span class="zpbutton-content">Entre em contato conosco</span></a></div>
</div></div></div></div></div></div> ]]></content:encoded><pubDate>Thu, 05 Oct 2023 09:37:58 -0300</pubDate></item><item><title><![CDATA[Utilizando o ESP32-C3 em conjunto com o sensor BME680e a Arduíno IDE]]></title><link>https://www.uktech.com.br/bloguk/post/utilizando-o-esp32-c3-em-conjunto-com-o-sensor-bme680e-a-arduíno-ide</link><description><![CDATA[<img align="left" hspace="5" src="https://www.uktech.com.br/getty-images-CCjYIrjpYvM-unsplash.jpg"/>No tutorial de hoje vamos mostrar como usar o ESP32-C3 em conjunto com o sensor BME680 para medir temperatura, umidade, pressão e VOC (Composto orgâni ]]></description><content:encoded><![CDATA[<div class="zpcontent-container blogpost-container "><div data-element-id="elm_Srg3otbJSauSPUjDjMWe8g" data-element-type="section" class="zpsection "><style type="text/css"></style><div class="zpcontainer-fluid zpcontainer"><div data-element-id="elm_EN_OefMoQBSUi4QmBd37kA" data-element-type="row" class="zprow zprow-container zpalign-items- zpjustify-content- " data-equal-column=""><style type="text/css"></style><div data-element-id="elm_FvHKve1qQpyvQM8K07AbyA" data-element-type="column" class="zpelem-col zpcol-12 zpcol-md-12 zpcol-sm-12 zpalign-self- "><style type="text/css"></style><div data-element-id="elm_nLqn6s_zTz2d71y6qTrplA" data-element-type="text" class="zpelement zpelem-text "><style></style><div class="zptext zptext-align-center " data-editor="true"><p style="text-align:left;"><span style="color:inherit;">No tutorial de hoje vamos mostrar como usar o ESP32-C3 em conjunto com o sensor BME680 para medir temperatura, umidade, pressão e VOC (Composto orgânico volátil), também vamos mostrar essas informações em um display OLED.</span><br/></p></div>
</div><div data-element-id="elm_8iClLPrd0JtIbmokag7h7w" data-element-type="heading" class="zpelement zpelem-heading "><style> [data-element-id="elm_8iClLPrd0JtIbmokag7h7w"].zpelem-heading { border-radius:1px; } </style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;font-size:20px;">Materiais utilizados:</span><br/></h2></div>
<div data-element-id="elm_6AmRqsbODvJoaFK-KKOkyg" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_6AmRqsbODvJoaFK-KKOkyg"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><ol><li><span style="color:inherit;">ESP32-C3 (UKT-ESP32C3-DEV-MINI-USB)</span></li><li><span style="color:inherit;">BME680&nbsp;</span></li><li><span style="color:inherit;">Display LCD (128x32)&nbsp;<br/></span></li><li><span style="color:inherit;">Jumpers ou fios</span></li></ol></div>
</div><div data-element-id="elm_KAh5y2q8Q4CO9WbA405FQw" data-element-type="heading" class="zpelement zpelem-heading "><style> [data-element-id="elm_KAh5y2q8Q4CO9WbA405FQw"].zpelem-heading { border-radius:1px; } </style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;"><span style="font-size:20px;">Esquemático</span>:</span><br/></h2></div>
<div data-element-id="elm_HopaNaHLTpqw3pYPd8ywvg" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_HopaNaHLTpqw3pYPd8ywvg"] .zpimage-container figure img { width: 962px ; height: 633.75px ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_HopaNaHLTpqw3pYPd8ywvg"] .zpimage-container figure img { width:723px ; height:476.30px ; } } @media (max-width: 767px) { [data-element-id="elm_HopaNaHLTpqw3pYPd8ywvg"] .zpimage-container figure img { width:415px ; height:273.40px ; } } [data-element-id="elm_HopaNaHLTpqw3pYPd8ywvg"].zpelem-image { border-radius:1px; } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-fit zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/3.esquema.png" width="415" height="273.40" loading="lazy" size="fit" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_M4z92bvvuvhixWc2_bgpjQ" data-element-type="heading" class="zpelement zpelem-heading "><style> [data-element-id="elm_M4z92bvvuvhixWc2_bgpjQ"].zpelem-heading { border-radius:1px; } </style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;font-size:20px;">Bibliotecas Arduíno utilizadas:</span><br/></h2></div>
<div data-element-id="elm_ekbT7TFVGW3FTd6e0oM0WQ" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_ekbT7TFVGW3FTd6e0oM0WQ"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><ul><li><span style="color:inherit;">BME680 by Adafruit&nbsp;</span></li><li><span style="color:inherit;">SSD1306 by Adafruit&nbsp;</span></li></ul><p><span style="color:inherit;">E dependências das respectivas bibliotecas acima.</span><br/></p></div>
</div><div data-element-id="elm_Hz_6E4QRKAPBqRH9njImfg" data-element-type="heading" class="zpelement zpelem-heading "><style> [data-element-id="elm_Hz_6E4QRKAPBqRH9njImfg"].zpelem-heading { border-radius:1px; } </style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;font-size:20px;">Seleção da placa na Arduíno IDE:&nbsp;</span><br/></h2></div>
<div data-element-id="elm_8nlACJjNwIQlFm6GSuJsKw" data-element-type="image" class="zpelement zpelem-image "><style> @media (min-width: 992px) { [data-element-id="elm_8nlACJjNwIQlFm6GSuJsKw"] .zpimage-container figure img { width: 277px !important ; height: 51px !important ; } } @media (max-width: 991px) and (min-width: 768px) { [data-element-id="elm_8nlACJjNwIQlFm6GSuJsKw"] .zpimage-container figure img { width:277px ; height:51px ; } } @media (max-width: 767px) { [data-element-id="elm_8nlACJjNwIQlFm6GSuJsKw"] .zpimage-container figure img { width:277px ; height:51px ; } } [data-element-id="elm_8nlACJjNwIQlFm6GSuJsKw"].zpelem-image { border-radius:1px; } </style><div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="left" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-left zpimage-tablet-align-left zpimage-mobile-align-left zpimage-size-original zpimage-tablet-fallback-original zpimage-mobile-fallback-original hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark"><figure role="none" class="zpimage-data-ref"><span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;"><picture><img class="zpimage zpimage-style-none zpimage-space-none " src="/2023-09-18-14-53-23-Captura%20de%20tela%20de%202023-09-18%2014-53-18.png" width="277" height="51" loading="lazy" size="original" data-lightbox="true"/></picture></span></figure></div>
</div><div data-element-id="elm_9r-ZGcQ6uW0eV8xzil1tmw" data-element-type="text" class="zpelement zpelem-text "><style> [data-element-id="elm_9r-ZGcQ6uW0eV8xzil1tmw"].zpelem-text { border-radius:1px; } </style><div class="zptext zptext-align-left " data-editor="true"><p><span style="color:inherit;">Selecionamos o módulo ESP32C3.</span><br/></p></div>
</div><div data-element-id="elm_ePUST2HSmHGR9ByV1Wc76Q" data-element-type="heading" class="zpelement zpelem-heading "><style> [data-element-id="elm_ePUST2HSmHGR9ByV1Wc76Q"].zpelem-heading { border-radius:1px; } </style><h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="color:inherit;font-size:20px;">Código:</span><br/></h2></div>
<div data-element-id="elm_86Ej6H-V7UKSVDy-653BGw" data-element-type="codeSnippet" class="zpelement zpelem-codesnippet "><div class="zpsnippet-container"><pre><code class="fenced-code-block language-arduino"><span class="token macro property"><span class="token directive-hash">#</span><span class="token directive keyword">include</span> <span class="token string">"Adafruit_SSD1306.h"</span></span>
<span class="token macro property"><span class="token directive-hash">#</span><span class="token directive keyword">include</span> <span class="token string">"Adafruit_BME680.h"</span></span>

<span class="token comment">// Define o tamanho do display OLED</span>
<span class="token macro property"><span class="token directive-hash">#</span><span class="token directive keyword">define</span> <span class="token macro-name">SCREEN_WIDTH</span> <span class="token expression"><span class="token number">128</span></span></span>
<span class="token macro property"><span class="token directive-hash">#</span><span class="token directive keyword">define</span> <span class="token macro-name">SCREEN_HEIGHT</span> <span class="token expression"><span class="token number">32</span></span></span>

<span class="token macro property"><span class="token directive-hash">#</span><span class="token directive keyword">define</span> <span class="token macro-name">SEALEVELPRESSURE_HPA</span> <span class="token expression"><span class="token punctuation">(</span><span class="token number">1013.25</span><span class="token punctuation">)</span></span></span>

<span class="token comment">// Inidicaliza o sensor e o display</span>
Adafruit_BME680 bme<span class="token punctuation">;</span>
Adafruit_SSD1306 <span class="token function">display</span><span class="token punctuation">(</span>SCREEN_WIDTH<span class="token punctuation">,</span> SCREEN_HEIGHT<span class="token punctuation">,</span> <span class="token operator">&amp;</span><span class="token builtin">Wire</span><span class="token punctuation">,</span> <span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

<span class="token keyword">void</span> <span class="token keyword">setup</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  <span class="token comment">//Velocidade do monitor serial</span>
  <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class="token function">begin</span><span class="token punctuation">(</span><span class="token number">115200</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token comment">// Pinos do barramento I2C</span>
  <span class="token builtin">Wire</span><span class="token punctuation">.</span><span class="token function">begin</span><span class="token punctuation">(</span><span class="token number">3</span><span class="token punctuation">,</span> <span class="token number">2</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

   <span class="token comment">// Verifica estado de inicialização do display, acusa falha em caso de erro</span>
  <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span><span class="token builtin">display</span><span class="token punctuation">.</span><span class="token function">begin</span><span class="token punctuation">(</span>SSD1306_SWITCHCAPVCC<span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token function">F</span><span class="token punctuation">(</span><span class="token string">"Falha ao inicializar o SSD1306"</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">for</span> <span class="token punctuation">(</span><span class="token punctuation">;</span><span class="token punctuation">;</span><span class="token punctuation">)</span>
      <span class="token punctuation">;</span>
  <span class="token punctuation">}</span>

  <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span>bme<span class="token punctuation">.</span><span class="token function">begin</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token function">F</span><span class="token punctuation">(</span><span class="token string">"Could not find a valid BME680 sensor, check wiring!"</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">while</span> <span class="token punctuation">(</span><span class="token number">1</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span>

  <span class="token comment">// Ajusta os filtros da biblioteca do sensor</span>
  bme<span class="token punctuation">.</span><span class="token function">setTemperatureOversampling</span><span class="token punctuation">(</span>BME680_OS_8X<span class="token punctuation">)</span><span class="token punctuation">;</span>
  bme<span class="token punctuation">.</span><span class="token function">setHumidityOversampling</span><span class="token punctuation">(</span>BME680_OS_2X<span class="token punctuation">)</span><span class="token punctuation">;</span>
  bme<span class="token punctuation">.</span><span class="token function">setPressureOversampling</span><span class="token punctuation">(</span>BME680_OS_4X<span class="token punctuation">)</span><span class="token punctuation">;</span>
  bme<span class="token punctuation">.</span><span class="token function">setIIRFilterSize</span><span class="token punctuation">(</span>BME680_FILTER_SIZE_3<span class="token punctuation">)</span><span class="token punctuation">;</span>
  bme<span class="token punctuation">.</span><span class="token function">setGasHeater</span><span class="token punctuation">(</span><span class="token number">320</span><span class="token punctuation">,</span> <span class="token number">150</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// 320*C for 150 ms</span>

  <span class="token comment">// Limpe o buffer do display</span>
  <span class="token builtin">display</span><span class="token punctuation">.</span><span class="token function">clearDisplay</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

  <span class="token comment">// Configuração do texto</span>
  <span class="token builtin">display</span><span class="token punctuation">.</span><span class="token function">setTextSize</span><span class="token punctuation">(</span><span class="token number">1.5</span><span class="token punctuation">)</span><span class="token punctuation">;</span>             <span class="token comment">// Tamanho do texto (1 = 6x8 pixels)</span>
  <span class="token builtin">display</span><span class="token punctuation">.</span><span class="token function">setTextColor</span><span class="token punctuation">(</span>SSD1306_WHITE<span class="token punctuation">)</span><span class="token punctuation">;</span>  <span class="token comment">// Cor do texto</span>
<span class="token punctuation">}</span>

<span class="token keyword">void</span> <span class="token keyword">loop</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
  <span class="token comment">// Tempo entre cada medida</span>
  <span class="token function">delay</span><span class="token punctuation">(</span><span class="token number">2000</span><span class="token punctuation">)</span><span class="token punctuation">;</span>


  <span class="token comment">// BME680 inicia o processo de amostragem</span>
  unsigned <span class="token keyword">long</span> endTime <span class="token operator">=</span> bme<span class="token punctuation">.</span><span class="token function">beginReading</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token keyword">if</span> <span class="token punctuation">(</span>endTime <span class="token operator">==</span> <span class="token number">0</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token function">F</span><span class="token punctuation">(</span><span class="token string">"Falha ao obter medicao"</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">return</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span>
  <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class="token function">print</span><span class="token punctuation">(</span><span class="token function">F</span><span class="token punctuation">(</span><span class="token string">"Medicao comecou em: "</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class="token function">print</span><span class="token punctuation">(</span><span class="token function">millis</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class="token function">print</span><span class="token punctuation">(</span><span class="token function">F</span><span class="token punctuation">(</span><span class="token string">" e terminou em "</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
  <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span>endTime<span class="token punctuation">)</span><span class="token punctuation">;</span>

  <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span>bme<span class="token punctuation">.</span><span class="token function">endReading</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
    <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class="token function">println</span><span class="token punctuation">(</span><span class="token function">F</span><span class="token punctuation">(</span><span class="token string">"Falha com completar medicao"</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
    <span class="token keyword">return</span><span class="token punctuation">;</span>
  <span class="token punctuation">}</span>

  <span class="token builtin">Serial</span><span class="token punctuation">.</span><span class=</div>
	</div>




            

          
    


    
        


  

      
      
      

      
        
      
      
      

      
  
          

              


  











<div data-element-id="elm_K0NDm-NRp--Yj-ImfmoM6A" data-element-type="heading" class="zpelement zpelem-heading ">


  

  

  

  

  
  
  

  

  


  
  

  
  

  

  

  

  
  
  

	<style>
  
    
    
      [data-element-id="elm_K0NDm-NRp--Yj-ImfmoM6A"].zpelem-heading {
      	 border-radius:1px;
      }
    
    
  

  

  
  </style>
  
  <h2
 class="zpheading zpheading-style-none zpheading-align-left " data-editor="true"><span style="font-size:20px;">Resultado:</span></h2>
</div>



          
    


    
        


  

      
      
      

      
        
      
      
      

      
  
          

              
    



    


<div data-element-id="elm_yosqX4uqDtAldoDUlTJWdw" data-element-type="image" class="zpelement zpelem-image ">

























    

<style>

@media (min-width: 992px) {
  [data-element-id="elm_yosqX4uqDtAldoDUlTJWdw"] .zpimage-container figure img {
        width: 900px   !important ;
        height: 908px  !important ;
  }
}



    @media (max-width: 991px) and (min-width: 768px) {
      [data-element-id="elm_yosqX4uqDtAldoDUlTJWdw"] .zpimage-container figure img {
        width:900px ;
        height:908px ;
      }
    }



    @media (max-width: 767px) {
      [data-element-id="elm_yosqX4uqDtAldoDUlTJWdw"] .zpimage-container figure img {
        width:900px ;
        height:908px ;
      }
    }



    
    
    
    [data-element-id="elm_yosqX4uqDtAldoDUlTJWdw"].zpelem-image {
        border-radius:1px;
    }
    





</style>

  <div data-caption-color="" data-size-tablet="" data-size-mobile="" data-align="center" data-tablet-image-separate="false" data-mobile-image-separate="false" class="zpimage-container zpimage-align-center zpimage-tablet-align-center zpimage-mobile-align-center zpimage-size-original zpimage-tablet-fallback-fit zpimage-mobile-fallback-fit hb-lightbox " data-lightbox-options="
                type:fullscreen,
                theme:dark">
        <figure role="none" class="zpimage-data-ref">
        
          <span class="zpimage-anchor" role="link" tabindex="0" aria-label="Open Lightbox" style="cursor:pointer;">
          
          <picture>

            
            
            <img class="zpimage zpimage-style-none zpimage-space-none " src="/3.final.jpeg" width="900" height="908" loading="lazy" size="original" data-lightbox="true"/>
          </picture>
        
          </span>
          
      
    </figure>
  </div>

</div>


          
    


    
        


  

      
      
      

      
        
      
      
      

      
  
          

            <div data-element-id="elm_B9ZShV7BQZeruF5QR1G4LA" data-element-type="divider" class="zpelement zpelem-divider ">

    

    

    

    

    

    

    
      <style type="text/css">
    
        [data-element-id="elm_B9ZShV7BQZeruF5QR1G4LA"].zpelem-divider{
            border-radius:1px;
        }
    
    
    
    </style>
    <style>
    
    </style>
    
    <div class="zpdivider-container zpdivider-line zpdivider-align-center zpdivider-width100 zpdivider-line-style-solid ">
      <div class="zpdivider-common"></div>

    </div>
</div>


          
    


    
        


  

      
      
      

      
        
      
      
      

      
  
          

              


  










<div data-element-id="elm_JnwGxOo4e3Y2-MiWs1Cf3g" data-element-type="text" class="zpelement zpelem-text ">





 

 

  

  











<style>

    [data-element-id="elm_JnwGxOo4e3Y2-MiWs1Cf3g"].zpelem-text {
        border-radius:1px;
    }
    



</style>


    <div class="zptext zptext-align-left " data-editor="true"><p><span style="color:rgb(49, 188, 173);font-size:18px;">Sobre o autor:</span></p><p><span style="color:inherit;">Matheus desempenha o papel de desenvolvedor de sistemas de tecnologia da informação dentro da equipe da UKTech. Possui&nbsp; experiência no domínio de microcontroladores e desenvolvimento de software, e está na reta final de sua graduação em Engenharia de Computação. Em seus momentos de lazer, ele se dedica a interesses como jogos de computador e a apreciação de animes.</span><br/></p></div>

</div>


          
    


    
    
</div>


          
    


    

</div>


          
    


  
</div>


















































</div>


           
    


    

</div>


















]]></content:encoded>
				<pubDate>Mon, 02 Oct 2023 14:19:42 -0300</pubDate>
			</item>
		
	</channel>
</rss>