STM32F103C8T6

Página en construcción.

Ves a esta web externa para completa información (aquí falta por completar los pasos):

https://www.youtube.com/watch?v=W71M9PR3tpE

https://www.youtube.com/watch?v=mdxmfjVhEus

Este tutorial explica cómo meter los programas a este microcontrolador desde el IDE de Arduino y directamente por el USB, sin necesidad de mover "jumpers" ni pulsar reset, al igual que hacemos con los microcontroladores más convencionales (UNO, nano, Mega, etc).

El STM32F103C8T6 tiene unas características que supera a los arduinos tradicionales tipo Atmel. Pasamos de una velocidad de ejecución de 16 MHz a 72 MHz y de 8 bits a 32 bits; esto sin contar que los ADC y los PWM también lo supera en resolución, y tiene 30 patillas útiles (32 contando las de USB), todo esto a un precio menor de 3 dólares. Debido a que sólo lleva unos pocos años en el mercado y al lento desarrollo para adaptarlo al IDE de Arduino, es poco conocido.

Pongo una imagen para que te vayas familiarizando con el STM32F103 ó también llamado "Blue pill". Observa que tiene patillas que sólo funcionan a 3,3 voltios y otras que son tolerantes a 5 voltios (esto significa que puede trabajar con ambas tensiones de entrada de dato a ese pin, 3,3 y 5 voltios), lo cual lo hace muy útil para poder utilizar periféricos que funcionan a 3,3 (evitando conversores de tensión) y que con el paso del tiempo se está convirtiendo en una tensión de funcionamiento cada vez más estándar.

Antes de comenzar, comentar que doy por hecho que además de estar familiarizado con el IDE de Arduino, tienes instalado la última versión (a día de hoy es la 1.8.5), y posees un conversor USB-Serial con el driver correspondiente instalado (en muchos casos el propio Windows lo reconoce).

Descarga el driver STM32, desde esta web: https://github.com/rogerclarkmelbourne/Arduino_STM32

Cuando estés en esa web pulsa con el ratón el botón verde que pone: " Clone or download ". Una vez descargado, descomprímelo en tu escritorio extrayendo la carpeta "Arduino_STM32-master". Ahora ves a esta carpeta que está en "Documentos" llamada "Arduino" allí verás otra que se llama "libraries", pues has de crear una nueva carpeta y se ha de llamar "hardware". Por si no me explico bien pongo una imagen.

Donde pone "Democrito", en tu caso saldrá tu nombre de usuario.

Ahora ves hasta la carpeta (...) hardware ----> Arduino_STM32 ----> drivers ----> win Tal como se aprecia en esta imagen.

Donde pone "Democrito", en tu caso saldrá tu nombre de usuario.

Y ejecutas el archivo "install_drivers.bat" en modo "Ejecutar como administrador" con el botón derecho del ratón. Se instalará los drivers y esta parte ya está.

Ha llegado el momento de meter el bootloader dentro del STM32 y para ello hemos de conectar el USB-Serial al microcontrolador de la siguiente manera.

El "jumper" que está más cerca de las patillas externas y que he coloreado de rojo hay que ponerlo a 1, quedando como ves en la imagen. Una vez conectado todo y con el "jumper" del "Boot" puesto a 1, pulsa el reset. Ya lo tenemos preparado para el siguiente paso.

Ahora ves a esta web:

https://github.com/rogerclarkmelbourne/STM32duino-bootloader/blob/master/bootloader_only_binaries/generic_boot20_pc13.bin

y le das a "Download". Si tienes algún problema para descargar ese fichero, haz clic aquí, pero piensa que en esa web siempre estará más actualizado. Se trata de un archivo de extensión ".bin" que es lo que se añadirá a la flash del microcontrolador para funcionar como bootloader, es decir, el intermediario que cargará tu programa Arduino dentro de él.

El siguiente paso es meter ese archivo ".bin" dentro del STM32 a través de un pequeño programa. Has de ir a esta web:

http://www.st.com/en/development-tools/flasher-stm32.html

Ves hasta casi el final de la página, a la derecha y pulsar en "Get Software" en azul. Es necesario registrase, pero son datos que se rellenan rápido y no es necesario que pongas tu nombre real, lo importante es la dirección de correo, porque ahí nos aparecerá el enlace para la descarga. Si tienes problemas, haz clic aquí.

[pendiente de poner imágenes de este proceso]

[al finalizar este proceso hay que volver a poner el jumper que hemos movido en su lugar] (...) Hecha esta parte has de volver a colocar el jumper a cero, quedando los dos jumper en dirección al microusb.

Poner una resistencia de 1K8 entre 3,3V y la patilla A12.

(continuará.) Pendiente de describir el proceso de carga, volver a pulsar reset por si acaso y poco más.

Ahora vamos a configurar el IDE del Arduino para poder trabajar con el STM32.

(poner imágenes del proceso.)

He resumido todo el proceso. Pero si quieres verlo en vídeo y con todo lujo de detalles, este autor lo explica muy bien. Incluye la instalación del IDE de Arduino. Hay una parte en la que hace la instalación del convertidor Serial-USB y utiliza el PL2303 series pero puede ser cualquier convertidor USB-Serial y normalmente el propio Windows te instala el driver automáticamente (si es así te puedes saltar este paso).

Otro vídeo.