Arduino作为编程器读写BIOS、bootloader、uboot或者breed

本文介绍了如何利用Arduino作为编程器来读写BIOS、bootloader、u-boot等,特别是在没有专业编程器的情况下,通过Arduino连接25Q128CS闪存芯片进行操作。虽然尝试修复极路由1S(HC5661A)刷breed失败,但Arduino编程器的使用方法和电路图仍具有参考价值。
摘要由CSDN通过智能技术生成

极路由1S(HC5661A)刷breed刷错了,身边没有编程器写flash芯片(型号25Q128CS),因此就萌生了使用Arduino作为编程器的想法

参考了ZLBG这篇文章写得很不错

都是标准ISP协议,其他flash可以参考读写

电路图请参考ZLBG的博客文章,我贴一下Arduino接线

极路由flash位置

Arduino代码如下:

/*
    communication with W25Q80BV (1 MBYTE SPI FLASH) using Arduino Pro Mini 3.3V/8MHz
    Reference: http://www.instructables.com/id/How-to-Design-with-Discrete-SPI-Flash-Memory/?ALLSTEPS
    Reference2: http://www.cnblogs.com/zlbg/p/4246721.html
*/

// the SPI bus uses pins 10 (SS), 11 (MOSI), 12 (MISO), and 13 (SCK)

/**
* 使用Arduino作为编程器将uboot写入flash(EEPROM)
* 注意uboot不要超过芯片存储容量
* 理论上支持所有EEPROM
* 
* 测试机型:极路由1S(HC5661A),刷入breed
*/

#include <SPI.h>

#define READ_JEDEC_ID 0x9F
#define READ_STATUS_1 0x05
#define READ_DATA 0x03
#define WRITE_ENABLE 0x06
#define PAGE_PROGRAM 0x02
#define CHIP_ERASE 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值