我希望在家里做一些爱好固件开发,需要一个设备程序员。希望继续使用开源解决方案,我找到了OpenOCD项目以及Bus Pirate。 30美元似乎是不费脑子的,特别是因为它支持的不仅仅是JTAG(SPI,I2C等)。我看到一些提到它不是那里最快的接口。
有没有人使用其中一种并对此有意见?是否与Debug Adapter Hardware page of the OpenOCD documentation中列出的其他程序员进行了比较?
答案 0 :(得分:6)
BusPirate更多的目标是作为通用通信嗅探器,尽管它已经扩展成为嵌入式开发的瑞士军刀。同样,开放式逻辑分析仪也很划算。
我不会说BP是将固件用于嵌入式微处理器以实现开发目的的最佳方法(专用调试器可能是最好的)但我会说它非常值得拥有BusPirate,LogicSniffer以及如果你可以延伸到它,一个DSO-Quad。
所有这三个对于嵌入式开发都非常有用,尽管我们在实验室中拥有所有“适当”的设备,但这三个人已经在这里多次为自己付出了代价。
我们发现BP在尝试使用新设备(EEPROM,SPI periperal / sensor等)与我们的micro进行通信时特别有用,因为您可以将设备启动并运行通过PC,然后将魔术咒语翻译成嵌入式代码,您可以放心地以正确的顺序发送正确的命令。
对于嵌入式编程/调试,专用调试器(通常随devkit a-la MSP430启动板一起提供)可能会让您更快速地与IDE集成。
答案 1 :(得分:1)
我正在使用BusPirate来嗅探两块板之间的流量,并模拟I2C主机以进行测试。
简而言之,它非常有用。快速方便地查看数据并完全按照我的意愿行事。
然而,我遇到了麻烦,有一次我用示波器验证了嗅探数据,发现BusPirate并没有准确报告总线发送的正确数据。它有点误读并错过了可重复启动序列的整个字节。偶尔它会偏离轨道。
这是以100kHz传输的数据。有人建议我再次尝试使用较短的电线,因为它可能是电容问题,但即使使用1英寸电线连接到busPirate,它仍会报告相同的错误。
所以,你知道,需要注意的是你需要验证你的工具偶尔会告诉你什么。