0

我正在尝试为 MIDI 控制器(AKAI LPD8)制作一些自定义固件。单元中有一块STM32F102R8T6芯片。我试图用程序员来擦拭它,但它似乎没有响应。

我尝试过的一些信息和事情:

  • 设备随附的固件可以正常工作,因此芯片没有损坏
  • 移除了连接到编程引脚的组件(PA9-PA10 和 PA13-PA14)
  • 我可以将 BOOT0 拉高并且让它不运行主程序,但是我无法使用连接到 PA13/14 的 ST-Link2(克隆)或连接到的 USB 到串行适配器来获得生命迹象PA9/PA10,所以不知道是什么模式
  • 已检查连接,RX-TX 等是正确的方法(但也为了尝试这一切,我也颠倒了连接......)。
  • 尝试了 STM32CubeProgrammer 和 stm32flash,但没有连接。

我实际上不确定 AKAI 是否以这样一种方式锁定了芯片,以至于您甚至无法进行完整的芯片擦除并将芯片用于新的东西?奇怪的是,当我尝试将 NRST 引脚拉低时,它也没有对固件的运行做任何事情。

有没有办法在这些芯片脱离商业产品时对其进行重新编程,或者它们是否被永久锁定?

任何解决方案/提示?

4

2 回答 2

0

许多 STM32 部件都有“专有代码读出保护”(google PCROP),但你可能很幸运,他们没有在选项字节中启用它。阅读相关文档和引导加载程序文档,并很好地了解您希望它在启用和未启用时执行的操作。

如果您有示波器,请尝试观察 SWD/JTAG 引脚以查看设备是否有任何响应。(如果您甚至不确定它是否处于重置状态,那么如果有的话,请检查晶体)。

如果您没有示波器,您可以通过查看它是否将引脚和上拉电阻设置为在引导加载程序模式下的预期方式来验证它在做什么,例如:UART TX 应该是如果它被启用,即使它没有传输任何东西。在那里放一个强下拉(~1k),看看它是否仍然读得很高。

于 2021-08-19T14:49:52.893 回答
0

经过数小时尝试不同的方法使其工作(也尝试了 UART 端口的替代映射),并按照Tom V的建议探测了 TX 引脚无济于事,我已经放弃了在该特定芯片上的工作,并从STM32F4 系列代替它。更多功能和有用的外围设备。

有点不回答具体问题。令人沮丧的是没有发现什么是错误的(芯片或方法),但要注意沉没成本的谬误,我认为最好用新的芯片替换芯片并从那里开始开发。

于 2021-08-23T12:31:27.523 回答