{"id":983,"date":"2021-12-19T15:43:48","date_gmt":"2021-12-19T15:43:48","guid":{"rendered":"https:\/\/asgardius.company\/?p=983"},"modified":"2023-12-31T15:44:27","modified_gmt":"2023-12-31T15:44:27","slug":"como-utilizar-el-puerto-serie-de-raspberry-pi-para-controlar-otros-dispositivos","status":"publish","type":"post","link":"https:\/\/asgardius.company\/?p=983","title":{"rendered":"C\u00f3mo utilizar el puerto serie de Raspberry Pi para controlar otros dispositivos"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/asgardius.company\/wp-content\/uploads\/2022\/06\/IMG_20211218_175619-1024x768.jpg\" alt=\"\"\/><figcaption class=\"wp-element-caption\">Raspberry Pi 3B+ con el puerto serie en uso<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">En ocasiones puede llegar a ser necesario conectarnos a la consola serie de alg\u00fan microcontrolador y no tenemos un cable USB-TTL, pero si una placa Raspberry Pi<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Requisitos<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Placa Raspberry Pi (cualquier modelo nos sirve)<\/li>\n\n\n\n<li>Cables Dupont para conectar la Raspberry Pi con el microcontrolador a depurar<\/li>\n\n\n\n<li>Teclado y monitor para la Raspberry Pi (podemos conectarnos mediante SSH en su lugar)<\/li>\n\n\n\n<li>Un microcontrolador compatible con UART (utilizar\u00e9 una segunda Raspberry Pi como ejemplo)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Para poder utilizar el puerto serie en Raspberry Pi es necesario editar el archivo de configuraci\u00f3n del firmware (config.txt en la primera partici\u00f3n) y agregar la siguiente l\u00ednea al final<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>enable_uart=1<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Quedar\u00e1 algo similar a esto<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/asgardius.company\/wp-content\/uploads\/2021\/12\/Captura-de-pantalla_2021-12-18_17-40-41.png\" alt=\"\" class=\"wp-image-971\"\/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Abrimos el archivo de configuraci\u00f3n cmdline.txt y retiramos la siguiente cadena de texto para tener disponible el puerto serie (si no est\u00e1 presente no necesitamos hacer nada)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>console=serial0,115200<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Conectamos la terminal RXD del microcontrolador a depurar a la terminal TXD del conector GPIO (pin 8), la terminal TXD a la terminal RXD del conector (pin 10) y la terminal de tierra a cualquiera de las terminales de tierra del conector GPIO (yo lo conect\u00e9 al pin 6)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Instalamos el programa Screen en la Raspberry Pi<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt install screen<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Nos aseguramos de estar dentro del grupo dialout con el siguiente comando<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>id<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Nos conectamos la la consola serie del dispositivo cambiando 115200 por la velocidad requerida por el microcontrolador a depurar<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>screen \/dev\/ttyS0 115200<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Encendemos el dispositivo a depurar y una vez que terminemos de utilizar la consola presionamos la combinaci\u00f3n de teclas Control + A y despu\u00e9s Control + D para salir y escribimos el siguiente comando para cerrar la consola que acabamos de desacoplar (esto cerrar\u00e1 todas las instancias de Screen que tengamos abiertas en ese momento)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>killall screen<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Referencias<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/pinout.xyz\/\">https:\/\/pinout.xyz\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En ocasiones puede llegar a ser necesario conectarnos a la consola serie de alg\u00fan microcontrolador y no tenemos un cable USB-TTL, pero si una placa Raspberry Pi Requisitos Para poder utilizar el puerto serie en Raspberry Pi es necesario editar el archivo de configuraci\u00f3n del firmware (config.txt en la primera partici\u00f3n) y agregar la siguiente&hellip; <a class=\"more-link\" href=\"https:\/\/asgardius.company\/?p=983\">Seguir leyendo <span class=\"screen-reader-text\">C\u00f3mo utilizar el puerto serie de Raspberry Pi para controlar otros dispositivos<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-983","post","type-post","status-publish","format-standard","hentry","category-uncategorized","entry"],"_links":{"self":[{"href":"https:\/\/asgardius.company\/index.php?rest_route=\/wp\/v2\/posts\/983","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/asgardius.company\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/asgardius.company\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/asgardius.company\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/asgardius.company\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=983"}],"version-history":[{"count":1,"href":"https:\/\/asgardius.company\/index.php?rest_route=\/wp\/v2\/posts\/983\/revisions"}],"predecessor-version":[{"id":1761,"href":"https:\/\/asgardius.company\/index.php?rest_route=\/wp\/v2\/posts\/983\/revisions\/1761"}],"wp:attachment":[{"href":"https:\/\/asgardius.company\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=983"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/asgardius.company\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=983"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/asgardius.company\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=983"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}