📄 sdram_.h
字号:
//typedef unsigned int u32;
//*(volatile unsigned int*)0x1d
#define GBLCTL *( volatile u32 *)0x01800000 //0x01A80000 GBLCTL EMIFx Global Control
#define CE1CTL *( volatile u32 *)0x01800004// 0x01A80004 CE1CTL EMIFx CE1 Space Control
#define CE0CTL *( volatile u32 *)0x01800008// 0x01A80008 CE0CTL EMIFx CE0 Space Control
//#define GBLCTL *//0x0180000C 0x01A8000C Reserved
#define CE2CTL *( volatile u32 *)0x01800010// 0x01A80010 CE2CTL EMIFx CE2 Space Control
#define CE3CTL *( volatile u32 *)0x01800014// 0x01A80014 CE3CTL EMIFx CE3 Space Control
#define SDCTL *( volatile u32 *)0x01800018// 0x01A80018 SDCTL EMIFx SDRAM Control
#define SDTIM *( volatile u32 *)0x0180001C// 0x01A8001C SDTIM EMIFx SDRAM Refresh Period
#define SDEXT *( volatile u32 *)0x01800020//? 0x01A80020? SDEXT EMIFx SDRAM extension?
#define CE1SEC *( volatile u32 *)0x01800044// 0x01A80044 CE1SEC EMIFx CE1 Space Secondary Control
#define CE0SEC *( volatile u32 *)0x01800048// 0x01A80048 CE0SEC EMIFx CE0 Space Secondary Control
//#define GBLCTL *//0x0180004C 0x01A8004C Reserved
#define CE2SEC *( volatile u32 *)0x01800050// 0x01A80050 CE2SEC EMIFx CE2 Space Secondary Control
#define CE3SEC *( volatile u32 *)0x01800054// 0x01A80054 CE3SEC EMIFx CE3 Space Secondary Control
#define INITMASK 0X01000000
#define MEMORYBLOCKNUMMAX 0X0408
#define BLOCKSIZE 0X10000
#define MEMORYBASEADDRESS 0X80000000
#define ERRCOUNTMAX 0X10
//int MemoryBlock[MEMORYBLOCKNUMMAX];
//int MemoryBlockNum;
/*
typedef struct
{ u32 id;
void *point;
void *end;
u32 length;
u32 time;
}MemoryStruct;
#define MEMORYNUMMAX 0X200
MemoryStruct memory[MEMORYNUMMAX];// 0X200 ; //指向结构的指针
*/
void MemoryBlockCheck();
void Refresh() ;
// #define MEMORY_DEBUG
void MemTest();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -