尝试把 XTW100 编程器变成 serprog 协议的编程器 - 可打印的版本 +- WeHack BBS (https://bbs.wehack.space) +-- 版块: 计算机技术 (https://bbs.wehack.space/forum-5.html) +--- 版块: 固件技术讨论区 (https://bbs.wehack.space/forum-8.html) +--- 主题: 尝试把 XTW100 编程器变成 serprog 协议的编程器 (/thread-83.html) |
尝试把 XTW100 编程器变成 serprog 协议的编程器 - vimacs - 10-05-2019 XTW100 编程器用的是 STM32F103 的 MCU,理论上可以刷任何 STM32 的固件。 首先是刷写问题,根据帖子 http://bbs.mydigit.cn/read.php?tid=2169979&ds=1&page=2#58286050 的提示,把 0 欧电阻 R6 拆掉,就可以用 ISP1 那几个引脚编程了。方法是拿一个 USB 转 TTL 的串口转接器,把 ISP1 的 N 和 E 两脚短接,T 接串口的 RXD,R 接串口的 TXD,G 接串口的 GND,然后就可以用 stm32flash 刷 STM32 的固件了。 在开始尝试刷 serprog 失败后,我想到的 STM32 固件是 GNUK OpenPGP 智能卡固件。GNUK 用了一个称为 chopstx 的库,里面带了几个示例,例如 USB 串口测试程序。开始的时候我不知道怎么让 XTW100 的 USB 工作起来,后来发现它的 USBDP 除了接着 PA12 之外,还隔着一个电阻接着 PB8,根据这个改 chopstx 的配置,终于把 chopstx 的那个串口例子跑起来了。 代码: #define BOARD_NAME "XTW100 PRO" 接下来是尝试刷 serprog,我用的是 stm32-vserprog. 添加 XTW100 的头文件:https://github.com/dword1511/stm32-vserprog/pull/37/files 但是 XTW100 的板子的线路和 stm32-vserprog 的参考实现不太一样,测试时发现只有第一次 flash 读是正常的,之后再读或者做擦除/写入操作就出错了。 |