先上图:
下面是arduinoe原代码:
/*************** arduino SPI_flash编程器(烧录器)*******************
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
wuernuer:http://blog.csdn.net/wuernuer/article/details/50759523
// arduino(与spi_falsh连接) pins 10 (CS), 11 (MOSI), 12 (MISO), 13 (SCK)
* 使用Arduino作为编程器将bios写入spi_flash
* 注意bios文件不要超过芯片存储容量
* 理论上支持所有spi_flash(EEPROM)
* 测试电脑:七彩虹C.G41H D3 V23主板,L5420至强四核CPU(771硬改),2*2G DDR3 1333内存
* 官方1003_bios,文件大小1M
#include
#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 0xC7
// bios最后四个字节,用于判断写入已经结束
// 我们可以使用winhex打开bios文件查看最后四个字节