{"id":3910,"date":"2021-05-14T14:49:15","date_gmt":"2021-05-14T14:49:15","guid":{"rendered":"https:\/\/blogs.etsii.urjc.es\/dseytr\/?p=3910"},"modified":"2021-05-14T14:51:49","modified_gmt":"2021-05-14T14:51:49","slug":"midi-con-arduino","status":"publish","type":"post","link":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/","title":{"rendered":"MIDI con Arduino"},"content":{"rendered":"\n<p><strong>Miembros del Equipo<\/strong> (Grupo 8)<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Antonio Cao Belinch\u00f3n<\/li><li>Aaron Tejedor Llorente<\/li><li>Jiarong Tang<\/li><\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Introduccion<\/strong><\/p>\n\n\n\n<p>Este proyecto tiene la intenci\u00f3n de realizar un dispositivo capaz de procesar la interfaz de audio MIDI (Musical Instrument Digital Interface).<br>La idea es que al conectar v\u00eda USB el dispositivo a cualquier ordenador (siempre y cuando<br>el sistema operativo lo permita), se pueda trabajar con cualquier software de creaci\u00f3n de<br>m\u00fasica.<\/p>\n\n\n\n<p>El dispositivo cuenta con botones para las notas: DO, RE, MI, FA, SOL, LA, SI.<\/p>\n\n\n\n<p>Adem\u00e1s, tambien cuenta con 1 potenci\u00f3metro para modificar el \u00abpitch\u00bb de la nota que est\u00e1 sonando, y 3 botones adicionales, los cuales sirven para grabar, reproducir la grabacion, y reproducir la grabaci\u00f3n en orden inverso.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Materiales<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>Placa Arduino<\/td><td>&#8211;<\/td><\/tr><tr><td>Breadboard<\/td><td>&#8211;<\/td><\/tr><tr><td>Potenciometro x1<\/td><td>&#8211;<\/td><\/tr><tr><td>Interruptores x11<\/td><td>0.25\u20ac<\/td><\/tr><tr><td>Cables para realizar las conexiones<\/td><td>&#8211;<\/td><\/tr><tr><td>Cable USB<\/td><td>&#8211;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Hardware<\/strong><\/p>\n\n\n\n<p>En primer lugar se ha conectado el potenci\u00f3metro al pin anal\u00f3gico 0, a la vcc de 5V del<br>arduino y a ground.<\/p>\n\n\n\n<p>Luego los 11 botones utilizados se han conectado por una pata a los pines digitales del 2 al<br>12, ambos incluidos y por la otra a la toma de tierra.<br>En el pin digital 2 se ha conectado el bot\u00f3n que sirve para cambiar la velocidad de<br>reproducci\u00f3n de las grabaciones. La velocidad por defecto ser\u00e1 normal, pudiendo cambiar<br>a lenta, r\u00e1pida y nuevamente a normal de forma c\u00edclica pulsando el bot\u00f3n.<br>Entre el pin digital 3 y el pin digital 9 se encuentran los botones correspondientes a las<br>notas musicales. En el pin 3 se encuentra la nota musical DO y en los 6 pines siguientes se<br>localizan las dem\u00e1s notas musicales de manera ascendente, terminando en el pin digital 9<br>con la nota SI.<br>En el pin digital 10 se ha conectado el bot\u00f3n que permite tanto iniciar una grabaci\u00f3n como<br>finalizarla.<br>El bot\u00f3n conectado al pin digital 11 reproduce la canci\u00f3n guardada con la funcionalidad de<br>la grabadora al rev\u00e9s, es decir en orden inverso a como se guard\u00f3. Siempre que la<br>grabaci\u00f3n se haya empleado anteriormente, de no darse este caso no reproducir\u00e1 ning\u00fan<br>sonido.<br>En el pin digital 12 se encuentra el bot\u00f3n que reproduce la canci\u00f3n guardada en orden<br>normal. Al igual que con el pin digital 11, si la grabadora no ha guardado ninguna canci\u00f3n<br>este bot\u00f3n no reproducir\u00e1 sonido alguno.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino.jpeg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-1024x768.jpeg\" alt=\"\" class=\"wp-image-3914\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-1024x768.jpeg 1024w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-300x225.jpeg 300w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-768x576.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-1536x1152.jpeg 1536w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino.jpeg 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi2.jpeg\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" src=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi2-768x1024.jpeg\" alt=\"\" class=\"wp-image-3916\" srcset=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/midi2-768x1024.jpeg 768w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/midi2-225x300.jpeg 225w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/midi2-1152x1536.jpeg 1152w, https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-content\/uploads\/sites\/8\/2021\/05\/midi2.jpeg 1536w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/a><\/figure>\n\n\n\n<p><strong>Software<\/strong><\/p>\n\n\n\n<p>Para hacer funcionar nuestro Arduino, hemos utilizado una herramienta llamada HIDUINO.<\/p>\n\n\n\n<p>Esta herramienta debemos flashearla en nuestro Arduino justo despues de instalar el codigo del siguiente apartado.<\/p>\n\n\n\n<p>Entre otras cosas, HIDUINO hace que nuestro sistema operativo detecte el Arduino como un dispositivo MIDI, simplificando un mont\u00f3n trabajar con \u00e9l.<\/p>\n\n\n\n<p>A continuacion incluimos el c\u00f3digo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;MIDI.h&gt; \/\/  Incluimos la libreria MIDI\n\n\nconst int numBotones=11;        \/\/ N\u00famero de botones totales que tiene el dispositivo\nconst int numBotonesNotas=7;    \/\/ N\u00famero de botones correspondientes a las notas\nint valorLeido&#091;numBotones];     \/\/ Array con los valores leidos de cada boton\nint valorAnterior&#091;numBotones];  \/\/ Array con el valor anterior leido\nconst int maximoGrabacion=50;    \/\/ Tama\u00f1o m\u00e1ximo para las grabaciones\nint grabacion&#091;maximoGrabacion]; \/\/ Array para las grabaciones\nMIDI_CREATE_DEFAULT_INSTANCE();\nint potencia = 0;               \/\/ Pin anal\u00f3gico deonde se conecta el potenciometro\nint valorPitch = 0;          \nboolean inicializado = false;   \/\/ Variable booleana que indica si se ha guardado alguna canci\u00f3n con la funci\u00f3n de la grabadora\nint velocidad = 750;            \/\/ Variable que indica la velocidad de reproducci\u00f3n de las grabaciones\n\n\n\nvoid setup() {\n  MIDI.begin();                 \/\/ Inicializamos la comunicacion midi (realmente es serial)\n  Serial.begin(31250);\n  for(int i=0; i&lt;numBotones; i++){\n    pinMode(i+2, INPUT_PULLUP); \/\/ Recorremos cada pin y lo ponemos como entrada\n    valorAnterior&#091;i]=1;         \/\/ Inicializamos el valor anterior a 1 (no pulsado)\n  }\n  \/\/ Inicializamos el array de grabaci\u00f3n como si estuviese vacio\n  for (int j=0; j&lt;maximoGrabacion; j++) {\n    grabacion&#091;j]=-1;\n  }\n}\n\n\n\nvoid loop(){\n  \/\/ Leemos el potenci\u00f3metro\n  potencia = analogRead(0);\n  valorPitch = map(potencia,0,1023,-8192,8191);\n  MIDI.sendPitchBend(valorPitch,4);\n  \n  \/\/ Comprobamos si se pulsa alg\u00fan bot\u00f3n correspondiente a las notas musicales,\n  \/\/ ubicadas en los pines digitales del 3 al 9\n  for(int i=1; i&lt;=numBotonesNotas; i++){\n    valorLeido&#091;i]=digitalRead(i+2); \/\/ Leer valor\n    \/\/ Solo enviamos cuando ha existido un cambio\n    if((valorLeido&#091;i]==0) &amp;&amp; (valorLeido&#091;i]!=valorAnterior&#091;i])){\n      MIDI.sendNoteOn(47+i, 127, 1); \/\/48 corresponde a C es decir DO.\n    }\n    else if ((valorLeido&#091;i]==1) &amp;&amp; (valorLeido&#091;i]!=valorAnterior&#091;i])){\n      MIDI.sendNoteOff(47+i, 0, 1);\n    }\n    valorAnterior&#091;i]=valorLeido&#091;i]; \/\/ El valor anterior es el nuevo valor para la siguiente iteracion\n  }\n\n  \/\/ Comprobamos si se pulsa el bot\u00f3n para grabar conectado al pin digital 10\n  valorLeido&#091;8] = digitalRead(10);\n  if ((valorLeido&#091;8]==0) &amp;&amp; (valorLeido&#091;8]!=valorAnterior&#091;8])) {\n    \/\/ Si se pulsa y ya se hab\u00eda pulsado anteriormente se borra la canci\u00f3n que hab\u00eda guardada\n    if (inicializado) {\n      for (int l = 0; l &lt; maximoGrabacion; l++) {\n        grabacion&#091;l] = -1;\n      }\n    }\n    delay(500);\n    grabadora();\n  }\n\n  \/\/ Comprobamos si se pulsa el bot\u00f3n para reproducir la canci\u00f3n conectado al pin digital 12\n  valorLeido&#091;10]=digitalRead(12);\n  \/\/ Si no hay ninguna canci\u00f3n guardada no entra en el if y no reproduce nada\n  if ((valorLeido&#091;10]==0) &amp;&amp; (valorLeido&#091;10]!=valorAnterior&#091;10]) &amp;&amp; (inicializado)) {\n    reproducir();\n    valorAnterior&#091;10]=valorLeido&#091;10];\n  }\n  \/\/ Una vez reproducida la canci\u00f3n cambiamos el estado del bot\u00f3n a su fase original\n  else if ((valorLeido&#091;10]==1) &amp;&amp; (valorLeido&#091;10]!=valorAnterior&#091;10]) &amp;&amp; (inicializado)) {\n    valorAnterior&#091;10]=valorLeido&#091;10];\n  }\n\n  \/\/ Comprobamos si se ha pulsado el bot\u00f3n para rebobinar la canci\u00f3n,\n  \/\/ es decir reproducirla pero al rev\u00e9s de como se guard\u00f3, conectado al pin digital 12\n  valorLeido&#091;9]=digitalRead(11);\n  if ((valorLeido&#091;9]==0) &amp;&amp; (valorLeido&#091;9]!=valorAnterior&#091;9]) &amp;&amp; (inicializado)) {\n    rebobinar();\n    valorAnterior&#091;9]=valorLeido&#091;9];\n  }\n  \/\/ Volvemos al estado original del bot\u00f3n\n  else if ((valorLeido&#091;9]==1) &amp;&amp; (valorLeido&#091;9]!=valorAnterior&#091;9]) &amp;&amp; (inicializado)) {\n    valorAnterior&#091;9]=valorLeido&#091;9];\n  }\n\n  \/\/ Comprobamos si se pulsa el bot\u00f3n para cambiar la velocidad de reproducci\u00f3n\n  \/\/ de las canciones guardadas, conectado al pin digital 2\n  valorLeido&#091;0]=digitalRead(2);\n  if ((valorLeido&#091;0]==0) &amp;&amp; (valorLeido&#091;0]!=valorAnterior&#091;0])) {\n    cambiarVelocidad();\n    valorAnterior&#091;0]=valorLeido&#091;0];\n  }\n  \/\/ Vuelta a la fase original del bot\u00f3n\n  else if ((valorLeido&#091;0]==1) &amp;&amp; (valorLeido&#091;0]!=valorAnterior&#091;0])) {\n    valorAnterior&#091;0]=valorLeido&#091;0];\n  }\n}\n\n\n\n\/\/ Funci\u00f3n para grabar canciones\nvoid grabadora() {\n  int j=0;\n  \/\/ Mientras no se pulse el boton para dejar de grabar conectado al pin digital 10 y el tama\u00f1o de la grabacion sea menor al m\u00e1ximo\n  \/\/ N\u00f3tese que el bot\u00f3n conectado al pin digital 10 sirve para empezar a grabar como para finalizar la grabaci\u00f3n\n  while ((digitalRead(10)==1) &amp;&amp; (j&lt;maximoGrabacion)) {\n    for(int i=1; i&lt;=numBotonesNotas; i++){\n      valorLeido&#091;i]=digitalRead(i+2); \/\/ Leer valor\n      if ((valorLeido&#091;i]==0)  &amp;&amp; (valorLeido&#091;i]!=valorAnterior&#091;i])) {\n        if((valorLeido&#091;i]==0) &amp;&amp; (valorLeido&#091;i]!=valorAnterior&#091;i])){\n          MIDI.sendNoteOn(47+i, 127, 1); \/\/48 corresponde a C es decir DO.\n        }\n        else if ((valorLeido&#091;i]==1) &amp;&amp; (valorLeido&#091;i]!=valorAnterior&#091;i])){\n          MIDI.sendNoteOff(47+i, 0, 1);\n        }\n        grabacion&#091;j]=i; \/\/A\u00f1adir la nota a la grabaci\u00f3n\n        j++;\n        delay(1000); \/\/ Retardo para poder pulsar los botones de las notas\n      }\n    }\n  } \n  delay(500);\n  inicializado = true;\n}\n\n\n\n\/\/ Funci\u00f3n para reproducir la canci\u00f3n grabada\nvoid reproducir() {\n  int i = 0;\n  \/\/ Mientras en el array haya valores para notas l\u00f3gicos (no vacios) o se alcance el tama\u00f1o del array\n  while((i&lt;maximoGrabacion) &amp;&amp; (grabacion&#091;i]!=-1)) {\n    MIDI.sendNoteOn(47+grabacion&#091;i], 127, 1); \/\/ 48 corresponde a C es decir DO.\n    delay(velocidad); \/\/ Velocidad de reproducci\u00f3n\n    MIDI.sendNoteOff(47+grabacion&#091;i], 0, 1);\n    i++;\n  }\n}\n\n\n\n\/\/ Funci\u00f3n para reproducir la canci\u00f3n al rev\u00e9s\nvoid rebobinar() {\n  int cont = maximoGrabacion-1;\n  \/\/ Nos colocamos en la \u00faltima nota de la canci\u00f3n guardada\n  while((cont&gt;=0) &amp;&amp; (grabacion&#091;cont]==-1)) {\n    cont--;\n  }\n  \/\/ Reproduce la canci\u00f3n desd el final hasta llegar al comienzo del array\n  while (cont&gt;=0) {\n    MIDI.sendNoteOn(47+grabacion&#091;cont], 127, 1); \/\/48 corresponde a C es decir DO.\n    delay(velocidad); \/\/ Velocidad de reproducci\u00f3n\n    MIDI.sendNoteOff(47+grabacion&#091;cont], 0, 1);\n    cont--;\n  }\n}\n\n\n\n\/\/ Funci\u00f3n para cambiar la velocidad de reproducci\u00f3n de las grabaciones,\n\/\/ tanto en modo normal como al rev\u00e9s con un cambio ciclo de tres fases\nvoid cambiarVelocidad() {\n  \/\/Si la velocidad es normal pasar a lento\n  if (velocidad==750) {\n    velocidad=2000;\n  }\n  \/\/Si la velocidad es lento pasar a r\u00e1pido\n  else if (velocidad==2000) {\n    velocidad=250;\n  }\n  \/\/Si la velocidad es r\u00e1pido pasar a normal\n  else if (velocidad==250) {\n    velocidad=750;\n  }\n}<\/code><\/pre>\n\n\n\n<p>Para m\u00e1s informacion sobre HIDUINO, os dejamos un enlace a su repositorio en GitHub: https:\/\/github.com\/ddiakopoulos\/hiduino<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Funcionamiento<\/strong><\/p>\n\n\n\n<p>A continuacion podreis ver como funciona :<\/p>\n\n\n\n<p><a href=\"https:\/\/drive.google.com\/file\/d\/1L2UCjwu3wQffYIkRzDvZM4fBvyYFEqWG\/view?usp=sharing\">https:\/\/drive.google.com\/file\/d\/1L2UCjwu3wQffYIkRzDvZM4fBvyYFEqWG\/view?usp=sharing<\/a><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Miembros del Equipo (Grupo 8) Antonio Cao Belinch\u00f3n Aaron Tejedor Llorente Jiarong Tang Introduccion Este proyecto tiene la intenci\u00f3n de realizar un dispositivo capaz de procesar la interfaz de audio MIDI (Musical Instrument Digital&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3910","post","type-post","status-publish","format-standard","hentry","category-proyectos"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>MIDI con Arduino - 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\/midi-con-arduino\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"MIDI con Arduino - Proyectos con Arduino.\" \/>\n<meta property=\"og:description\" content=\"Miembros del Equipo (Grupo 8) Antonio Cao Belinch\u00f3n Aaron Tejedor Llorente Jiarong Tang Introduccion Este proyecto tiene la intenci\u00f3n de realizar un dispositivo capaz de procesar la interfaz de audio MIDI (Musical Instrument Digital&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/\" \/>\n<meta property=\"og:site_name\" content=\"Proyectos con Arduino.\" \/>\n<meta property=\"article:published_time\" content=\"2021-05-14T14:49:15+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-05-14T14:51:49+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-1024x768.jpeg\" \/>\n<meta name=\"author\" content=\"Administrador de la red\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Administrador de la red\" \/>\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\\\/midi-con-arduino\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/\"},\"author\":{\"name\":\"Administrador de la red\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#\\\/schema\\\/person\\\/bdc38fea664f13638d2a51f4d2fc7211\"},\"headline\":\"MIDI con Arduino\",\"datePublished\":\"2021-05-14T14:49:15+00:00\",\"dateModified\":\"2021-05-14T14:51:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/\"},\"wordCount\":484,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/05\\\/midi_arduino-1024x768.jpeg\",\"articleSection\":[\"Proyectos\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/\",\"name\":\"MIDI con Arduino - Proyectos con Arduino.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/05\\\/midi_arduino-1024x768.jpeg\",\"datePublished\":\"2021-05-14T14:49:15+00:00\",\"dateModified\":\"2021-05-14T14:51:49+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/05\\\/midi_arduino-1024x768.jpeg\",\"contentUrl\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/wp-content\\\/uploads\\\/sites\\\/8\\\/2021\\\/05\\\/midi_arduino-1024x768.jpeg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/midi-con-arduino\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"MIDI con Arduino\"}]},{\"@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\\\/bdc38fea664f13638d2a51f4d2fc7211\",\"name\":\"Administrador de la red\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g\",\"caption\":\"Administrador de la red\"},\"sameAs\":[\"https:\\\/\\\/blogs.etsii.urjc.es\"],\"url\":\"https:\\\/\\\/blogs.etsii.urjc.es\\\/dseytr\\\/author\\\/etsiiadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"MIDI con Arduino - 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\/midi-con-arduino\/","og_locale":"es_ES","og_type":"article","og_title":"MIDI con Arduino - Proyectos con Arduino.","og_description":"Miembros del Equipo (Grupo 8) Antonio Cao Belinch\u00f3n Aaron Tejedor Llorente Jiarong Tang Introduccion Este proyecto tiene la intenci\u00f3n de realizar un dispositivo capaz de procesar la interfaz de audio MIDI (Musical Instrument Digital&#46;&#46;&#46;","og_url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/","og_site_name":"Proyectos con Arduino.","article_published_time":"2021-05-14T14:49:15+00:00","article_modified_time":"2021-05-14T14:51:49+00:00","og_image":[{"url":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-1024x768.jpeg","type":"","width":"","height":""}],"author":"Administrador de la red","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Administrador de la red","Tiempo de lectura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/#article","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/"},"author":{"name":"Administrador de la red","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#\/schema\/person\/bdc38fea664f13638d2a51f4d2fc7211"},"headline":"MIDI con Arduino","datePublished":"2021-05-14T14:49:15+00:00","dateModified":"2021-05-14T14:51:49+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/"},"wordCount":484,"commentCount":0,"publisher":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#organization"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-1024x768.jpeg","articleSection":["Proyectos"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/","url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/","name":"MIDI con Arduino - Proyectos con Arduino.","isPartOf":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/#primaryimage"},"image":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-1024x768.jpeg","datePublished":"2021-05-14T14:49:15+00:00","dateModified":"2021-05-14T14:51:49+00:00","breadcrumb":{"@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/#primaryimage","url":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-1024x768.jpeg","contentUrl":"https:\/\/blogs.etsii.urjc.es\/wp-content\/uploads\/sites\/8\/2021\/05\/midi_arduino-1024x768.jpeg"},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.etsii.urjc.es\/dseytr\/midi-con-arduino\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/blogs.etsii.urjc.es\/dseytr\/"},{"@type":"ListItem","position":2,"name":"MIDI con Arduino"}]},{"@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\/bdc38fea664f13638d2a51f4d2fc7211","name":"Administrador de la red","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e8e366128f81a82735b0b00fe6d280414b4bad087e380fa9fee9694454b8a6fa?s=96&d=mm&r=g","caption":"Administrador de la red"},"sameAs":["https:\/\/blogs.etsii.urjc.es"],"url":"https:\/\/blogs.etsii.urjc.es\/dseytr\/author\/etsiiadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/3910","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\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/comments?post=3910"}],"version-history":[{"count":4,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/3910\/revisions"}],"predecessor-version":[{"id":3917,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/posts\/3910\/revisions\/3917"}],"wp:attachment":[{"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/media?parent=3910"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/categories?post=3910"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.etsii.urjc.es\/dseytr\/wp-json\/wp\/v2\/tags?post=3910"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}