?? iceflash.h
字號:
//-------------------------------------------------------------------------------------------
#ifndef __ICEflash_h__
#define __ICEflash_h__
#endif
//-------------------------------------------------------------------------------------------
#ifdef __ICEflash__
#include "w925c240.h"
//---Constant Define
#define ICE_WREN 0x06 // Write Enable
#define ICE_WRDI 0x04 // Write Disable
#define ICE_RDSR 0x05 // Read Status Register
#define ICE_WRSR 0x01 // Write Status Register
#define ICE_READ 0x03 // Read Data Bytes
#define ICE_PP 0x02 // Page Program
#define ICE_SE 0xd8 // Sector Erase
#define ICE_BE 0xc7 // Bulk Erase
#define ICE_RDID 0x15 // Read Device ID
//Status Register Format
#define SR_WIP 0x01 // Write In Process indicater
#define SR_WEL 0x02 // Write Enable Latch
#define SR_BP0 0x04 // The Block Protect(BP1,BP0)
#define SR_BP1 0x08 //
#define SR_SRWD 0x80 // Status CRegister Write Disable bit
//---IO define
sbit ioICE_Clock = P1^0; // Serial Clock
sbit ioICE_DataIn = P1^1; // ICE Serial Data Input
sbit ioICE_DataOut = P1^2; // ICE Serial Data Output
sbit ioICE_CE = P1^3; // Chip Enable
//sbit ioICE_WR = P0^4; // Write Protect
//sbit ioICE_Hold = P0^5; // Hold
//---Macro define
#define mICE_SetioClock_Output P1IO &= (~0x01); P1H |=0x01;
#define mICE_SetioDataIn_Output P1IO &= (~0x02); P1H |=0x02;
#define mICE_SetioDataOut_Input P1IO |= 0x04; P1H |=0x04;
#define mICE_SetioCE_Output P1IO &= (~0x08); P1H |=0x08;
#define mICE_SetioWR_Output
#define mICE_SetioHold_Output
#define mICE_ClockHigh ioICE_Clock = 1;
#define mICE_ClockLow ioICE_Clock = 0;
#define mICE_DataHigh ioICE_DataIn = 1;
#define mICE_DataLow ioICE_DataIn = 0;
#define mICE_ChipDisable ioICE_CE = 1;
#define mICE_ChipEnable ioICE_CE = 0;
#define mICE_OpStart mICE_ClockLow mICE_DataLow mICE_ChipEnable
//#define mICE_OpStop mICE_ChipDisable mICE_ClockLow mICE_DataLow
#define mICE_OpStop mICE_ChipDisable mICE_ClockHigh mICE_DataHigh
#define mICE_WriteDisable //ioICE_WR = 1;
#define mICE_WriteEnable //ioICE_WR = 0;
#define mICE_HoldOn //ioICE_Hold = 1;
#define mICE_HoldOff //ioICE_Hold = 0;
//---internal function define
void ICE_WriteData(unsigned char wdata);
unsigned char ICE_ReadData(void);
#endif
//-------------------------------------------------------------------------------------------
#ifdef __ICEflash__
#define ICE_EXTERN
#else
#define ICE_EXTERN extern
#endif
ICE_EXTERN void ICE_FlashInit(void);
ICE_EXTERN void ICE_WriteCommand(unsigned char cmd);
ICE_EXTERN unsigned char ICE_ReadStatusRegister(void);
ICE_EXTERN void ICE_WriteStatusRegister(unsigned char wdata);
ICE_EXTERN void ICE_ReadByte(unsigned char addr, unsigned char len, unsigned char *rdata);
ICE_EXTERN void ICE_WriteByte(unsigned char addr, unsigned char len, unsigned char *wdata);
//-------------------------------------------------------------------------------------------
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -