github地址: https://github.com/tomzbj/flasher.py
包括完整的上/下位机程序.
功能:
1. 读取flash信息, 包括厂商和容量;
2. 读取flash内保存的文件;
3. 列出flash内文件, 包括文件名/起始地址/字节数/写入时间/crc32校验值;
4. 删除flash内保存的文件;
5. 检查flash内文件的crc32值;
6. 检查flash空间使用情况;
7. 按指定地址和长度擦除flash;
8. 写入文件, 可以自动寻找合适的位置写入, 也可以指定地址写入.
效果:
列出文件:
D:\work\__my_github\flasher.py>py flasher.py -l
Connected, Port=COM9, baudrate=1000000
Filename Addr Size Date/Time CRC32
flasher.py 0x00030000 20437 2018/12/31 23:00:25 0xb1687a59
hzk11a.bin 0x00000000 167200 2018/12/31 23:08:25 0xbeb70ae2
2 files, 187637 bytes, 69632 bytes free, 40960 bytes continuous
写入文件:
D:\work\__my_github\flasher.py>py flasher.py -w demo\firmware\Makefile
Connected, Port=COM9, baudrate=1000000
Erasing 100%...
Writing 100%...
Verifying... OK!
显示使用情况:
D:\work\__my_github\flasher.py>py flasher.py -u
Connected, Port=COM9, baudrate=1000000
Capacity: 256KB Number of blocks: 64
-: Empty block X: Data block R: Reserved block
000000-03FFFF: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX------XXXXX----------R