{"id":596,"date":"2019-02-20T02:56:14","date_gmt":"2019-02-20T05:56:14","guid":{"rendered":"http:\/\/omecatronico.com.br\/blog\/?p=596"},"modified":"2019-02-21T16:33:37","modified_gmt":"2019-02-21T19:33:37","slug":"lcd-serial-i2c-pcf8574","status":"publish","type":"post","link":"https:\/\/omecatronico.com.br\/blog\/lcd-serial-i2c-pcf8574\/","title":{"rendered":"LCD serial I2C (PCF8574)"},"content":{"rendered":"\n\n\n<p>Utilizar um LCD em projetos pode ser mais f\u00e1cil do que parece.  Fazer as liga\u00e7\u00f5es normais em um LCD  comum pode ser uma tarefa tediosa e consumir tempo e muitos pinos do seu microcontrolador. O Circuito integrado <a rel=\"noreferrer noopener\" aria-label=\"PCF8574 (abre em uma nova aba)\" href=\"http:\/\/www.ti.com\/lit\/ds\/symlink\/pcf8574.pdf\" target=\"_blank\">PCF8574<\/a> \u00e9 um expansor de 8 bits bidirecionais (8 pinos I\/O) que s\u00e3o comandados por I2C (barramento serial). Para variar&#8230; =) uma nova finalidade foi encontrada para este CI. Ele foi adaptado para controlar LCDs de v\u00e1rios tamanhos como 16&#215;2, 16&#215;4, 20&#215;2 ou 20&#215;4  por meio de barramento serial I2C.  Dessa forma com apenas 4 fios(+5v, SDA, SCL e terra) podemos controlar um LCD.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"904\" height=\"394\" src=\"https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/modulo_i2c_lcd_pcf8574A.png\" alt=\"\" class=\"wp-image-602\" srcset=\"https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/modulo_i2c_lcd_pcf8574A.png 904w, https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/modulo_i2c_lcd_pcf8574A-300x131.png 300w, https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/modulo_i2c_lcd_pcf8574A-768x335.png 768w, https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/modulo_i2c_lcd_pcf8574A-816x356.png 816w\" sizes=\"(max-width: 904px) 100vw, 904px\" \/><figcaption>M\u00f3dulo LCD I2C\/TWI (PCF8574A)<\/figcaption><\/figure>\n\n\n\n<p>Analisando a imagem acima podemos notar:<\/p>\n\n\n\n<ul><li>O jump da esquerda  permite ligar ou desligar a luz de fundo(backlight) do LCD.  Com Jump: LED aceso. Sem jump: LED apagado. <strong>OBS:<\/strong> mesmo com jump instalado ainda precisamos controlar o backlight via software com &#8220;lcd.setbacklight(HIGH)&#8221;.<\/li><li>O trimpot azul serve para regular o contraste da tela.<\/li><li>GND, VCC, SDA e SDL s\u00e3o as conex\u00f5es para comunica\u00e7\u00e3o I2C da placa.<\/li><li>As ilhas A0, A1, A2 s\u00e3o o endere\u00e7o desta placa no barramento I2C. Estas placas possuem o endere\u00e7o 0x27h com os 3 jumps abertos e 0x20h com os tres jumps fechados(soldados).  Com isto podemos ligar mais de uma no mesmo barramento. Exemplo: uma placa com 0x27h e outra com endere\u00e7o 0x26h (A0 soldado).<\/li><li>O barramento maior \u00e9 para ser soldado diretamente na placa do LCD. As liga\u00e7\u00f5es el\u00e9tricas est\u00e3o ajustadas j\u00e1 para esta finalidade conforme figura acima.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Esquema el\u00e9trico da placa:<\/h3>\n\n\n\n<figure class=\"wp-block-image is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/2diagram_LCD_PCF8574.png\" alt=\"\" class=\"wp-image-598\" width=\"612\" height=\"448\" srcset=\"https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/2diagram_LCD_PCF8574.png 510w, https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/2diagram_LCD_PCF8574-300x219.png 300w\" sizes=\"(max-width: 612px) 100vw, 612px\" \/><figcaption>Fonte da imagem &#8220;www.alselectro.com&#8221;<\/figcaption><\/figure>\n\n\n\n<p>Um fato curioso \u00e9 que esta placa pode ser utilizada como a fun\u00e7\u00e3o inicial de expans\u00e3o de I\/O do pr\u00f3prio PCF8574 .  Note que os pinos P0 at\u00e9 P7 est\u00e3o mapeados para pinos da placa. Ou seja,  ao inv\u00e9s de LCD, podemos usar esta placa para acionar outros dispositivos ou ate mesmo ler bot\u00f5es.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Endere\u00e7amento:<\/h3>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"664\" height=\"309\" src=\"https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/adress_PCF8574.png\" alt=\"\" class=\"wp-image-600\" srcset=\"https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/adress_PCF8574.png 664w, https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/adress_PCF8574-300x140.png 300w\" sizes=\"(max-width: 664px) 100vw, 664px\" \/><figcaption>Endere\u00e7os variam de 0x20h at\u00e9 0x27h para PCF8574<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"665\" height=\"308\" src=\"https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/adress_PCF8574A.png\" alt=\"\" class=\"wp-image-601\" srcset=\"https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/adress_PCF8574A.png 665w, https:\/\/omecatronico.com.br\/blog\/wp-content\/uploads\/2019\/02\/adress_PCF8574A-300x139.png 300w\" sizes=\"(max-width: 665px) 100vw, 665px\" \/><figcaption> <br>Endere\u00e7os variam de 0x38h at\u00e9 0x3Fh para PCF8574A <\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Bibliotecas para controlar o LCD:<\/h3>\n\n\n\n<p>Podemos utilizar a biblioteca <a rel=\"noreferrer noopener\" aria-label=\"LiquidCrystal-I2C (abre em uma nova aba)\" href=\"https:\/\/github.com\/fdebrabander\/Arduino-LiquidCrystal-I2C-library\" target=\"_blank\">LiquidCrystal-I2C<\/a> para controlar o LCD. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Utilizar um LCD em projetos pode ser mais f\u00e1cil do que parece. Fazer as liga\u00e7\u00f5es normais em um LCD comum pode ser uma tarefa tediosa e consumir tempo e muitos pinos do seu microcontrolador. O Circuito integrado PCF8574 \u00e9 um expansor de 8 bits bidirecionais (8 pinos I\/O) que s\u00e3o comandados por I2C (barramento serial). [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":607,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15],"tags":[26,54,53,51,52,55],"_links":{"self":[{"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/posts\/596"}],"collection":[{"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/comments?post=596"}],"version-history":[{"count":5,"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/posts\/596\/revisions"}],"predecessor-version":[{"id":608,"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/posts\/596\/revisions\/608"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/media\/607"}],"wp:attachment":[{"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/media?parent=596"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/categories?post=596"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/omecatronico.com.br\/blog\/wp-json\/wp\/v2\/tags?post=596"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}