Digitek
Member
Saludos.
He estado tratando de programar el STM32F103C8T6 con la tarjeta STM32F103Cx DEMO BOARD v2.1, sin éxito.
Seguí los pasos que se muestran aquí: How to Implement STM32 into B4R
Sin embargo, no se trata del mismo microcontrolador y el enlace de las tarjetas ya es obsoleto para Arduino.
De cualquier forma instalé el Core ahí recomendado y lo probé en Arduino, pero aunque compila sin errores el clásico "Blink", en la tarjeta no hace nada.
Cabe mencionar que en Arduino seleccioné todo lo requerido para mi tarjeta.
Aparte, después de grabar el código, termina dañando el Bootloader Maple, quedando como Maple DFU en el Administrador de dispositivos de Windows.
Motivo por el cual hay que volver a grabar el Bootloader con el STM32CubeProgrammer.
Bueno, como ese Core de tarjetas no funcionó, opté por cargar el siguiente: http://dan.drown.org/stm32duino/package_STM32duino_index.json
Con ese sí funciona el ejemplo "Blink" y supongo que con eso todo debe estar bien, digamos.
Al menos en Arduino funciona, pero en B4R no logro que funcione.
Al compilar me muestra el siguiente error:
En mi caso, dicha librería se encuentra en: C:\Users\Usuario\AppData\Local\Arduino15\packages\stm32duino\hardware\STM32F1\2021.5.31\cores\maple
El problema con B4R es que después de "corregido" ese error, el LED no hace nada y únicamente se llega a mostrar el Log de inicio "AppStart" una sola vez.
Todo lo demás no se ejecuta, ni siquiera llega a encender el LED del pin PC13.
Este pin declarado como LED_BUILTIN en Arduino, en B4R para esta tarjeta, viene siendo el 32
Esto lo supe desde el mismo arduino, con lo siguiente:
El resultado fue el siguiente:
Bien, ya obtenido el pin correcto para la tarjeta, paso a escribir un código simple en B4R, el cual adjunto.
Por más que he intentado, cambiando Bootloader por el HID, con otras descargas de tarjetas, y con la modificación, nada me hace destellar el LED.
Incluso he probado de uno por uno para ver si por ahí algún pin hacía el cambio de estado, pero nada.
Así que si no puedo tener acceso a los GPIO, pues nada de esto sirve. ?
Si alguien tiene resuelto este problema y guste compartirlo, le estaría bastante agradecido.
La verdad me encanta este entorno de programación y prefiero usarlo en lugar de Arduino, ya que B4R lo supera por mucho.
Gracias, y quedo al pendiente de sus preguntas y sabias respuestas.
He estado tratando de programar el STM32F103C8T6 con la tarjeta STM32F103Cx DEMO BOARD v2.1, sin éxito.
Seguí los pasos que se muestran aquí: How to Implement STM32 into B4R
Sin embargo, no se trata del mismo microcontrolador y el enlace de las tarjetas ya es obsoleto para Arduino.
De cualquier forma instalé el Core ahí recomendado y lo probé en Arduino, pero aunque compila sin errores el clásico "Blink", en la tarjeta no hace nada.
Cabe mencionar que en Arduino seleccioné todo lo requerido para mi tarjeta.
Aparte, después de grabar el código, termina dañando el Bootloader Maple, quedando como Maple DFU en el Administrador de dispositivos de Windows.
Motivo por el cual hay que volver a grabar el Bootloader con el STM32CubeProgrammer.
Bueno, como ese Core de tarjetas no funcionó, opté por cargar el siguiente: http://dan.drown.org/stm32duino/package_STM32duino_index.json
Con ese sí funciona el ejemplo "Blink" y supongo que con eso todo debe estar bien, digamos.
Al menos en Arduino funciona, pero en B4R no logro que funcione.
Al compilar me muestra el siguiente error:
OK. Buscando, encontré que la solución era reemplazar: "void pinMode(uint8 pin, WiringPinMode mode);" por: "void pinMode(uint8_t pin, uint8_t mode);", en la librería io.hB4RArduino.cpp:25:34: error: invalid conversion from 'Byte {aka unsigned char}' to 'WiringPinMode' [-fpermissive]
pinMode(PinNumber, arduino_Mode);
En mi caso, dicha librería se encuentra en: C:\Users\Usuario\AppData\Local\Arduino15\packages\stm32duino\hardware\STM32F1\2021.5.31\cores\maple
El problema con B4R es que después de "corregido" ese error, el LED no hace nada y únicamente se llega a mostrar el Log de inicio "AppStart" una sola vez.
Todo lo demás no se ejecuta, ni siquiera llega a encender el LED del pin PC13.
Este pin declarado como LED_BUILTIN en Arduino, en B4R para esta tarjeta, viene siendo el 32
Esto lo supe desde el mismo arduino, con lo siguiente:
Arduino:
Serial.print("LED_BUILTIN: ");
Serial.println(LED_BUILTIN);
Bien, ya obtenido el pin correcto para la tarjeta, paso a escribir un código simple en B4R, el cual adjunto.
Por más que he intentado, cambiando Bootloader por el HID, con otras descargas de tarjetas, y con la modificación, nada me hace destellar el LED.
Incluso he probado de uno por uno para ver si por ahí algún pin hacía el cambio de estado, pero nada.
Así que si no puedo tener acceso a los GPIO, pues nada de esto sirve. ?
Si alguien tiene resuelto este problema y guste compartirlo, le estaría bastante agradecido.
La verdad me encanta este entorno de programación y prefiero usarlo en lugar de Arduino, ya que B4R lo supera por mucho.
Gracias, y quedo al pendiente de sus preguntas y sabias respuestas.