Al momento de programar una placa Arduino que no incluya un chip FTDI (Arduino Pro Mini, Flora, Arduino Mini Light 05, etc.) debemos utilizar un Adaptador USB - UART TTL para programar la placa. Si bien existen muchos adaptadores en el mercado, existe un modelo en particular que se destaca por ser mucho mas económico que los otros y utiliza el chip CP2102 fabricado por Silicon Labs .
La placa del Adaptador USB - UART TTL se observa en la siguiente imagen:
Lamentablemente, este adaptador no funciona correctamente en forma directa, sino que debemos realizar una pequeña modificación en la placa para poder utilizarlo.
El problema es el siguiente, la característica de reinicio automático, que reinicia la placa Arduino luego de cargado el programa, no funciona. Esto se debe a que el pin de "Reset" (RST) del adaptador no corresponde verdaderamente a la señal de "Reset", sino que es un pin de entrada, es decir, se utiliza para reiniciar el chip CP2102, pero no es la señal de "Reset" que necesitamos para reiniciar nuestra placa. La señal de reinicio que necesita nuestra placa Arduino corresponde a un pad en la placa del adaptador rotulado "DTR" como se observa en la siguiente imagen:
CP2102 Datasheet
Por lo tanto, deberemos soldar un pin para así tener disponible la señal que necesitamos. En este caso he utilizado un cabezal macho de 1 X 4 pines (2.54mm) como se observa en la siguiente imagen:
La conexión del adaptador a la placa Arduino Pro Mini es la siguiente:
CP2102 USB UART TTL --> Arduino Pro Mini
GND --> GND
RXD --> RXI
TXD --> TX0
DTR --> DTR
3.3V o 5V --> VCC
CP2102 Driver
Finalmente, en el IDE de Arduino seleccionamos la placa y el puerto serie correspondiente, luego cargamos un sketch de prueba, como "Blink", para verificar el correcto funcionamiento.