{"id":4273,"date":"2016-09-01T17:33:32","date_gmt":"2016-09-01T17:33:32","guid":{"rendered":"http:\/\/hetpro-store.com\/TUTORIALES\/?p=4273"},"modified":"2021-05-05T20:11:56","modified_gmt":"2021-05-05T20:11:56","slug":"ads1115-con-arduino-potenciometro-y-lcd","status":"publish","type":"post","link":"https:\/\/hetpro-store.com\/TUTORIALES\/ads1115-con-arduino-potenciometro-y-lcd\/","title":{"rendered":"Arduino I2C ADS1115 I2C LCD"},"content":{"rendered":"<p style=\"text-align: center;\"><strong>Arduino I2C ADS1115 I2C LCD<\/strong><\/p>\n<p style=\"text-align: justify;\">Para esto utilizaremos 1\u00a0<a href=\"https:\/\/hetpro-store.com\/tarjetas-arduino\/\">Arduino<\/a>,\u00a01\u00a0<a href=\"https:\/\/hetpro-store.com\/adc-16-bit-ads1115-4-canales\/\">ADC 16-Bit ADS1115 4 canales<\/a>,<br \/>\n1\u00a0\u00a0<a href=\"https:\/\/hetpro-store.com\/interfaz-i2c-iic-para-lcd1602\/\">Interfaz I2C IIC para LCD1602<\/a>\u00a0y 1\u00a0<a href=\"https:\/\/hetpro-store.com\/lcd-16x2-luz-de-fondo-blanca\/\">LCD 16&#215;2 Luz de fondo Blanca<\/a>,<br \/>\n1\u00a0<a href=\"https:\/\/hetpro-store.com\/protoboard-transparente-medio\/\">1\/2 proto<\/a>, 1\u00a0<a href=\"https:\/\/hetpro-store.com\/cables-jumper-macho-macho-60-unidades\/\">juego de Jumpers<\/a>\u00a0y 1\u00a0<a href=\"https:\/\/hetpro-store.com\/potenciometro-logaritmico-10kohms\/\">potenciomertro de 10k<\/a>.<\/p>\n<p style=\"text-align: justify;\"><strong>\u00a0\u00abYa que no sabemos que tiene cargado el Arduino<br \/>\nes importante primero programarlo<br \/>\ny as\u00ed prevenir voltajes de entrada<\/strong><br \/>\n<strong>indeseados a nuestros componentes.\u00bb<\/strong><\/p>\n<p style=\"text-align: justify;\">Este proyecto consistir\u00e1 en un Arduino I2C ADS1115 I2C LCD,\u00a0leer la tensi\u00f3n de un potenci\u00f3metro con el m\u00f3dulo ADC1115\u00a0y retransmitir la informaci\u00f3n a la LCD todo por el protocolo I2C.<\/p>\n<p style=\"text-align: justify;\">El ADS1115 constan de cuatro entradas etiquetadas A0-A3 toda la resoluci\u00f3n de 15 bits. Adem\u00e1s de las funciones de ADC finalizadas simples tambi\u00e9n son posibles una serie de funciones de comparaci\u00f3n. Para m\u00e1s informaci\u00f3n sobre las funciones de programaci\u00f3n del ADS1115 ver lo siguiente:<\/p>\n<p style=\"text-align: justify;\">Datasheet <a href=\"https:\/\/www.hetpro-store.com\/images\/PDF\/IICL1602.pdf\" target=\"_blank\" rel=\"noopener\">LCD I2C<br \/>\n<\/a><br \/>\nDatasheet <a href=\"https:\/\/cdn-shop.adafruit.com\/datasheets\/ads1115.pdf\" target=\"_blank\" rel=\"noopener\">ADS I2C<\/a><a href=\"http:\/\/biblioteca.geekfactory.mx\/Bluetooth_Bee_Pro\/datasheet_hc-05.pdf\" target=\"_blank\" rel=\"noopener\"><br \/>\n<\/a><br \/>\nGracias a la biblioteca<a href=\"https:\/\/www.arduino.cc\/en\/Reference\/Wire\">\u00a0#include &lt;Wire.h&gt;<\/a>\u00a0en este caso, Arduino UNO<br \/>\nusaremos los PIN A5-SCL y A4-SDA para la \u00a0comunicaci\u00f3n I2C.<\/p>\n<p style=\"text-align: justify;\">#include &lt;Adafruit_ADS1015.h&gt;<\/p>\n<p style=\"text-align: justify;\">Descargar la Liberia:<br \/>\n<a href=\"https:\/\/github.com\/adafruit\/Adafruit_ADS1X15\">https:\/\/github.com\/adafruit\/Adafruit_ADS1X15<\/a><br \/>\n#include &lt;LiquidCrystal_I2C.h&gt;<\/p>\n<p style=\"text-align: justify;\">Descargar la Liberia:<br \/>\n<a href=\"https:\/\/github.com\/fdebrabander\/Arduino-LiquidCrystal-I2C-library\">https:\/\/github.com\/fdebrabander\/Arduino-LiquidCrystal-I2C-library<\/a><\/p>\n<p style=\"text-align: justify;\">\n<hr \/>\n<p style=\"text-align: justify;\">\n<h4 style=\"text-align: justify;\"><\/h4>\n<h4 style=\"text-align: justify;\">R\u00e1pidamente mencionar\u00e9 los principales c\u00f3digos a programar:<\/h4>\n<p style=\"text-align: justify;\">Para probar que las liberas fueron instaladas correctamente en nuestra carpeta de \u00ablib\u00bb en \u00abEquipo c:\/ Programas \/ Arduino\u00bb.<br \/>\nCompilaremos los siguientes c\u00f3digos por individual.<\/p>\n<p style=\"text-align: justify;\"><strong>Paso 1 Programar Arduino \u00abADS1115 I2C\u00bb:<\/strong><\/p>\n<p style=\"text-align: justify;\">Compilar y esperar \u00abSubido\u00bb de lo contrario cerrar todas las ventanas ID y re intentar.<\/p>\n<p>[code language=\u00bbcpp\u00bb]<\/p>\n<p>#include &lt;Wire.h&gt;<br \/>\n#include &lt;Adafruit_ADS1015.h&gt;<\/p>\n<p>Adafruit_ADS1115 ads(0x48);<br \/>\nfloat Voltage = 0.0;<\/p>\n<p>void setup(void)<br \/>\n{<br \/>\nSerial.begin(9600);<br \/>\nads.begin();<br \/>\n}<\/p>\n<p>void loop(void)<br \/>\n{<br \/>\nint16_t adc0; \/\/ Leemos el ADC, con 16 bits<br \/>\nadc0 = ads.readADC_SingleEnded(0);<br \/>\nVoltage = (adc0 * 0.1875)\/1000;<\/p>\n<p>Serial.print(\u00abAIN0: \u00ab);<br \/>\nSerial.print(adc0);<br \/>\nSerial.print(\u00ab\\tVoltage: \u00ab);<br \/>\nSerial.println(Voltage, 7);<br \/>\nSerial.println();<\/p>\n<p>delay(1000);<br \/>\n}<\/p>\n<p>[\/code]<\/p>\n<p style=\"text-align: justify;\"><strong>Paso 2 Programar Arduino:<\/strong><\/p>\n<p style=\"text-align: justify;\">Compilar y esperar \u00abSubido\u00bb de lo contrario cerrar todas las ventanas ID y re intentar.<\/p>\n<p>[code language=\u00bbcpp\u00bb]<\/p>\n<p>#include &lt;Wire.h&gt;<br \/>\n#include &lt;LiquidCrystal_I2C.h&gt;<\/p>\n<p>\/\/ Iniciar LCD address con 0x27 para 16&#215;2 Display<br \/>\nLiquidCrystal_I2C lcd(0x27, 16, 2);<\/p>\n<p>void setup()<br \/>\n{ \/\/ initializar la LCD<br \/>\nlcd.begin();<br \/>\n\/\/ Encender Pantalla e imprimir en pantalla.<br \/>\nlcd.backlight();<br \/>\nlcd.setCursor(0,0); lcd.print(\u00bb \u00ab);<br \/>\nlcd.setCursor(0,0); lcd.print(\u00bb HetPro \u00ab);<br \/>\nlcd.setCursor(0,1); lcd.print(\u00bb \u00ab);<br \/>\nlcd.setCursor(0,1); lcd.print(\u00bb i2C LCD \u00ab);<br \/>\n}<\/p>\n<p>void loop()<br \/>\n{ \/\/ Colocar el cursor en columna 0, linea 1<br \/>\n\/\/ (note: linea 1 es la segunda, como la primera es la 0):<br \/>\nlcd.setCursor(0, 1);<\/p>\n<p>\/\/ Imprimir el tiempo de actividad<br \/>\nlcd.print(millis()\/1000);<br \/>\n\/\/ Variable a imprimir \u00abmillis()\/1000\u00bb sin comillas.<br \/>\n}<\/p>\n<p>[\/code]<\/p>\n<p style=\"text-align: justify;\">\n<hr \/>\n<h4 style=\"text-align: justify;\"><strong>Cambiando su direcci\u00f3n I2C:<\/strong><\/h4>\n<p style=\"text-align: justify;\">La ventaja del I2C no solo es el ahorro de puertos y la facilidad de\u00a0cableado, \u00a0tambi\u00e9n el poner m\u00faltiples LCD\u00b4s y sensores cambiando su direcci\u00f3n I2C.<\/p>\n<p style=\"text-align: justify;\"><strong><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/ve2cuy.files.wordpress.com\/2015\/04\/i2c-lcd-board-address.png\" alt=\"Arduino I2C ADS1115 I2C LCD, Module Addressing\" width=\"470\" height=\"170\" \/><br \/>\n<\/strong><\/p>\n<p style=\"text-align: justify;\">Arduino I2C ADS1115, I2C LCD, Arduino LCD Module Addressing<\/p>\n<p style=\"text-align: justify;\"><strong>Cambiar la direcci\u00f3n I2C \u201cI2C ADDRESSES\u201d :<\/strong><br \/>\nALHUNOS I2C tienen pins (o pads de soldadura) de tal manera que su disecci\u00f3n puede ser cambiada. Usualmente est\u00e1n etiquetadas como A0-A1-A2 .<br \/>\nDe f\u00e1brica esta default 0x27. (1 = SIN Conectar. 0 = Conectado):<\/p>\n<p style=\"text-align: justify;\"><strong>A0 A1 A2 HEX Address<\/strong><br \/>\n1 \u00a0 \u00a0 1 \u00a0 \u00a0 1 \u00a0 \u00a0 \u00a0 0x27<br \/>\n0 \u00a0 \u00a01 \u00a0 \u00a0 1 \u00a0 \u00a0 \u00a0 0x26<br \/>\n1 \u00a0 \u00a00 \u00a0 \u00a0 1 \u00a0 \u00a0 \u00a0 0x25<br \/>\n0 \u00a0 0 \u00a0 \u00a0 1 \u00a0 \u00a0 \u00a0 0x24<br \/>\n1 \u00a0 \u00a01 \u00a0 \u00a0 0 \u00a0 \u00a0 \u00a0 0x23<br \/>\n0 \u00a0 1 \u00a0 \u00a0 0 \u00a0 \u00a0 \u00a0 0x22<br \/>\n1 \u00a0 0 \u00a0 \u00a0 0 \u00a0 \u00a0 \u00a0 0x21<br \/>\n0 \u00a0 0 \u00a0 \u00a00 \u00a0 \u00a0 \u00a0 0x20<\/p>\n<p>[code language=\u00bbcpp\u00bb]<\/p>\n<p>#include &lt;Wire.h&gt;<br \/>\n#include &lt;LiquidCrystal_I2C.h&gt;<\/p>\n<p>\/\/ Iniciar LCD address con 0x27 para 16&#215;2 Display<br \/>\nLiquidCrystal_I2C lcd(0x27, 16, 2);<\/p>\n<p>[\/code]<\/p>\n<figure style=\"width: 515px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/i0.wp.com\/henrysbench.capnfatz.com\/wp-content\/uploads\/2015\/09\/Arduino-ADS1115-Module-Addressing-e1443389315958.png?resize=600%2C521\" alt=\"Arduino I2C ADS1115 I2C LCD. Module Addressing\" width=\"515\" height=\"447\" \/><figcaption class=\"wp-caption-text\">Arduino I2C ADS1115 I2C LCD, Arduino ADS1115 Module Addressing<\/figcaption><\/figure>\n<h3 style=\"text-align: justify;\">Cambiar la direcci\u00f3n I2C \u201cI2C ADDRESSES\u201d :<\/h3>\n<p>[code language=\u00bbcpp\u00bb]<\/p>\n<p>#include &lt;Wire.h&gt;<br \/>\n#include &lt;Adafruit_ADS1015.h&gt;<\/p>\n<p>\/\/ Iniciar ADS address con 0x48<br \/>\nAdafruit_ADS1115 ads(0x48);<\/p>\n<p>[\/code]<\/p>\n<hr \/>\n<pre><\/pre>\n<h2 style=\"text-align: justify;\">Arduino I2C ADS1115 I2C LCD<\/h2>\n<p style=\"text-align: justify;\">Finalmente programamos y cableamos los m\u00f3dulos,<br \/>\npara \u00a0hacer la lectura anal\u00f3gica A0<br \/>\ny visualizarla en al LCD todo por el protocolo I2C.<\/p>\n<p style=\"text-align: justify;\"><strong>Paso 3 Programar Arduino:<\/strong><\/p>\n<p>[code language=\u00bbcpp\u00bb]<\/p>\n<p>#include &lt;Wire.h&gt;<br \/>\n#include &lt;Adafruit_ADS1015.h&gt;<br \/>\n#include &lt;LiquidCrystal_I2C.h&gt;<br \/>\n\/\/ Iniciar address 0x27 y 0x48<br \/>\nLiquidCrystal_I2C lcd(0x27, 16, 2);<br \/>\nAdafruit_ADS1115 ads(0x48);<br \/>\nfloat Voltage = 0.0;<\/p>\n<p>void setup(void)<br \/>\n{ \/\/ initializar Serial\/ADS\/LCD<br \/>\nSerial.begin(9600);<br \/>\nads.begin();<br \/>\nlcd.begin();<\/p>\n<p>\/\/ Encender Pantalla e imprimir en pantalla.<br \/>\nlcd.backlight();<br \/>\nlcd.setCursor(0,0); lcd.print(\u00bb \u00ab);<br \/>\nlcd.setCursor(0,0); lcd.print(\u00bb HetPro ADS \u00ab);<br \/>\nlcd.setCursor(0,1); lcd.print(\u00bb \u00ab);<br \/>\nlcd.setCursor(0,1); lcd.print(\u00bb i2C LCD \u00ab);<br \/>\n}<\/p>\n<p>void loop(void)<br \/>\n{<br \/>\nint16_t adc0;<br \/>\nadc0 = ads.readADC_SingleEnded(0);<br \/>\nVoltage = (adc0 * 0.1875)\/1000;<\/p>\n<p>Serial.print(\u00abAIN0: \u00ab);<br \/>\nSerial.print(adc0);<br \/>\nSerial.print(\u00ab\\tVoltage: \u00ab);<br \/>\nSerial.println(Voltage, 4);<\/p>\n<p>delay(100);<br \/>\nlcd.setCursor(0, 1);<br \/>\nlcd.print(Voltage, 4); \/\/ Variable a imprimir.<br \/>\n}<\/p>\n<p>[\/code]<\/p>\n<figure id=\"attachment_4280\" aria-describedby=\"caption-attachment-4280\" style=\"width: 1024px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-4280 size-large\" src=\"http:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/Cableado-1024x445.png\" alt=\"Arduino I2C ADS1115 I2C LCD\" width=\"1024\" height=\"445\" srcset=\"https:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/Cableado-1024x445.png 1024w, https:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/Cableado-300x130.png 300w, https:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/Cableado-768x334.png 768w, https:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/Cableado.png 1128w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption id=\"caption-attachment-4280\" class=\"wp-caption-text\">Arduino I2C ADS1115 I2C LCD, leer la tensi\u00f3n de un potenci\u00f3metro con el modulo ADC1115 y transmitir la informaci\u00f3n a la LCD todo por el protocolo I2C.<\/figcaption><\/figure>\n<figure id=\"attachment_4279\" aria-describedby=\"caption-attachment-4279\" style=\"width: 1024px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-4279 size-large\" src=\"http:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/2016-09-02-13.32.22-1024x576.jpg\" alt=\"Arduino I2C ADS1115 I2C LCD\" width=\"1024\" height=\"576\" srcset=\"https:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/2016-09-02-13.32.22-1024x576.jpg 1024w, https:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/2016-09-02-13.32.22-300x169.jpg 300w, https:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/2016-09-02-13.32.22-768x432.jpg 768w, https:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/2016-09-02-13.32.22-136x77.jpg 136w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption id=\"caption-attachment-4279\" class=\"wp-caption-text\">Arduino I2C ADS1115 I2C LCD, leer la tensi\u00f3n de un potenci\u00f3metro con el modulo ADC1115 y transmitir la informaci\u00f3n a la LCD todo por el protocolo I2C.<\/figcaption><\/figure>\n<p style=\"text-align: justify;\">\n<div class=\"zak-oembed-container\"><iframe loading=\"lazy\" title=\"Arduino I2C ADS1115, I2C LCD\" width=\"812\" height=\"457\" src=\"https:\/\/www.youtube.com\/embed\/OSGj9KJqOMU?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Arduino I2C ADS1115 I2C LCD Para esto utilizaremos 1\u00a0Arduino,\u00a01\u00a0ADC 16-Bit ADS1115 4 canales, 1\u00a0\u00a0Interfaz I2C IIC para LCD1602\u00a0y 1\u00a0LCD 16&#215;2 Luz de fondo Blanca, 1\u00a01\/2 proto, 1\u00a0juego de Jumpers\u00a0y 1\u00a0potenciomertro de 10k. \u00a0\u00abYa que no sabemos que tiene cargado el Arduino es importante primero programarlo y as\u00ed prevenir voltajes de entrada indeseados a nuestros componentes.\u00bb [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4280,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"video","meta":{"footnotes":"","_members_access_role":[],"_members_access_error":""},"categories":[15,22],"tags":[117,56,134,133,118],"class_list":["post-4273","post","type-post","status-publish","format-video","has-post-thumbnail","hentry","category-comunicacion","category-sensores-analogicos","tag-adc","tag-arduino","tag-i2c","tag-ii2c","tag-lcd","post_format-post-format-video"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v15.1.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Arduino I2C ADS1115 I2C LCD - HeTPro-Tutoriales<\/title>\n<meta name=\"description\" content=\"Arduino I2C ADS1115 I2C LCD leer la tensi\u00f3n de un potenci\u00f3metro con el modulo ADC1115 y transmitir la informaci\u00f3n a la LCD todo por el protocolo I2C.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/hetpro-store.com\/TUTORIALES\/ads1115-con-arduino-potenciometro-y-lcd\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Arduino I2C ADS1115 I2C LCD - HeTPro-Tutoriales\" \/>\n<meta property=\"og:description\" content=\"Arduino I2C ADS1115 I2C LCD leer la tensi\u00f3n de un potenci\u00f3metro con el modulo ADC1115 y transmitir la informaci\u00f3n a la LCD todo por el protocolo I2C.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/hetpro-store.com\/TUTORIALES\/ads1115-con-arduino-potenciometro-y-lcd\/\" \/>\n<meta property=\"og:site_name\" content=\"HeTPro-Tutoriales\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/HeTPro-142107212482616\/\" \/>\n<meta property=\"article:published_time\" content=\"2016-09-01T17:33:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-05-05T20:11:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/hetpro-store.com\/TUTORIALES\/wp-content\/uploads\/2016\/09\/Cableado.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1128\" \/>\n\t<meta property=\"og:image:height\" content=\"490\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hetpro1\" \/>\n<meta name=\"twitter:site\" content=\"@hetpro1\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","amp_enabled":true,"_links":{"self":[{"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/posts\/4273","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/comments?post=4273"}],"version-history":[{"count":0,"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/posts\/4273\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/media\/4280"}],"wp:attachment":[{"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/media?parent=4273"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/categories?post=4273"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hetpro-store.com\/TUTORIALES\/wp-json\/wp\/v2\/tags?post=4273"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}