2012-06-16 20 views
5

Estoy buscando hacer un poco de desarrollo de firmware de hobby en casa y necesito un programador de dispositivo. Esperando mantener las soluciones de código abierto, encontré el proyecto OpenOCD y también el Bus Pirate. Por $ 30 parece algo obvio, especialmente porque admite más que solo JTAG (SPI, I2C, etc.). He visto algunas menciones de que no es la interfaz más rápida que existe.Opiniones sobre el programador de dispositivos Bus Pirate?

¿Alguien ha usado uno de estos y tiene una opinión al respecto? ¿Alguna comparación con los otros programadores enumerados en el Debug Adapter Hardware page of the OpenOCD documentation?

+0

¿Qué dispositivo o familia estás programando? –

+0

@dwelch Por el momento tengo un BeagleBoard-xM con un DM3730 (Cortex-A8). Sin embargo, espero utilizar Bus Pirate como programador de propósito general para cualquier tipo de microcontrolador. Aunque ya tengo un USB FET de TI para cosas relacionadas con msp430. – Ryan

+1

Un tamaño no sirve para todos, el bus pirata puede ser un buen enfoque, pero para algunas plataformas puede necesitar otra herramienta. El launchpad $ 4.30 msp430 programará otros msp430 como el fet. Lo uso para mis avrs si no puedo con el gestor de arranque. . A $ 30, el pirata del autobús es probablemente una buena herramienta, pero creo que lo que estoy diciendo es que quizás necesites más herramientas en tu caja de herramientas. –

Respuesta

6

El BusPirate está/fue más dirigido como un sniffer de comunicaciones de propósito general, aunque se ha expandido para convertirse en una navaja suiza de desarrollo incrustado. Del mismo modo, el analizador lógico abierto que también es una ganga.

No diría que un BP es la mejor manera de obtener firmware en un micro incrustado para fines de desarrollo (un depurador dedicado probablemente sea el mejor) pero yo diría que vale la pena tener un BusPirate, LogicSniffer y si puedes estirarlo, un DSO-Quad.

Los tres son increíblemente útiles para el desarrollo integrado, los tres se han pagado por sí mismos muchas veces aquí en tiempo ahorrado a pesar de que tenemos todo el equipo "adecuado" en el laboratorio al que recurrir.

El BP que hemos encontrado especialmente útil cuando intentamos obtener un nuevo dispositivo (EEPROM, SPI periperal/sensor, etc.) para hablar con nuestro micro ya que puede poner el dispositivo en funcionamiento a través de la PC antes de traducir los conjuros mágicos en el código incrustado con la confianza de que está enviando los comandos correctos en el orden correcto.

Para la programación/depuración incorporada, un depurador dedicado (por lo general viene con el launchpad devkit a-la MSP430) probablemente te ayudará a avanzar mucho más rápido e integrar fácilmente un IDE.

+0

excelentes comentarios, gracias. Recibí mi Bus Pirate y lo pondré a prueba pronto y veré LogicSniffer y DSO-Quad. Estoy completamente de acuerdo con hacer la mayoría del desarrollo en la PC y usar HAL para hacer que el código sea portátil para su arquitectura de destino. – Ryan

1

Estoy usando un BusPirate para olfatear el tráfico entre dos tarjetas y para emular un maestro I2C con fines de prueba.

Es, en resumen, una locura útil. Rápido y práctico para ver los datos y hacer exactamente lo que quiero.

Sin embargo, estaba teniendo problemas y en un momento verifiqué los datos olfateados con un alcance y descubrí que BusPirate no estaba informando exactamente los datos correctos que se envían del bus. Leyó mal un bit y omitió un byte completo de una secuencia de arranque repetible. Y de vez en cuando simplemente se salió de la pista.

Se transmitieron datos a 100 kHz. Alguien sugirió que intente de nuevo con cables más cortos, ya que podría haber sido un problema de capacitancia, pero incluso con cables de 1 pulgada que van al busPirate, todavía informaron los mismos errores.

Así que, ya sabes, una palabra de advertencia que necesita para verificar lo que sus herramientas le están diciendo de vez en cuando.

Cuestiones relacionadas