{"id":3950,"date":"2016-05-26T10:28:57","date_gmt":"2016-05-26T09:28:57","guid":{"rendered":"http:\/\/bitacora.eniac2000.com\/?p=3950"},"modified":"2016-05-26T10:28:57","modified_gmt":"2016-05-26T09:28:57","slug":"comunicacion-serie-con-dispositivos-attiny-mediante-tinydebugserial","status":"publish","type":"post","link":"https:\/\/bitacora.eniac2000.com\/?p=3950","title":{"rendered":"Comunicaci\u00f3n serie con dispositivos ATtiny mediante TinyDebugSerial"},"content":{"rendered":"<p>Una de las dificultades a las que hay que enfrentarse a la hora de trabajar con dispositivos ATtiny (84\/85, etc&#8230;) es la carencia de un dispositivo de comunicaci\u00f3n serie, como se tiene con los Arduinos convencionales. Esto lleva a que sea dif\u00edcil en ocasiones realizar tareas de diagn\u00f3stico de errores y resoluci\u00f3n de problemas. Sin embargo, existe una (varias, en realidad) manera de comunicar mediante conexi\u00f3n serie con los ATtiny. La que yo he podido comprobar que funciona a la perfecci\u00f3n es el uso de un adaptador USB a TTL.<\/p>\n<p>Como requisitos previos para que esta soluci\u00f3n funcione podemos distinguir los siguientes:<\/p>\n<ul>\n<li>Utilizaci\u00f3n de los cores <a href=\"http:\/\/code.google.com\/p\/arduino-tiny\/\" target=\"_blank\">Arduino Tiny<\/a> (http:\/\/code.google.com\/p\/arduino-tiny\/)<\/li>\n<li>Uso de un adaptador USB-TTL. En mi caso, estoy haciendo uso del adaptador <a href=\"http:\/\/www.newegg.com\/Product\/Product.aspx?Item=9SIA2V51UK2558\" target=\"_blank\">SKU145351<\/a>, que se puede encontrar a un precio muy reducido por Ebay. El m\u00edo monta el chip <a href=\"https:\/\/www.silabs.com\/products\/mcu\/Pages\/USBtoUARTBridgeVCPDrivers.aspx\" target=\"_blank\">Silicon Labs CP2102<\/a>.<\/li>\n<\/ul>\n<p>Con estos componentes es posible hacer uso de comunicaci\u00f3n TinyDebugSerial. Esta opci\u00f3n s\u00f3lo permite la comunicaci\u00f3n TX, es decir, el env\u00edo de informaci\u00f3n serie desde el Attiny al PC, pero para labores de resoluci\u00f3n de errores es perfectamente v\u00e1lida.<\/p>\n<p>Un ejemplo de comunicaci\u00f3n b\u00e1sica ser\u00eda el siguiente:<\/p>\n<p><code>void setup() {<br \/>\nSerial.begin(9600);<br \/>\n}<\/p>\n<p>void loop() {<br \/>\nSerial.println(\"Testing..\");<br \/>\n}<\/code><\/p>\n<p>Las conexiones con los ATtiny se realizar\u00edan haciendo uso de los siguientes puertos:<\/p>\n<p>Attiny85: PIN PB3 (Pin f\u00edsico 2)<br \/>\nAttiny84: PIN PB0 (Pin f\u00edsico 2)<br \/>\nAttiny2313: PIN PD1<\/p>\n<p>&#8230;adem\u00e1s de los habituales puertos VCC y GND.<\/p>\n<figure id=\"attachment_3951\" aria-describedby=\"caption-attachment-3951\" style=\"width: 400px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2016\/05\/usb_serial.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2016\/05\/usb_serial-400x114.jpg\" alt=\"Conexi\u00f3n serie USB al ATiny\" title=\"Conexi\u00f3n serie USB al ATiny\" width=\"400\" height=\"114\" class=\"size-medium wp-image-3951\" \/><\/a><figcaption id=\"caption-attachment-3951\" class=\"wp-caption-text\">Conexi\u00f3n serie USB al ATiny<\/figcaption><\/figure>\n<p>N\u00f3tese que no hay diferencias en el c\u00f3digo con el que se cargar\u00eda en un Arduino convencional, y no se necesitan librer\u00edas a\u00f1adidas. Tambi\u00e9n es importante tener en cuenta que esta comunicaci\u00f3n ser\u00e1 v\u00e1lida para frecuencias de reloj de 8 MHz o inferiores.<\/p>\n<p><strong>Bibliograf\u00eda:<\/strong><br \/>\n<a href=\"http:\/\/www.ernstc.dk\/arduino\/tinycom.html\" target=\"_blank\">Serial communication with the Tiny&#8217;s<\/a><br \/>\n<a href=\"http:\/\/arduino-for-beginners.blogspot.ie\/2013\/04\/added-tinydebugserial-to-attiny85.html\" target=\"_blank\">Added TinyDebugSerial to attiny85 <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Una de las dificultades a las que hay que enfrentarse<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[13],"tags":[133,167,168,1519,1641,1669,1685],"series":[],"class_list":["post-3950","post","type-post","status-publish","format-standard","hentry","category-informatica","tag-arduino","tag-attiny84","tag-attiny85","tag-serial","tag-tinydebugserial","tag-ttl","tag-usb"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/3950","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3950"}],"version-history":[{"count":0,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/3950\/revisions"}],"wp:attachment":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3950"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3950"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3950"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fseries&post=3950"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}