Tabla de contenido:

Programación STM32 "Blue Pill" a través de Arduino IDE y USB: 8 pasos
Programación STM32 "Blue Pill" a través de Arduino IDE y USB: 8 pasos

Video: Programación STM32 "Blue Pill" a través de Arduino IDE y USB: 8 pasos

Video: Programación STM32
Video: Primeros pasos con Bluepill STM32 en Arduino IDE 2024, Noviembre
Anonim
STM32
STM32

Al comparar la placa prototipo genérica STM32F (es decir, Blue Pill) con su contraparte Arduino, es fácil ver cuántos más recursos tiene, lo que abre muchas nuevas oportunidades para proyectos IOT.

Las desventajas son la falta de apoyo. En realidad, no es realmente una falta de soporte, pero está demasiado extendido en muchos foros, blogs y otras páginas. Muchos están desactualizados.

Describiré mis experiencias para obtener una de esas placas no solo configuradas por Arduino IDE sino también a través del conector USB integrado.

También mostraré cómo cargar Bootloader usando ST-Link V2.

Paso 1: Partes:

Partes
Partes
Partes
Partes

Necesitarás algunas piezas:

  1. Lo primero que necesitará es, por supuesto, una placa prototipo ST32F103. "Blue Pill" es la forma en que se conoce, y puede comprarlo a un precio asequible en muchas tiendas de comercio electrónico.
  2. Un módulo ST-Link V2
  3. Tablero de pan y cables de salto

Paso 2: Software que necesitará:

Software que necesitará
Software que necesitará
Software que necesitará
Software que necesitará
Software que necesitará
Software que necesitará
  1. En primer lugar, Arduino IDE. Si aún no lo descargó, este es el enlace: https://www.arduino.cc/en/Main/Software. Probé este instructable con la versión 1.8.11, 1.8.12 y la versión de la aplicación, que funcionan solo para Windows 8 y 10. No cubriré esta instalación de software, una vez que haya mucha información sobre cómo hacerlo.
  2. Desde el sitio de STM necesitará el siguiente software. Es necesario crear una cuenta:

    1. Controlador de Windows ST-Link V2:
    2. Utilidad STM32-Link (https://my.st.com/content/my_st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/stsw-link004.html).
  3. Entonces es el momento de descargar el cargador de arranque. Esto es lo que permitirá que Blue Pill se conecte al USB de la computadora. Este es el enlace a esto:

Tenga en cuenta que también necesitará agregar placas a Arduino IDE. Explicaré en detalle cómo hacer esto.

Paso 3: Tablero prototipo genérico STM32F103, la píldora azul

Tablero de prototipo genérico STM32F103, la píldora azul
Tablero de prototipo genérico STM32F103, la píldora azul
Tablero de prototipo genérico STM32F103, la píldora azul
Tablero de prototipo genérico STM32F103, la píldora azul
Tablero de prototipo genérico STM32F103, la píldora azul
Tablero de prototipo genérico STM32F103, la píldora azul

Ahora una breve explicación sobre la placa prototipo STM32F103, conocida por "Blue Pill".

Este es un hardware de código abierto, se parece a Arduino Nano (tamaño casi similar). Puede encontrar muchos fabricantes diferentes, pero siguen el esquema muy de cerca, incluso los problemas.

Puede preguntar: Si se parece a Arduino Nano, ¿por qué debería cambiarme de hardware?

La respuesta es simple. Como ya dije, si su proyecto necesita un controlador Micro Faster, con más GPIO (33 en total), más y / o entradas ADC precisas (10 entradas x 12 Bits de resolución), más salidas analógicas (15), más interfaces de comunicaciones, etc.; este es el microcontrolador que puede necesitar.

Arriba está el pin out y el diagrama esquemático.

Ahora, algunos consejos:

  1. Este es un microcontrolador 3V3. A pesar de que algunos pines son resistentes a 5V, sugiero mantener los accesorios en un nivel alto en 3V3, de lo contrario, puede freír Blue Pill.
  2. El PA11 y PA12 de Pin no están disponibles, una vez que son responsables de la comunicación USB.
  3. Hablando de USB, encontrará muchos sitios y blogs que informan que Blue Pill tiene un valor de resistencia de pull up incorrecto en sus puertos. Según entonces, en general son 10KΩ en lugar de 4, 7KΩ. Esto puede causar problemas de conexión USB. Para ser honesto, tengo 3 placas y nunca tuve problemas para conectar ninguna de ellas en ninguna computadora portátil. Por lo tanto, recomendaría trabajar en él si realmente tiene problemas para conectar el USB a su computadora. Más tarde encontré un dibujo de circuito donde este valor de resistencia era de hecho 10KΩ. Vaya a la figura…. La solución es soldar una resistencia de 1.5KΩ o 1.8KΩ entre el pin PA12 y 5V vcc.
  4. También es posible observar de cerca el diagrama para ver que no hay protección entre las líneas de alimentación de 5 V y el USB de 5 V. TENGA CUIDADO O SOLO evite el uso de múltiples fuentes de alimentación. Puede freír el puerto USB de su computadora, si tal vez usa una fuente de alimentación externa de 5V mientras la placa está conectada al USB.

Paso 4: Adaptador USB ST LINK V2

Adaptador USB ST LINK V2
Adaptador USB ST LINK V2
Adaptador USB ST LINK V2
Adaptador USB ST LINK V2
Adaptador USB ST LINK V2
Adaptador USB ST LINK V2
Adaptador USB ST LINK V2
Adaptador USB ST LINK V2

ST LINK V2 es un adaptador USB a SWD, diseñado para tareas de depuración y programación.

Si tiene la intención de trabajar con el chip STM32 de manera seria, necesitará esta herramienta. Le permite comunicarse con el chip directamente a través del conector de cabezal SWB.

Hay muchos blogs y sitios con instrucciones sobre cómo cargar usando el adaptador USB a TTL, pero no pude encontrar ninguno usando esta herramienta para cargar el cargador de arranque.

Esto también permite programar Blue Pill con el cargador de arranque original usando el software STM32Cube Programmer (tal vez cree un instructable para esto en el futuro).

Para instalar la unidad de Windows, siga estos pasos:

  1. Descomprimir el archivo descargado
  2. Ejecute "stlink_winusb_install.bat como administrador
  3. Presione la tecla después de que termine.
  4. Conecte ST-Link V2 a cualquier computadora USB disponible.

Recuerde: Esto instalará un dispositivo USB, NO un puerto de comunicaciones.

Paso 5: Es hora de comenzar el trabajo real: carga del cargador de arranque STM32Duino

Es hora de comenzar el trabajo real: carga del cargador de arranque STM32Duino
Es hora de comenzar el trabajo real: carga del cargador de arranque STM32Duino
Es hora de comenzar el trabajo real: carga del cargador de arranque STM32Duino
Es hora de comenzar el trabajo real: carga del cargador de arranque STM32Duino

Lo primero es lo primero: conecte ST-Link a Blue Pill. Esto es muy simple, una vez que el pin de ST está etiquetado sobre su caja.

Conector SWD de pastilla azul ST-Link

pin2- SWDIO pin2- SWIO (o IO en algunas placas)

pin3- GND pin4- GND

pin6- SWCLKpin3- SWCLK (o simplemente CLK)

pin7- 3.3V pin1- 3V3

El pin out de ST-Link V2 tiene una etiqueta transparente sobre su cuerpo.

Ejecute el software "STM32 ST-Link Utility" (es posible que ya lo haya instalado en su computadora).

Tan pronto como se cargue el software, recuperará todos los datos en la memoria Boot0. De lo contrario, haga clic en "Conectar al dispositivo", el enchufe de salida con un icono de perno. También recuperará mucha información del chip STM32.

cargar archivo binario es muy simple:

  1. Mueva el puente "Boot0" a la posición "1"
  2. Haga clic en "Binario"
  3. Seleccione el archivo del cargador de arranque (.bin)
  4. En el menú, haga clic en "Destino" y "Programa".

Esto permitirá cargar Boot0 con un nuevo cargador de arranque.

  1. Regrese el puente "Boot0" a la posición "0"
  2. Presione el botón de reinicio.

ATENCIÓN: Ya no necesitará mover el puente Boot0 a la posición "1" para cargar programas creados en Arduino IDE.

Paso 6: Hora de negociar con Arduino IDE

Hora de negociar con Arduino IDE
Hora de negociar con Arduino IDE

Es posible que haya notado que después de cargar "generic_boot20_pc13.bin" su puerto USB Blue Pill será reconocido por el Administrador de dispositivos de la computadora como "Maple Serial (COMx)".

Para preparar su Arduino IDE para negociar con STM32, siga los pasos a continuación:

Paso 7: Hora de negociar con Arduino IDE

Hora de negociar con Arduino IDE
Hora de negociar con Arduino IDE
Hora de negociar con Arduino IDE
Hora de negociar con Arduino IDE
Hora de negociar con Arduino IDE
Hora de negociar con Arduino IDE

Ahora puede que haya notado que, al conectar su puerto USB a su computadora, se reconocerá como "Maple Serial (COMx)".

Ahora, preparemos Arduino IDE para la programación STM32. Abra Arduino IDE, si aún no lo abrió:

  1. Vaya al menú Archivo y seleccione "Preferencias". Esto abrirá la ventana de Preferencias.
  2. Haga clic en el icono de doble cuadrado cerca del cuadro de texto "URL del administrador de tableros adicionales".
  3. Dentro del cuadro de texto, copie y pegue los enlaces siguientes, uno en cada línea: https://dan.drown.org/stm32duino/package_STM32duino_index.jsonhttps://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json Necesita ambos tableros en esos enlaces.
  4. Ahora vaya al menú "Herramientas" y seleccione "Administrador de la Junta". Esto abrirá la ventana "Board Manager".
  5. Asegúrese de que "Todo" esté seleccionado en "Tipo" y en el cuadro de texto escriba "STM32F1"
  6. Instalar ambas opciones aparecen.

Paso 8: El "Gran Final"

los
los

Ahora, puede escribir su código y compilarlo.

Conecte su "Blue Pill" y configure las configuraciones como se muestra en la imagen. Asegúrese de seleccionar el puerto correcto.

Entonces, ahora está listo para cargar el código en "Blue Pill".

¡Espero que te sirva de ayuda!

Recomendado: