|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
* [ q! \$ v; U' R' h
烧写Flash
u8 J% A; Q; j8 [/ ^ P& k# ~/ w: Q2 b1 G
本文操作环境下使用的Flash型号是AM29LV800BT。
& Z8 |$ F0 J9 a% I2 U& J. |8 v8 s# I0 u
为了烧写,首先你要做的是重新新建一个用于Flash烧写的工程。
x5 R) p+ b6 j7 e0 O% K
$ g, g3 O$ ~& }% E9 ~; F4 q. d烧写Flash的程序网上也有很多讲解,今天把烧写Flash调了出来,就当给大家福利,把我的Flash驱动程序给出来,, ~9 @3 e7 B7 C2 |) s
4 p6 p1 a/ W, u) Y& o$ n# T( \- /*
- * FileName : FLASH.h
- * Author : xiahouzuoxin
- * Date : 2013.09.28
- * Version : v1.0
- * Brief :
- */
- #ifndef _FLASH_H
- #define _FLASH_H
- #include "Config.h"
- #define FLASH_UL1 0xAA
- #define FLASH_UL2 0x55
- #define FLASH_UL3 0x80
- #define FLASH_UL4 0xAA
- #define FLASH_UL5 0x55
- #define FLASH_SECTOR_UL6 0x30
- #define FLASH_CHIP_UL6 0x10
- #define FLASH_PROGRAM 0xA0
- #define SECTOR_SIZE 0x0800
- #define BLOCK_SIZE 0x8000
- #define CHIP_SIZE 0x40000
- #define FLASH_FIRST_ADDR 0x90000000
- #define FLASH_OFFSET(addr) (FLASH_FIRST_ADDR+(addr)<<1) // 16 bit boot mode
- /* External functions propotype */
- extern uint32_t Flash_Erase(uint32_t addr,uint16_t type);
- extern void Flash_Readm(uint32_t addr,uint16_t *ptr,uint32_t length);
- extern uint32_t Flash_Reads(uint32_t addr);
- extern void Flash_Writem(uint32_t addr,uint16_t *ptr,uint32_t length);
- extern void Flash_Writes(uint32_t addr,uint16_t data);
- #endif z) B0 ]0 x) u0 E9 n! ^# k5 s+ v
/ e, b5 p, p' O: D. F, l0 i
5 I* `/ Q5 B* y
$ R9 O. S/ [' t
$ Q* q" ]: D, M& y
! x, |3 R" D' H" q! k
. Q/ W7 n' f X& _ |
|