{"id":1019,"date":"2015-07-27T19:43:38","date_gmt":"2015-07-27T19:43:38","guid":{"rendered":"http:\/\/blog.xbot.es\/?p=1019"},"modified":"2015-08-07T19:47:03","modified_gmt":"2015-08-07T19:47:03","slug":"adaptador-i2c-para-pantallas-lcd-con-arduino","status":"publish","type":"post","link":"http:\/\/blog.xbot.es\/?p=1019","title":{"rendered":"Adaptador I2C para pantallas LCD con Arduino"},"content":{"rendered":"<p>Hace mucho que me compr\u00e9 un adaptador I2C para pantallas LCD y hoy por fin lo he probado, el adaptador est\u00e1 basado en el micro PCF8574T y tiene dos conectores, el tradicional de 16 pines en linea para conectar la LCD y los 4 del conector I2C, tambien posee un jumper para habilitar la luz de fondo (que se puede apagar\/encender por software) y un potenciometro para regular la luz de los caracteres.<\/p>\n<p><a href=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1023 size-full\" src=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador.jpg\" alt=\"adaptador\" width=\"728\" height=\"652\" srcset=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador.jpg 728w, http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador-300x269.jpg 300w, http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador-335x300.jpg 335w\" sizes=\"auto, (max-width: 728px) 100vw, 728px\" \/><\/a><\/p>\n<p>Para probarlo he usado una pantalla LCD con luz azul de 2 lineas por 16 caracteres cada una.<\/p>\n<p><a href=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/lcd.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-1021\" src=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/lcd-300x151.jpg\" alt=\"lcd\" width=\"300\" height=\"151\" srcset=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/lcd-300x151.jpg 300w, http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/lcd-500x252.jpg 500w, http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/lcd.jpg 729w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Como en ambos tengo montados pines macho he montado todo sobre una protoboard, solo tener en cuenta que los pines est\u00e9 correctamente alineados, contad con que el pin 1 es GND que es facil de localizar.<\/p>\n<p><a href=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/montaje_1.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-1025 size-full\" src=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/montaje_1.jpg\" alt=\"montaje_1\" width=\"800\" height=\"600\" srcset=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/montaje_1.jpg 800w, http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/montaje_1-300x225.jpg 300w, http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/montaje_1-400x300.jpg 400w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/a><\/p>\n<p>El montaje completo incluyendo las conexiones I2C:<\/p>\n<p><a href=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador_I2C_LCD.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1020\" src=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador_I2C_LCD.jpg\" alt=\"adaptador_I2C_LCD\" width=\"800\" height=\"600\" srcset=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador_I2C_LCD.jpg 800w, http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador_I2C_LCD-300x225.jpg 300w, http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/adaptador_I2C_LCD-400x300.jpg 400w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/a><\/p>\n<p>El c\u00f3digo fuente:<\/p>\n<p>\/\/ ********************************************************************<br \/>\n\/\/ ********************************************************************<br \/>\n\/* Demostracion de modulo adaptador I2C LCD<br \/>\nbasado en PCF8574T *\/<\/p>\n<p>#include &lt;Wire.h&gt;<br \/>\n#include &lt;LCD.h&gt;<br \/>\n#include &lt;LiquidCrystal_I2C.h&gt;<\/p>\n<p>LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7);<\/p>\n<p>void setup()<br \/>\n{<br \/>\nlcd.begin (16,2); \/\/ activamos modulo 16&#215;2<br \/>\nlcd.setBacklightPin(3,POSITIVE);<\/p>\n<p>lcd.home (); \/\/ igual que lcd.setCursor(0,0);<br \/>\nlcd.print(\u00bb furrichip \u00ab);<\/p>\n<p>lcd.setBacklight(LOW); \/\/ Apagar luz de fondo<br \/>\ndelay(500);<br \/>\nlcd.setBacklight(HIGH); \/\/ Encender luz de fondo<br \/>\ndelay(500);<\/p>\n<p>lcd.setBacklight(LOW); \/\/ Apagar luz de fondo<br \/>\ndelay(500);<br \/>\nlcd.setBacklight(HIGH); \/\/ Encender luz de fondo<br \/>\ndelay(500);<\/p>\n<p>}<\/p>\n<p>void loop()<br \/>\n{<br \/>\nlcd.setCursor (4,1); \/\/ empezamos en la segunda linea fila 4<br \/>\nlcd.print(millis());<br \/>\ndelay(100);<br \/>\n}<\/p>\n<p>\/\/ ********************************************************************<br \/>\n\/\/ ********************************************************************<\/p>\n<p>La libreria LiquidCrystal he usado esta:<br \/>\n<a href=\"https:\/\/bitbucket.org\/fmalpartida\/new-liquidcrystal\/downloads\" target=\"_blank\">https:\/\/bitbucket.org\/fmalpartida\/new-liquidcrystal\/downloads <\/a><\/p>\n<p>Solo me queda mencionar que en caso de necesidad podeis cambiar la direcci\u00f3n I2C del adaptador (0x27 por defecto) puenteando los pads A0, A1 y A2, dichos pads est\u00e1n en modo pull-up por lo que su valor l\u00f3gico es \u00ab1\u00bb, al puentearlos cambiamos dicho valor a \u00ab0\u00bb y usando la siguiente tabla podemos ajustar la direcci\u00f3n a nuestras necesidades:<\/p>\n<p><a href=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/I2C_LCD_Direcciones.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1026\" src=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/I2C_LCD_Direcciones.png\" alt=\"I2C_LCD_Direcciones\" width=\"355\" height=\"370\" srcset=\"http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/I2C_LCD_Direcciones.png 355w, http:\/\/blog.xbot.es\/wp-content\/uploads\/2015\/08\/I2C_LCD_Direcciones-288x300.png 288w\" sizes=\"auto, (max-width: 355px) 100vw, 355px\" \/><\/a><\/p>\n<hr \/>\n<p>Enlaces de interes:<\/p>\n<p><a href=\"http:\/\/www.ti.com\/lit\/ds\/symlink\/pcf8574.pdf\" target=\"_blank\">Datasheet PCF8574 de Texas Instruments<\/a><br \/>\n<a href=\"http:\/\/www.nxp.com\/documents\/data_sheet\/PCF8574_PCF8574A.pdf\" target=\"_blank\">Datasheet PCF8574 de NXP<\/a><br \/>\n<a href=\"http:\/\/tronixstuff.com\/2014\/09\/24\/tutorial-serial-pcf8574-backpacks-hd44780-compatible-lcd-modules-arduino\/\" target=\"_blank\">Tutorial PCF8574 en ingles<\/a><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hace mucho que me compr\u00e9 un adaptador I2C para pantallas LCD y hoy por fin lo he probado, el adaptador est\u00e1 basado en el micro PCF8574T y tiene dos conectores, el tradicional de 16 pines en linea para conectar la &hellip; <a href=\"http:\/\/blog.xbot.es\/?p=1019\">Sigue leyendo <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[32,40,41],"tags":[],"class_list":["post-1019","post","type-post","status-publish","format-standard","hentry","category-arduino","category-i2c-twi","category-lcd"],"_links":{"self":[{"href":"http:\/\/blog.xbot.es\/index.php?rest_route=\/wp\/v2\/posts\/1019","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.xbot.es\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.xbot.es\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.xbot.es\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.xbot.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1019"}],"version-history":[{"count":2,"href":"http:\/\/blog.xbot.es\/index.php?rest_route=\/wp\/v2\/posts\/1019\/revisions"}],"predecessor-version":[{"id":1028,"href":"http:\/\/blog.xbot.es\/index.php?rest_route=\/wp\/v2\/posts\/1019\/revisions\/1028"}],"wp:attachment":[{"href":"http:\/\/blog.xbot.es\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1019"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.xbot.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1019"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.xbot.es\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1019"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}