搜索
bottom↓
回复: 18

经验分享: 用USB Blaster读写SPI Flash,支持大量型号!

[复制链接]

出0入0汤圆

发表于 2014-4-30 16:51:27 | 显示全部楼层 |阅读模式
本帖最后由 cqsrmxxzyx 于 2014-4-30 16:52 编辑

最近给路由器换flash,需要给新的flash写固件,型号是W25Q64,在网上搜索编程器资料,看到一个叫flashrom的软件在最新版本中增加了对USB Blaster适配器的支持.
赶紧焊了一个简易测试座,与blaster连上,敲命令,成功!

写入中...


鳄鱼夹+转接板做的测试座



电路连接参照其源代码中的描述如下:
/*
* Device should be connected as per "active serial" mode:
*
*      +---------+------+-----------+
*      | SPI     | Pin  |  Altera   |
*      +---------+------+-----------+
*      | SCLK    | 1    | DCLK      |
*      | GND     | 2,10 | GND       |
*      | VCC     | 4    | VCC(TRGT) |
*      | MISO    | 7    | DATAOUT   |
*      | /CS     | 8    | nCS       |
*      | MOSI    | 9    | ASDI      |
*      +---------+------+-----------+
*
* See also the USB-Blaster Download Cable User Guide: http://www.altera.com/literature/ug/ug_usb_blstr.pdf
*/
flash上的/WP和/HOLD直接上拉,另外还得有3.3V的外部供电(JTAG口是不能供电的)

除了我这个芯片外,flashrom还支持很多芯片,详见它的wiki: http://flashrom.org/Supported_hardware#Supported_flash_chips
理论上其中列出的SPI接口的flash都可以用这个方法

注意flashrom从0.9.7才开始支持blaster,如果二进制包版本不够可以自己编译,我是在linux下编译的,需要先安装libpci,libftdi,libusb

最后配一个命令运行效果
sudo flashrom -p usbblaster_spi -w mw151rm_8M.bin
flashrom v0.9.7-r1781 on Linux 3.13.0-24-generic (x86_64)
flashrom is free software, get the source code at http://www.flashrom.org

Calibrating delay loop... OK.
Found Winbond flash chip "W25Q64.V" (8192 kB, SPI) on usbblaster_spi.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... VERIFIED.

开源世界果然有不少好东西啊:)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出130入129汤圆

发表于 2014-4-30 16:54:15 | 显示全部楼层
usbasp也可以下载SPI FLASH

出0入0汤圆

 楼主| 发表于 2014-4-30 16:56:30 | 显示全部楼层
68336016 发表于 2014-4-30 16:54
usbasp也可以下载SPI FLASH

但是速度呢?

出0入0汤圆

发表于 2014-4-30 17:02:32 | 显示全部楼层
mark,以后折腾的时候用得上

出0入0汤圆

发表于 2014-4-30 17:08:54 | 显示全部楼层
mark,spi的买个ch341不贵,skygz写的上位机

出0入0汤圆

发表于 2014-4-30 18:15:46 | 显示全部楼层
我用过w25q128发现一开始可以用,但后来怎么也烧不进去。。

出0入17汤圆

发表于 2014-4-30 19:02:01 | 显示全部楼层
USB Blaster的JTAG模式还支持调试ARM CPU呢,OpenOCD和urJTAG都支持USB Blaster硬件

出0入0汤圆

 楼主| 发表于 2014-4-30 19:14:27 | 显示全部楼层
Nuker 发表于 2014-4-30 19:02
USB Blaster的JTAG模式还支持调试ARM CPU呢,OpenOCD和urJTAG都支持USB Blaster硬件

是的.
我这个usb blaster实际上是做的openjtag,配合openocd的.
同时在cpld合并了usb blaster的逻辑,通过一个外部跳线切换.
比较遗憾的是openocd似乎不支持AVR

出0入0汤圆

发表于 2014-4-30 20:01:10 | 显示全部楼层

出0入0汤圆

发表于 2014-4-30 21:56:52 | 显示全部楼层
擦、写、校 一共好多时间 ?

出0入0汤圆

发表于 2014-5-1 09:55:20 | 显示全部楼层
本帖最后由 QQ373466062 于 2014-5-1 10:08 编辑

昨天在淘宝买了一个,但是快递太慢了,看店家的烧写截图也很慢,自己用STM32做了一个烧写MX25L128的烧录器,等整理好了,放上来

出0入0汤圆

 楼主| 发表于 2014-5-1 10:10:31 | 显示全部楼层
pitolan 发表于 2014-4-30 21:56
擦、写、校 一共好多时间 ?

8M文件,整个写入校验过程花了差不多5分钟吧,没有仔细测量.

出0入0汤圆

发表于 2014-5-1 11:46:59 | 显示全部楼层
1)感谢楼主分享;
2)以前买过CH341做的,硬件是可行的,但是上位机不好用;5楼介绍的skygz的上位机可能不错,鼓励原创;
3)在淘宝买了另外一个,也是广州的,店铺的页面很华丽,用STM323C8T6做的,MCU带USB,感觉上位机软件和硬件都好,烧写速度较快,价格38元,还不错。

出0入0汤圆

发表于 2014-5-2 18:32:07 | 显示全部楼层
mark

出0入0汤圆

发表于 2014-5-2 19:11:28 来自手机 | 显示全部楼层
cqsrmxxzyx 发表于 2014-5-1 10:10
8M文件,整个写入校验过程花了差不多5分钟吧,没有仔细测量.

速度太慢也恼火,可以试试纬图的USB-SPI

出0入0汤圆

 楼主| 发表于 2014-5-2 20:46:24 | 显示全部楼层
wdluo 发表于 2014-5-2 19:11
速度太慢也恼火,可以试试纬图的USB-SPI

当然,专用工具性能好
但如果只是偶尔用一下,像usb blaster这种通用的工具更方便

出0入0汤圆

发表于 2014-5-8 13:12:16 | 显示全部楼层
收藏一下~

出0入0汤圆

发表于 2014-6-1 09:57:53 | 显示全部楼层
感谢分享

出0入0汤圆

发表于 2014-6-1 10:19:50 来自手机 | 显示全部楼层
很给力的东西啊!!换路由专用,哈哈!!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-24 03:23

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表