{"id":9740,"date":"2025-12-20T01:06:31","date_gmt":"2025-12-20T00:06:31","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=9740"},"modified":"2025-12-20T01:06:32","modified_gmt":"2025-12-20T00:06:32","slug":"tamagotchi-grupo-10","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/","title":{"rendered":"Tamagotchi &#8211; Grupo 10"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3-1024x576.jpg\" alt=\"\" class=\"wp-image-9741\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3-1024x576.jpg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3-300x169.jpg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3-768x432.jpg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3-1536x864.jpg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3.jpg 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Introducci\u00f3n<\/h2>\n\n\n\n<p>Este proyecto consiste en un Tamagotchi electr\u00f3nico interactivo, un sistema empotrado que permite al usuario cuidar de una mascota virtual a trav\u00e9s de interacciones f\u00edsicas y retroalimentaci\u00f3n visual y sonora.<\/p>\n\n\n\n<p>El sistema simula tres necesidades b\u00e1sicas de la mascota: amor, comida y sue\u00f1o, mostrando su estado en una pantalla LCD 16&#215;2 y alertando al usuario mediante LEDs y un buzzer. Adem\u00e1s, la mascota se representa mediante un <em>sprite<\/em> animado que se desplaza horizontalmente en la pantalla, ofreciendo una interfaz visual intuitiva.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Materiales y coste te\u00f3rico<\/h2>\n\n\n\n<p>A continuaci\u00f3n se muestra una tabla con el presupuesto aproximado, pese a que se ha llevado a cabo \u00fanicamente con componentes presentes en la caja proporcionada en la asignatura o propios y, por ende, el coste real ha sido nulo. Los precios son orientativos, ya que pueden variar en funci\u00f3n de la tienda regi\u00f3n.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>Componente<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>Precio (\u20ac)<\/strong><\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Placa Elegoo Uno R3<\/td><td class=\"has-text-align-center\" data-align=\"center\">6,00<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Protoboard de 840 puntos<\/td><td class=\"has-text-align-center\" data-align=\"center\">3,29<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Pantalla LCD 16&#215;2<\/td><td class=\"has-text-align-center\" data-align=\"center\">3,95<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">LEDs x3<\/td><td class=\"has-text-align-center\" data-align=\"center\">0,36<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Buzzer pasivo<\/td><td class=\"has-text-align-center\" data-align=\"center\">0,90<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Resistencias x5 (220 Ohmios y 2k Ohmios)<\/td><td class=\"has-text-align-center\" data-align=\"center\">0,50<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Pulsadores x3<\/td><td class=\"has-text-align-center\" data-align=\"center\">1,20<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Cables jumper macho-macho x28<\/td><td class=\"has-text-align-center\" data-align=\"center\">2,80<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\">Cable de alimentaci\u00f3n<\/td><td class=\"has-text-align-center\" data-align=\"center\">1,50<\/td><\/tr><tr><td class=\"has-text-align-center\" data-align=\"center\"><strong>Total<\/strong><\/td><td class=\"has-text-align-center\" data-align=\"center\"><strong>20,50<\/strong><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Dise\u00f1o hardware<\/h2>\n\n\n\n<p>El Tamagotchi funciona con Arduino Uno y utiliza lo siguiente:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Pantalla LCD 16&#215;2 para mostrar el estado de la mascota.<\/li>\n\n\n\n<li>LEDs para alertas visuales (uno para cada necesidad: amor, comida y sue\u00f1o).<\/li>\n\n\n\n<li>Buzzer para alertas sonoras.<\/li>\n\n\n\n<li>Botones para restaurar cada necesidad.<\/li>\n\n\n\n<li>Powerbank para alimentaci\u00f3n port\u00e1til.<\/li>\n<\/ul>\n\n\n\n<p>El montaje se hizo sobre una protoboard de 840 puntos para poder distrubuir los distintos componentes de manera \u00f3ptima y amigable con el usuario.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"474\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-34-1024x474.png\" alt=\"\" class=\"wp-image-9747\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-34-1024x474.png 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-34-300x139.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-34-768x355.png 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-34.png 1191w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>En la imagen anterior hay demasiados cables superpuestos, por lo que, para mayor claridad, tambi\u00e9n se incluye el diagrama original del hardware, donde se muestra c\u00f3mo deber conectarse cada componente a la placa de Arduino:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"452\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/Diseno-hardware-Tinkercad-1024x452.png\" alt=\"\" class=\"wp-image-9744\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/Diseno-hardware-Tinkercad-1024x452.png 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/Diseno-hardware-Tinkercad-300x133.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/Diseno-hardware-Tinkercad-768x339.png 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/Diseno-hardware-Tinkercad-1536x678.png 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/Diseno-hardware-Tinkercad.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Dise\u00f1o software<\/h2>\n\n\n\n<p>El programa encargado del funcionamiento est\u00e1 estructurado en tres bloques principales: la declaraci\u00f3n de variables y recursos, la inicializaci\u00f3n del sistema (<em>setup<\/em>) y el ciclo principal de ejecuci\u00f3n (<em>loop<\/em>), apoyados por funciones auxiliares. A continuaci\u00f3n se presenta el c\u00f3digo fuente del proyecto:<\/p>\n\n\n\n<details class=\"wp-block-details is-layout-flow wp-block-details-is-layout-flow\"><summary>C\u00f3digo fuente<\/summary>\n<pre class=\"wp-block-code\"><code>#include &lt;LiquidCrystal.h&gt;\n\nint LedPinH= 13;\nint LedPinE = 12;\nint LedPinD = 11;\n\nint En;\nint Di;\nint Ha;\n\nint a = 9;\nint b = 9;\nint p = 0;\n\nint ButPinH = A0;\nint ButStateH;\nint ButPinD = A2;\nint ButStateD;\nint ButPinE = A1;\nint ButStateE;\n\nint death = 0;\n\nint pinBuzzer = A3;\n\nLiquidCrystal lcd(2, 3, 4, 5, 7, 8); \/\/ RS, E, D4, D5, D6, D7\n\nbyte happy1&#091;] = {\n  B00001,\n  B00110,\n  B01000,\n  B10001,\n  B10001,\n  B10001,\n  B10001,\n  B10000\n};\n\nbyte happy2&#091;] = {\n  B11111,\n  B00000,\n  B00000,\n  B00000,\n  B00000,\n  B00000,\n  B00000,\n  B00000\n};\n\nbyte happy3&#091;] = {\n  B10000,\n  B01100,\n  B00010,\n  B10001,\n  B10001,\n  B10001,\n  B10001,\n  B00001\n};\n\nbyte happy4&#091;] = {\n  B10000,\n  B01000,\n  B00111,\n  B00000,\n  B00000,\n  B00000,\n  B00000,\n  B00000\n};\n\nbyte happy5&#091;] = {\n  B00000,\n  B00000,\n  B11111,\n  B00000,\n  B00000,\n  B00000,\n  B00000,\n  B00000\n};\n\nbyte happy6&#091;] = {\n  B00001,\n  B00010,\n  B11100,\n  B00000,\n  B00000,\n  B00000,\n  B00000,\n  B00000\n};\n\nbyte muerto1&#091;] = {\n  B00001,\n  B00110,\n  B01000,\n  B10000,\n  B10101,\n  B10010,\n  B10101,\n  B10000\n};\n\nbyte muerto2&#091;] = {\n  B10000,\n  B01100,\n  B00010,\n  B00001,\n  B10101,\n  B01001,\n  B10101,\n  B00001\n};\n\n\nvoid setup() {\n  \/\/ put your setup code here, to run once:\nrandomSeed(analogRead(0));\nlcd.begin(16, 2);\n\nlcd.createChar(0, happy1);\nlcd.createChar(1, happy2);\nlcd.createChar(2, happy3);\nlcd.createChar(3, happy4);\nlcd.createChar(4, happy5);\nlcd.createChar(5, happy6);\nlcd.createChar(6, muerto1);\nlcd.createChar(7, muerto2);\n\nlcd.home();  \n\npinMode(LedPinH, OUTPUT);\npinMode(LedPinE, OUTPUT);\npinMode(LedPinD, OUTPUT);\npinMode(pinBuzzer, OUTPUT);\nif(death == 0){\npinMode(ButPinH, INPUT_PULLUP);\npinMode(ButPinD, INPUT_PULLUP);\npinMode(ButPinE, INPUT_PULLUP);\n}\n\n\nEn= random(200,251);\nDi= random(150,200);\nHa= random(100,151);\n\nanalogWrite(LedPinH, 255);\nanalogWrite(LedPinE, 255);\nanalogWrite(LedPinD, 255);\n\nlcd.setCursor(a-1,1);\nlcd.write(byte(3));\n\nlcd.setCursor(a-1,0);\nlcd.write(byte(0));\n\nlcd.setCursor(a,1);\nlcd.write(byte(4));\n\nlcd.setCursor(a,0);\nlcd.write(byte(1));\n\nlcd.setCursor(a+1,1);\nlcd.write(byte(5));\n\nlcd.setCursor(a+1,0);\nlcd.write(byte(2));\n\n\nlcd.setCursor(0,0);\nlcd.print(\"z\");\n  \nlcd.setCursor(1,0);\nlcd.print(\"Z\");\n  \nlcd.setCursor(0,1);\nlcd.print(\"&lt;\");\n  \nlcd.setCursor(1,1);\nlcd.print(\"3\");\n\nlcd.setCursor(14,1);\nlcd.print(\"(\");\n  \nlcd.setCursor(15,1);\nlcd.print(\")\");\n\n}\n\nvoid loop() {\n  \/\/ put your main code here, to run repeatedly:\nButStateH = digitalRead(ButPinH);\nButStateD = digitalRead(ButPinD);\nButStateE = digitalRead(ButPinE);\n\nif(death == 0){\n\nmover();\n\nif(ButStateE == HIGH)\n{\nif(En&gt;0)\n{\nEn--;\nif(En == 50){\nbuzzer(100);\n}\nif(En&lt;50){\nlcd.setCursor(1,0);\nlcd.print(\" \");\nanalogWrite(LedPinE, 10);\ndelay(100);\nanalogWrite(LedPinE, 255);\n}\nif(En&lt;15)\n{\nbuzzer(100);\n}\n\n} else {\nlcd.setCursor(0,0);\nlcd.print(\" \");\n  \nlcd.setCursor(1,0);\nlcd.print(\" \");\ndeath = 1;\n}\n}\n\nif(ButStateE == LOW)\n{\nEn=255;\nanalogWrite(LedPinE, En);\nlcd.setCursor(0,0);\nlcd.print(\"z\");\n  \nlcd.setCursor(1,0);\nlcd.print(\"Z\");\n}\n\nif(ButStateD == HIGH)\n{\nif(Di&gt;0)\n{\nDi--;\nif(Di == 50){\nbuzzer(100);\n}\nif(Di&lt;50){\nlcd.setCursor(1,1);\nlcd.print(\" \");\nanalogWrite(LedPinD, 10);\ndelay(100);\nanalogWrite(LedPinD, 255);\n}\nif(Di&lt;15)\n{\nbuzzer(100);\n}\n} else {\nlcd.setCursor(0,1);\nlcd.print(\" \");\n  \nlcd.setCursor(1,1);\nlcd.print(\" \");\ndeath = 1;\n}\n}\n\nif(ButStateD == LOW)\n{\nDi=255;\nanalogWrite(LedPinD, Di);\nlcd.setCursor(0,1);\nlcd.print(\"&lt;\");\n  \nlcd.setCursor(1,1);\nlcd.print(\"3\");\n}\n\n\n\nif(ButStateH == HIGH)\n{\nif(Ha&gt;0)\n{\nHa--;\nif(Ha == 50){\nbuzzer(100);\n}\nif(Ha&lt;50){\nlcd.setCursor(15,1);\nlcd.print(\" \");\nanalogWrite(LedPinH, 10);\ndelay(100);\nanalogWrite(LedPinH, 255);\n}\nif(Ha&lt;15)\n{\nbuzzer(100);\n}\n} else {\nlcd.setCursor(15,1);\nlcd.print(\" \");\n  \nlcd.setCursor(14,1);\nlcd.print(\" \");\ndeath = 1;\n}\n}\n\nif(ButStateH == LOW)\n{\nHa=255;\nanalogWrite(LedPinH, Ha);\nlcd.setCursor(14,1);\nlcd.print(\"(\");\n  \nlcd.setCursor(15,1);\nlcd.print(\")\");\n}\n\n\ndelay(1000);\n}else{\nlcd.setCursor(p-1,0);\nlcd.write(byte(6));\n\nlcd.setCursor(p+1,0);\nlcd.write(byte(7));\n\nif(death == 1){\nbuzzer(1000);\ndeath = 2;\n}\n}\n}\n\nvoid mover()\n{\nif(a&gt;6)\n{\nlcd.setCursor(a-1,1);\nlcd.write(\" \");\n\nlcd.setCursor(a-2,1);\nlcd.write(byte(3));\n\nlcd.setCursor(a-1,0);\nlcd.write(\" \");\n\nlcd.setCursor(a-2,0);\nlcd.write(byte(0));\n\nlcd.setCursor(a,1);\nlcd.write(\" \");\n\nlcd.setCursor(a-1,1);\nlcd.write(byte(4));\n\nlcd.setCursor(a,0);\nlcd.write(\" \");\n\nlcd.setCursor(a-1,0);\nlcd.write(byte(1));\n\nlcd.setCursor(a+1,1);\nlcd.write(\" \");\n\nlcd.setCursor(a,1);\nlcd.write(byte(5));\n\nlcd.setCursor(a+1,0);\nlcd.write(\" \");\n\nlcd.setCursor(a,0);\nlcd.write(byte(2));\n\na--;\np=a;\n\ndelay(1000);\n}\nif(a == 6){b=6;\na--;\n}\n\nif(b&lt;8)\n{\nlcd.setCursor(b+1,1);\nlcd.write(\" \");\n\nlcd.setCursor(b+2,1);\nlcd.write(byte(5));\n\nlcd.setCursor(b+1,0);\nlcd.write(\" \");\n\nlcd.setCursor(b+2,0);\nlcd.write(byte(2));\n\nlcd.setCursor(b,1);\nlcd.write(\" \");\n\nlcd.setCursor(b+1,1);\nlcd.write(byte(4));\n\nlcd.setCursor(b,0);\nlcd.write(\" \");\n\nlcd.setCursor(b+1,0);\nlcd.write(byte(1));\n\nlcd.setCursor(b-1,1);\nlcd.write(\" \");\n\nlcd.setCursor(b,1);\nlcd.write(byte(3));\n\nlcd.setCursor(b-1,0);\nlcd.write(\" \");\n\nlcd.setCursor(b,0);\nlcd.write(byte(0));\nb++;\np=b;\n\ndelay(1000);\n}\nif(b == 8){a=8;\nb++;\n}\n}\n\nvoid buzzer(int del)\n{\ndigitalWrite(pinBuzzer, HIGH); \ndelay(del);\ndigitalWrite(pinBuzzer, LOW);\n}\nmessage.txt\nmessage.txt (6 KB)\n6 KB<\/code><\/pre>\n<\/details>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Proceso de empotrado<\/h2>\n\n\n\n<p>El dise\u00f1o de la estructura de empotrado para el tamagotchi est\u00e1 inspirado en el slime <em>Pusddle <\/em>de <em>Slime Rancher<\/em>, ya que la propia mascota del tamagotchi es un slime.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/f4.bcbits.com\/img\/a3274555960_10.jpg\" alt=\"Puddle Slime | Puddle Slime | Vanen\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>La caja contenedora se dise\u00f1o a medida para el prototipo a partir de trozos de cart\u00f3n, haciendo los agujeros necesarios para los componentes interactuables, y se ensambl\u00f3 con ayuda de silicona caliente. Con la estructura base terminada, se procedi\u00f3 con la decoraci\u00f3n utilizando papeles de colores, obteniendo el siguiente resultado:<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"474\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-35-1024x474.png\" alt=\"\" class=\"wp-image-9750\" style=\"aspect-ratio:2.1603956138464846;width:785px;height:auto\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-35-1024x474.png 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-35-300x139.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-35-768x355.png 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-35.png 1038w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"467\" src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-36-1024x467.png\" alt=\"\" class=\"wp-image-9751\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-36-1024x467.png 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-36-300x137.png 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-36-768x350.png 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/image-36.png 1041w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Funcionamiento<\/h2>\n\n\n\n<p>El Tamagotchi electr\u00f3nico simula la vida de una mascota virtual, gestionando tres necesidades b\u00e1sicas: amor, comida y sue\u00f1o. Cada una de estas necesidades se representa mediante un LED espec\u00edfico (rojo, azul o amarillo) y un s\u00edmbolo ASCII en la pantalla LCD 16&#215;2. La mascota en s\u00ed se representa con un <em>sprite<\/em> animado que se desplaza horizontalmente por la pantalla.<\/p>\n\n\n\n<p>El sistema utiliza distintos tipos de retroalimentaci\u00f3n para alertar al usuario sobre las necesidades de la mascota:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Alertas visuales<\/strong>: Cuando una necesidad alcanza un valor cr\u00edtico, el LED correspondiente parpadea y el s\u00edmbolo ASCII asociado se modifica parcialmente para indicar la urgencia.<br><\/li>\n\n\n\n<li><strong>Alertas sonoras<\/strong>: El buzzer emite pitidos de distinta duraci\u00f3n seg\u00fan la gravedad de la necesidad. Cuando la necesidad es cr\u00edtica, se realiza un pitido corto; si queda menos de 15 segundos para llegar a cero, los pitidos se vuelven intermitentes; finalmente, si la necesidad llega a cero, se emite un pitido largo que indica la muerte de la mascota.<br><\/li>\n\n\n\n<li><strong>Animaci\u00f3n continua<\/strong>: El sprite de la mascota se mueve de izquierda a derecha en la pantalla de manera constante, proporcionando retroalimentaci\u00f3n visual adicional sobre el estado del sistema.<\/li>\n<\/ul>\n\n\n\n<p>El usuario puede restaurar cada necesidad pulsando el bot\u00f3n correspondiente, situado debajo del LED de la necesidad. Al hacerlo, el valor de la necesidad se reinicia al m\u00e1ximo y el s\u00edmbolo ASCII se restablece.<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"480\" style=\"aspect-ratio: 854 \/ 480;\" width=\"854\" controls src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/12191-1.mp4\"><\/video><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"480\" style=\"aspect-ratio: 854 \/ 480;\" width=\"854\" controls src=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/12194-1.mp4\"><\/video><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introducci\u00f3n Este proyecto consiste en un Tamagotchi electr\u00f3nico interactivo, un sistema empotrado que permite al usuario cuidar de una mascota virtual a trav\u00e9s de interacciones f\u00edsicas y retroalimentaci\u00f3n visual y sonora. El sistema simula&#46;&#46;&#46;<\/p>\n","protected":false},"author":307,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-9740","post","type-post","status-publish","format-standard","hentry","category-proyectos"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Tamagotchi - Grupo 10 - Proyectos con Arduino.<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tamagotchi - Grupo 10 - Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"Introducci\u00f3n Este proyecto consiste en un Tamagotchi electr\u00f3nico interactivo, un sistema empotrado que permite al usuario cuidar de una mascota virtual a trav\u00e9s de interacciones f\u00edsicas y retroalimentaci\u00f3n visual y sonora. El sistema simula&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-20T00:06:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-20T00:06:32+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"dse2526g10\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"dse2526g10\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/\"},\"author\":{\"name\":\"dse2526g10\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/62cc7f27731116849b2ede006361bd9a\"},\"headline\":\"Tamagotchi &#8211; Grupo 10\",\"datePublished\":\"2025-12-20T00:06:31+00:00\",\"dateModified\":\"2025-12-20T00:06:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/\"},\"wordCount\":676,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2025\\\/12\\\/6d5d0359-b43b-4fb6-9021-9b2d174997c3-1024x576.jpg\",\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/\",\"name\":\"Tamagotchi - Grupo 10 - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2025\\\/12\\\/6d5d0359-b43b-4fb6-9021-9b2d174997c3-1024x576.jpg\",\"datePublished\":\"2025-12-20T00:06:31+00:00\",\"dateModified\":\"2025-12-20T00:06:32+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2025\\\/12\\\/6d5d0359-b43b-4fb6-9021-9b2d174997c3.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2025\\\/12\\\/6d5d0359-b43b-4fb6-9021-9b2d174997c3.jpg\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/tamagotchi-grupo-10\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tamagotchi &#8211; Grupo 10\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\",\"name\":\"Proyectos con Arduino.\",\"description\":\"Blog de proyectos de Arduino de alumnos de la URJC\",\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\",\"name\":\"Universidad Rey Juan Carlos\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/logourjc-1.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2022\\\/05\\\/logourjc-1.jpg\",\"width\":745,\"height\":288,\"caption\":\"Universidad Rey Juan Carlos\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/62cc7f27731116849b2ede006361bd9a\",\"name\":\"dse2526g10\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/2eef8306704b136b710c2aecf0e4c4228e6739fa94a5fe01b2c19fb90c2936e7?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/2eef8306704b136b710c2aecf0e4c4228e6739fa94a5fe01b2c19fb90c2936e7?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/2eef8306704b136b710c2aecf0e4c4228e6739fa94a5fe01b2c19fb90c2936e7?s=96&d=mm&r=g\",\"caption\":\"dse2526g10\"},\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/author\\\/dse2526g10\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Tamagotchi - Grupo 10 - Proyectos con Arduino.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/","og_locale":"es_ES","og_type":"article","og_title":"Tamagotchi - Grupo 10 - Proyectos con Arduino.","og_description":"Introducci\u00f3n Este proyecto consiste en un Tamagotchi electr\u00f3nico interactivo, un sistema empotrado que permite al usuario cuidar de una mascota virtual a trav\u00e9s de interacciones f\u00edsicas y retroalimentaci\u00f3n visual y sonora. El sistema simula&#46;&#46;&#46;","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2025-12-20T00:06:31+00:00","article_modified_time":"2025-12-20T00:06:32+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3.jpg","type":"image\/jpeg"}],"author":"dse2526g10","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"dse2526g10","Tiempo de lectura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/"},"author":{"name":"dse2526g10","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/62cc7f27731116849b2ede006361bd9a"},"headline":"Tamagotchi &#8211; Grupo 10","datePublished":"2025-12-20T00:06:31+00:00","dateModified":"2025-12-20T00:06:32+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/"},"wordCount":676,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3-1024x576.jpg","articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/","name":"Tamagotchi - Grupo 10 - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3-1024x576.jpg","datePublished":"2025-12-20T00:06:31+00:00","dateModified":"2025-12-20T00:06:32+00:00","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3.jpg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2025\/12\/6d5d0359-b43b-4fb6-9021-9b2d174997c3.jpg","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/tamagotchi-grupo-10\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"Tamagotchi &#8211; Grupo 10"}]},{"@type":"WebSite","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/","name":"Proyectos con Arduino.","description":"Blog de proyectos de Arduino de alumnos de la URJC","publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization","name":"Universidad Rey Juan Carlos","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/logo\/image\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/logourjc-1.jpg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2022\/05\/logourjc-1.jpg","width":745,"height":288,"caption":"Universidad Rey Juan Carlos"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/62cc7f27731116849b2ede006361bd9a","name":"dse2526g10","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/2eef8306704b136b710c2aecf0e4c4228e6739fa94a5fe01b2c19fb90c2936e7?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/2eef8306704b136b710c2aecf0e4c4228e6739fa94a5fe01b2c19fb90c2936e7?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2eef8306704b136b710c2aecf0e4c4228e6739fa94a5fe01b2c19fb90c2936e7?s=96&d=mm&r=g","caption":"dse2526g10"},"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/author\/dse2526g10\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/9740","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/users\/307"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/comments?post=9740"}],"version-history":[{"count":2,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/9740\/revisions"}],"predecessor-version":[{"id":9758,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/9740\/revisions\/9758"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=9740"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=9740"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=9740"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}