📄 board.h
字号:
//! @file board.h
//!
//! Copyright (c) 2004
//!
//! Please read file license.txt for copyright notice.
//!
//! This file contains the demonstration board definition
//!
//! @version 1.2 (c5131-usb-generic-1_2_0)
//!
//! @todo
//! @bug
#ifndef _BOARD_H_
#define _BOARD_H_
//_____ I N C L U D E S ____________________________________________________
//#include "lib_mcu\kbd\kbd_drv.h" // keyboard driver definition
//#include "conf_nf.h"
//_____ M A C R O S ________________________________________________________
//----- Board definition -----
// BOARD VERSION
#define VERSION 22 // V2.1 or V2.2
#define INT0_button P3_2
#define NF_WP P1_7
#define Nf_WP_ON() (P1_7 = 0)
#define Nf_WP_OFF() (P1_7 = 1)
#define NF_CE0 0
#define NF_CE1 1
#define NF_CE NF_CE0
#if(NF_CE == NF_CE0)
// even
#define NF_IDLE_STATE_ADD 0x3C // Smart Media Card not selected
#define NF_ADD_LATCH_ENABLE_ADD 0x2600 // Address Latch Enable Address
#define NF_CMD_LATCH_ENABLE_ADD 0x2500 // Command Latch Enable Address
#define NF_ADDRESS_CMD_DATA 0x2400 // Command / Data Address register
#define NF_RD_BUSY P2_4
#define Nf_CS_ON() (P2_3 = 0)
#define Nf_CS_OFF() (P2_3 = 1)
#endif
#if(NF_CE == NF_CE1)
// odd
#define NF_IDLE_STATE_ADD 0x3C // Smart Media Card not selected
#define NF_ADD_LATCH_ENABLE_ADD 0x0A00 // Address Latch Enable Address
#define NF_CMD_LATCH_ENABLE_ADD 0x0900 // Command Latch Enable Address
#define NF_ADDRESS_CMD_DATA 0x0800 // Command / Data Address register
#define NF_RD_BUSY P2_2
#define Nf_CS_ON() (P2_5 = 0)
#define Nf_CS_OFF() (P2_5 = 1)
#endif
#define NF_IDLE_STATE_ADD_DOUBLE 0x3C // Idle state for 2 Nand Flash
#define NF_ADD_LATCH_ENABLE_ADD_EVEN 0x6200 // Address Latch Enable Address
#define NF_CMD_LATCH_ENABLE_ADD_EVEN 0x6100 // Command Latch Enable Address
#define NF_ADDRESS_CMD_DATA_EVEN 0x6000 // Command / Data Address register
#define NF_ADD_LATCH_ENABLE_ADD_ODD 0x4A00 // Address Latch Enable Address
#define NF_CMD_LATCH_ENABLE_ADD_ODD 0x4900 // Command Latch Enable Address
#define NF_ADDRESS_CMD_DATA_ODD 0x4800 // Command / Data Address register
#define NF_BSY_ODD P2_2
#define NF_BSY_EVEN P2_4
#define NF_CS_ODD P2_5
#define NF_CS_EVEN P2_3
#define NF_EVEN 0
#define NF_ODD 1
#define Nf_CS_ODD() nf_parity_bit = NF_ODD; NF_CS_EVEN = 1; NF_CS_ODD = 0
#define Nf_CS_EVEN() nf_parity_bit = NF_EVEN; NF_CS_ODD = 1; NF_CS_EVEN = 0
#define Nf_active_ODD() NF_CS_EVEN = 1; NF_CS_ODD = 0
#define Nf_active_EVEN() NF_CS_ODD = 1; NF_CS_EVEN = 0
#define NF_128 // Nand Flash Capacity : NF_16 NF_32 NF_64 NF_128
#define DATA_REGISTER 0x10
#define ERROR_REGISTER 0x11
#define SECTOR_COUNT_REGISTER 0x12
#define SECTOR_NUMBER_REGISTER 0x13
#define CYL_LOW_REGISTER 0x14
#define CYL_HIGH_REGISTER 0x15
#define DRIVE_HEAD_REGISTER 0x16
#define STATUS_COMMAND_REGISTER 0x17
#define ALT_STAT_REGISTER 0x0E
#define DRIVE_REGISTER 0x0F
#define H_DATA_REGISTER 0x1000
#define H_ERROR_REGISTER 0x1100
#define H_SECTOR_COUNT_REGISTER 0x1200
#define H_SECTOR_NUMBER_REGISTER 0x1300
#define H_CYL_LOW_REGISTER 0x1400
#define H_CYL_HIGH_REGISTER 0x1500
#define H_DRIVE_HEAD_REGISTER 0x1600
#define H_STATUS_COMMAND_REGISTER 0x1700
#define H_ALT_STAT_REGISTER 0x0E00
#define H_DRIVE_REGISTER 0x0F00
#define DF_CS P2 // dataflash CS# port
#define DF_CS0 P2_3
#define DF_CS1 P2_5
#define DF_CS2 P2_6
#define DF_CS3 P2_6
#define DF_DESEL_ALL ((Byte)0x08) // set CS# dataflash memories
#define DF_NB_MEM 1 // 1 on-board memories
//_____ D E F I N I T I O N ________________________________________________
//_____ D E C L A R A T I O N ______________________________________________
#endif // _BOARD_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -