Tabla de contenido:
- Suministros
- Paso 1: crear un nuevo proyecto
- Paso 2: configurar el procesador
- Paso 3: configurar los relojes
- Paso 4: guardar y compilar
- Paso 5: Agregar código
- Paso 6: Conexión del hardware
- Paso 7: depuración
- Paso 8: hacer más
Video: Configuración del tablero de pastillas azul en STM32CubeIDE: 8 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:41
La Blue Pill es una placa de desarrollo ARM básica muy barata. Tiene un STM32F103C8 como procesador que tiene 64 kbytes de memoria flash y 20 kbytes de memoria RAM. Funciona hasta 72 MHz y es la forma más económica de entrar en el desarrollo de software integrado ARM.
La mayoría de los proyectos de ejemplo y cómo se describen la programación del tablero Blue Pill utilizando el entorno Auduino. Si bien esto funciona y es una forma de comenzar, tiene sus limitaciones. El entorno Arduino lo protege un poco del hardware subyacente, ese es su objetivo de diseño. Debido a esto, no podrá aprovechar todas las funciones que ofrece el procesador, y la integración de un sistema operativo en tiempo real no es realmente compatible. Esto significa que el entorno Arduino no se utiliza mucho en la industria. Si desea hacer una carrera en el desarrollo de software integrado, Arduino es un buen punto de partida, pero debe seguir adelante y utilizar un entorno de desarrollo que se utilice industrialmente. ST proporciona un paquete de entorno de desarrollo completamente gratuito para sus procesadores llamado STM32CubeIDE. Esto se usa ampliamente en la industria, por lo que es bueno seguir adelante.
Sin embargo, y este es el gran problema, STM32CubeIDE es tremendamente complicado y es una pieza de software desalentadora de usar. Es compatible con todas las funciones de todos los procesadores de ST y les permite configurarse íntimamente, lo que no se encuentra en el IDE de Arduino porque todo está hecho por usted.
Debe configurar su placa como primer paso en STM32CubeIDE. El IDE conoce las placas de desarrollo propias de ST y las configura para usted, pero la Blue Pill, mientras usa un procesador ST, no es un producto ST, por lo que está solo aquí.
Este instructivo lo lleva a través del proceso de configuración de su tablero Blue Pill, habilitando un puerto serial y escribiendo algo de texto. No es mucho, pero es un primer paso importante.
Suministros
STM32CubeIDE: descárguelo del sitio web de ST. Necesitas registrarte y la descarga lleva un tiempo.
Un tablero de píldora azul. Puedes conseguirlos en ebay. Necesita uno que tenga un procesador ST genuino, ya que algunos no lo hacen. En ebay amplíe la imagen y busque el logo ST en el procesador.
Un depurador / programador ST-LINK v2 disponible en ebay por unas pocas libras.
Un cable serial FTDI TTL a USB 3.3V para salida y 2 cables de encabezado macho a hembra para conectarlo.
Un programa de terminal en serie como PuTTY.
Paso 1: crear un nuevo proyecto
- Inicie STM32CubeIDE y luego en el menú seleccione Archivo | Nuevo | Proyecto STM32.
- En el cuadro de búsqueda de número de pieza, ingrese STM32F103C8.
- En la lista de MCU / MPU debería ver STM32F103C8. Seleccione esta línea como en la imagen de arriba.
- Haga clic en Siguiente.
- En el cuadro de diálogo Configuración del proyecto, déle un nombre al proyecto.
- Deje todo lo demás como está y haga clic en Finalizar. Su proyecto aparecerá a la izquierda en el panel Explorador de proyectos.
Paso 2: configurar el procesador
- En el panel Explorador de proyectos, abra su proyecto y haga doble clic en el archivo.ioc.
- En la pestaña Proyecto y configuración, expanda Núcleo del sistema y luego seleccione SYS.
- En SYS Mode and Configuration en el menú desplegable Debug, elija Serial Wire.
- Ahora seleccione RCC en la lista System Core justo encima de SYS que seleccionó anteriormente.
- En Modo y configuración de RCC del menú desplegable Reloj de alta velocidad (HSE), seleccione Resonador de cristal / cerámica.
- Ahora, en Categorías nuevamente, abra Conectividad y seleccione USART2.
- En Modo y configuración de USART2 en el menú desplegable Modo, seleccione Asíncrono.
- Ahora seleccione la pestaña Configuración del reloj y vaya al siguiente paso.
Paso 3: configurar los relojes
Ahora puede ver un diagrama de reloj bastante desalentador, pero solo necesita configurarlo una vez. Esto es lo más difícil de describir aquí ya que el diagrama es complejo. Todas las cosas que necesita cambiar están resaltadas en la imagen de arriba.
- La placa Blue Pill viene con un cristal de 8 MHz en la placa y ese es el valor predeterminado del diagrama de configuración del reloj, por lo que no es necesario cambiar eso.
- En PLL Source Mux, seleccione la opción más baja, HSE.
- Justo a la derecha, establezca PLLMul en X9.
- De nuevo a la derecha, debajo de System Clock Mux, seleccione PLLCLK.
- A la derecha de nuevo bajo APB1 Prescalar seleccione / 2.
- Eso es todo. Si ve alguna parte del diagrama resaltada en violeta, ha hecho algo mal.
Paso 4: guardar y compilar
- Guarde la configuración.ioc con Ctrl-S. Cuando se le pregunte si desea generar código, seleccione Sí (y marque Recordar mi decisión para que no se le pregunte todo el tiempo). Puede cerrar el archivo.ioc.
- Ahora haga una compilación desde el menú Proyecto | Generar proyecto.
Paso 5: Agregar código
Ahora agregaremos un código para usar el puerto serie que configuramos.
- En el Explorador de proyectos, abra Core / Src y haga doble clic en main.c para editarlo.
- Desplácese hacia abajo hasta encontrar la función main () y agregue el código que se muestra a continuación justo debajo del comentario / * USER CODE BEGIN 3 * / luego haga una compilación nuevamente.
HAL_UART_Transmit (& huart2, (uint8_t *) "¡Hola, mundo! / R / n", 15U, 100U);
A continuación, conecte el hardware y pruébelo.
Paso 6: Conexión del hardware
Conexión del ST-LINK v2
El ST-LINK v2 debería haber venido con un cable plano de encabezado hembra a hembra de 4 hilos. Debe realizar las siguientes conexiones:
Pastilla azul a ST-LINK v2
GND a GND
CLK a SWCLK
DIO a SWDIO
3.3 hasta 3.3V
Vea la primera imagen de arriba.
Conexión del cable serial
Si vuelve al archivo.ioc y mira el diagrama de chip a la derecha, verá que la línea Tx de UART2 está en el pin PA2. Por lo tanto, conecte el pin etiquetado PA2 en el tablero Blue Pill a la conexión con el cable amarillo en el cable serial FTDI. También conecte uno de los pines de tierra de Blue Pill (etiquetado G) al cable negro en el cable serial FTDI.
Vea la segunda imagen de arriba.
Paso 7: depuración
Conecte su cable serial FTDI y encienda un terminal serial a 115200 baudios. Luego, conecte su ST-LINK v2 y estará listo para comenzar.
- Desde STM32CubeIDE, elija Ejecutar | Depurar. Cuando aparezca un cuadro de diálogo Depurar como, elija Aplicación STM32 Cortex-M C / C ++ y Aceptar.
- Cuando aparezca un cuadro de diálogo Editar configuración, simplemente presione Aceptar.
- El depurador se interrumpirá en la primera línea de main (). En el menú, elija Ejecutar | Reanudar y compruebe si hay mensajes en el terminal serie.
Paso 8: hacer más
Eso es todo, su primera aplicación STM32CubeIDE está configurada y en ejecución. Este ejemplo no hace mucho, solo envía algunos datos desde el puerto serie.
Para usar otros periféricos y escribir controladores para dispositivos externos, ¡debe abordar ese desalentador editor de configuración nuevamente! Para ayudar, he producido una serie de proyectos de ejemplo STM32CubeIDE que configuran y ejercitan todos los periféricos en el procesador de Blue Pill en pequeños proyectos fáciles de entender. Todos son de código abierto y puedes hacer lo que quieras con ellos. Cada periférico está configurado y luego tiene un código de muestra para ejercitarlo de forma aislada (¡casi!) Para que pueda concentrarse en poner en funcionamiento solo un periférico a la vez.
También hay controladores para dispositivos externos desde simples chips EEPROM hasta sensores de presión, LCD de texto y gráficos, módem SIM800 para TCP, HTTP y MQTT, teclados, módulos de radio, USB y también integración con FatFS, tarjetas SD y FreeRTOS.
Todos se pueden encontrar en Github aquí …
github.com/miniwinwm/BluePillDemo
Recomendado:
Interruptor creativo LED del tablero de pruebas del escudo del Capitán América: 5 pasos
Capitán América Shield Breadboard LED Creative Switch: Proyecto Creative Switch para Art 150
Tablero MXY - Tablero de robot de dibujo de trazador XY de bajo presupuesto: 8 pasos (con imágenes)
Tablero MXY - Tablero de robot de dibujo de plotter XY de bajo presupuesto: Mi objetivo era diseñar el tablero mXY para hacer que la máquina de dibujo del plotter XY sea de bajo presupuesto. Así que diseñé una placa que se lo pone más fácil a quienes quieran realizar este proyecto. En el proyecto anterior, mientras usaba 2 motores paso a paso Nema17, esta placa u
Temporizador NE555 - Configuración del temporizador NE555 en una configuración estable: 7 pasos
Temporizador NE555 | Configuración del temporizador NE555 en una configuración estable: El temporizador NE555 es uno de los circuitos integrados más utilizados en el mundo de la electrónica. Tiene la forma de DIP 8, lo que significa que cuenta con 8 pines
Configuración de bits de fusibles del microcontrolador AVR. Creación y carga en la memoria flash del microcontrolador el programa de parpadeo de LED: 5 pasos
Configuración de bits de fusibles del microcontrolador AVR. Creando y cargando en la memoria flash del microcontrolador el programa de parpadeo de LED: en este caso crearemos un programa simple en código C y lo grabaremos en la memoria del microcontrolador. Escribiremos nuestro propio programa y compilaremos el archivo hexadecimal, utilizando Atmel Studio como plataforma de desarrollo integrada. Configuraremos fuse bi
Tablero de luces o tablero de vidrio para bricolaje: 4 pasos
Tablero de luces o tablero de vidrio para bricolaje: se están produciendo muchas innovaciones en el sector de la educación. Enseñar y aprender a través de Internet es ahora algo cotidiano. La mayoría de las veces, los tutores en línea tienden a centrarse más en el contenido técnico, dejando a los espectadores desinteresados. Aprendizaje 3D