ATSamd10 Atmel ARM programación a través del cargador de arranque UART

0

Estoy intentando recopilar información sobre cómo programar el chip ATSAMD10 (Atmel Cortex-M0 ARM).

Por ejemplo, con LPC111x de NXP, he utilizado gnueabi gcc toolchain para crear archivos hex y luego los subí a través de UART usando la herramienta LPC21PRG o MXLI. Solo se requiere conducir un PIN0_0 bajo durante el reinicio para ingresar al modo de programación del cargador de arranque.

Por lo que puedo entender, para los chips Atmel necesito usar SAM-BA utilidad. Sin embargo, no pude encontrar de inmediato los pines que ayudan a entrar en el modo de gestor de arranque, qué configuración mínima de hardware se necesita, etc. Sin embargo, en cuanto al firmware, creo que los mismos archivos gcc y hex de gnueabi deberían estar bien, ¿no?     

1 respuesta

1

Espero que la herramienta GNU haga exactamente lo que necesita. Es un Cortex-M0 estándar, por lo que el código generado funcionará. Sin embargo, necesitará un código de inicio para inicializar los periféricos, y un código de biblioteca para usar las interfaces periféricas.

Atmel está presionando a la gente para que use su software Atmel Studio para cargar.

AFAIK, no hay garantía de que el software se pueda cargar a través de UART en un SAMD10 sin formato (de fabricación reciente, sin programar). En la HOJA DE DATOS SAMD10 no hay un cargador de arranque en serie integrado en el chip.

Así que necesitas cargar uno y colocarlo en el chip. Esto, por supuesto, es un problema de arranque de 'gallina y un huevo'. He realizado una búsqueda rápida en la web y no he encontrado un cargador de arranque en serie para el SAMD10, por lo que puede que no sea un cargador de arranque en serie, y tendrás que escribirlo.

En lugar de un botloader en serie (USART), puede usar un cargador / depurador de hardware que se conecta a través de la interfaz SWD de dos hilos ARM (las dos patillas SWDIO y SWCLK). Esto puede programar un raw en SAMD10.

Consulte la AT SAMD10 datasheet 6.2.2 "Pinout de la interfaz de depuración de cable serie "para más detalles.

La SAM D10 Xplained Mini incluye una carga / depuración de hardware. Son menos de $ 10, por lo que es probablemente la forma más barata de obtener un sistema de carga. La interfaz es USB.

Puede comprar productos más caros de Atmel, o ver OpenOCD (aunque no puedo encontrar soporte para SAMD10), o buscar en otros depuradores de hardware como Segger J-Link .

El problema es no que la interfaz SWD de ARM es propietaria, el problema es el protocolo del host al depurador.

Eso necesitará algún software para conducirlo. AFAICT BOSSA de Shumatech ofrece una alternativa de código abierto a la utilidad Atmel SAM-BA. A diferencia de la utilidad Atmel SAM-BA, dicen que "las versiones de BOSSA están disponibles para Windows, Linux y Mac".

    
respondido por el gbulmer

Lea otras preguntas en las etiquetas