sábado, 28 de septiembre de 2019

STM32F103 como JTAG - SVF player - CPLD Altera - Quartus - Parte 1

Introducción.

    En una entrada anterior, preparamos una Raspberry pi 3 como interfaz JTAG. 

    En esta ocasión prepararemos una placa de desarrollo con STM32F103 (aka BluePill).
   
Fuente: https://os.mbed.com/users/hudakz/code/STM32F103C8T6_Hello/

    Al igual que con la raspberry, podremos reproducir archivos SVF, los cuales nos permitirán, entre otros usos, la programación, de CPLD's.

    Todos los pasos detallados fueron realizados desde un Host (mi PC) con distro Debian 9.

Preparación de la placa.

   Para la realización utilizaremos el firmware DirtyJtag que nos permitirá utilizar nuestra placa como un adaptador JTAG.

   Primero descargamos el firmware:

   https://github.com/jeanthom/dirtyjtag/releases


Descargaremos dirtyjtag.bluepill.bin
 La programación de este firmware en nuestra placa, es trivial, así que solo pondré el comando con openocd para la grabación, usando un STLink V2:

usuario@debian:~ $ openocd -f ../scripts/interface/stlink-v2.cfg -f ../scripts/target/stm32f1x.cfg -c init -c "reset halt" -c "flash write_image erase /home/usuario/Descargas/dirtyjtag/dirtyjtag.bluepill.bin 0x08000000" -c "reset"


Luego de finalizado el proceso de grabación, conectamos la placa por medio de un cable mini USB a nuestra PC, ejecutamos el siguiente comando:

usuario@debian:~ $ lsusb


Item 8: Debian reconoce nuestra placa como InterBiometrics
El pinout de la placa es el siguiente:

PA0 => TDI
PA1 => TDO
PA2 => TCK
PA3 => TMS
PA4 => TRST
PA5 => SRST

Una vez conectada nuestra placa tanto al target como a la PC y reconocida por el OS, lanzamos urjtag como root (el tema de los permisos excede a esta entrada, por eso lanzamos como root).

usuario@debian:~ # jtag

Luego:


jtag> cable dirtyjtag
jtag> bsdl path /home/usuario/bsdl-altera
jtag> detect

Solo falta decirle donde está el BSDL,... como ya se explicó en la anterior entrada.

T'T.

No hay comentarios.:

Publicar un comentario