PROGRAMACION PLACA STM32 CON EL ST-LINK

En los anteriores post hemos visto como se programa la palaca del microcontrolador stm32f103c8t6 con un simple convertidor usb-ttl a niveles (3,3v) tal como el barato FT232, podemos ver como  se hace esto apartir del post:

https://misterelectronico.wordpress.com/2016/11/12/placa-de-desarrollo-stm32f103c8t6/

Pero ahora vamos a programarlo con el programador ST-LINK que es una herramienta bastante economica y ademas de para programar nos servira para hacer debugging,  la podemos ver en la imagen:

16s

La seligrafia nos marca el conexionado de los pines que estan el conector del lado derecho, de esta forma conectaremos los terminales con la placa del stm32f103c8t6 de la siguiente forma:

   3,3V   con  los  3,3 V        GND  con el  GND       SWCLK  con el  DCLK           SWDIO  con  DIO

Y el conexionado quedaria como se muestra en la foto.

17s

Tal como se ve en la placa los cables van conectados a la parte baja del ST-LINK y el amarillo corresponde al SWDIO que se conectaria con el DIO de la placa, el azul seria GND conectado con el GND de la placa, el verde seria el SWCLK que se conectaria con el DCLK de la placa y por ultimo el Naranja seria VCC a 3,3V que se conectaria con los 3,3V de la placa.

Bueno ahora lo unico que tenemos que hacer es abrir el programa de Arduino y confirgurarlo para poderlo programar con el ST-LINK, para ello nos vamos a la barra de herramientas y dentro de upload method > elegimos ST-LINk tal como vemos en la foto:

18s

Luego en esta misma barra de herramientas eligiremos el Puerto, que lo que haremos es escoger el puerto que arduino nos da por defecto tal como vemos en la foto.19s

Si se nos presentaran mas puertos eligiriamos uno cualquiera y si no es ese  pasariamos al siguiente hasta que consiguieramos programar el microcontrolador.

Por supuesto en esta barra de herramientas tambien tenemos seleccionado como hicimos en en los post anteriores  para la programacion serial la :

Placa: “Generic STM32F103C series”

Variant: “STM32F103C8 (20k RAM 64 K Flash)”

Bueno y con esto ya tenemos preparado el programa Arduino para programar esta placa.

Ahora si nos fijamos en los  jumper de la placa del STM32F103, en la programacion serie uno de los jumper se ponia en posicion 1, pero para programarlo con el ST-LINK los dos jumper deben estar en posicion “0” tal como viene en la primera foto de este post.

Bueno pues ya esta todo preparado para programar con el programa de Arduino, podemos ver el primer programa de comunicacion serie como el que escribo a continuacion, que podemos copiarlo con un copia y pega.

/*
ESTE EJERCICIO LO QUE HACE ES LEER UN DATO OR EL PUERTO SERIE Y RENVIARLO.
*/

int inByte; // Byte read from Serial1

void setup() {
// Initialize Serial
     Serial.begin(9600); // Inicializa el puerto seria a 9600
    Serial.begin(9600);
}

void loop() {
//  Detecta si el puerto serie recibe un caracter y lo renvia de nuevo por el TX del puerto.
         if (Serial.available()) {
                inByte = Serial.read();
                Serial.print(inByte, BYTE);
     }
}

Buen el programa es muy sencillo y lo que hace es que cualquier byte que recibe por el puerto serie por RX lo renvia de nuevo por el TX,  asi si abrimos un Hiperterminal por Windows,  o un minicom por Linux o cualquier otro programa de comunicacion, con el puerto adecuado en Windows un COMx   y en Linux se suele abrir por /dev/ttyACM0

Decir que la comunicacion la hace atraves del cable Mini – USB que tenemos conectado a la placa del controlador y no atraves del ST-LINK.

En linux a mi se me abre como /dev/ttyACM0 y bueno si abrimos cualquier programa de comunicacion veremos que cualquier caracter que escribamos en el teclado nos es devuelto de nuevo y lo veremos en la pantalla del terminal.

Bueno y esto es todo con respecto ala programacion con ST-LINK.

Un saludo nos vemos.

 

 

 

 

 

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s