1 #ifndef __SWM320_SDRAM_H__ 2 #define __SWM320_SDRAM_H__ 3 4 typedef struct { 5 uint8_t CellSize; // SDRAM颗粒的容量,SDRAM_CELLSIZE_16Mb、SDRAM_CELLSIZE_64Mb、SDRAM_CELLSIZE_128Mb、SDRAM_CELLSIZE_256Mb 6 uint8_t CellWidth; // SDRAM颗粒的位宽,SDRAM_CELLWIDTH_16、SDRAM_CELLWIDTH_32 7 uint8_t CASLatency; // 列地址到有效数据输出间隔,SDRAM_CASLATENCY_2、SDRAM_CASLATENCY_3 8 uint8_t RefreshTime; // 刷新时间,单位 ms,在这个时间内 SDRAM 必须完成一次整片刷新,通常为 64ms 9 10 uint8_t TimeTMRD; // MRS to New Command 11 uint8_t TimeTRRD; // Activate to activate on different banks 12 uint8_t TimeTRAS; // Self refresh time,最小Self-refresh周期 13 uint8_t TimeTRC; // Row cycle delay,Activate to activate on same bank 14 // 若 SDRAM 颗粒除了 tRC,还有 tRFC 或 tRRC 参数,则按照二者中较大的计算 TimeTRC 15 uint8_t TimeTRCD; // Row to column delay,行地址到列地址间延时,也即Activate命令到读写命令间延时 16 uint8_t TimeTRP; // Row precharge delay,Precharge命令到另一个命令间延时 17 } SDRAM_InitStructure; 18 19 #define SDRAM_CELLSIZE_16Mb 3 20 #define SDRAM_CELLSIZE_64Mb 0 21 #define SDRAM_CELLSIZE_128Mb 1 22 #define SDRAM_CELLSIZE_256Mb 2 23 24 #define SDRAM_CELLBANK_2 0 25 #define SDRAM_CELLBANK_4 1 26 27 #define SDRAM_CELLWIDTH_16 0 28 #define SDRAM_CELLWIDTH_32 1 29 30 #define SDRAM_CASLATENCY_2 2 31 #define SDRAM_CASLATENCY_3 3 32 33 #define SDRAM_TMRD_3 3 34 #define SDRAM_TMRD_4 4 35 #define SDRAM_TMRD_5 5 36 #define SDRAM_TMRD_6 6 37 #define SDRAM_TMRD_7 7 38 39 #define SDRAM_TRRD_2 2 40 #define SDRAM_TRRD_3 3 41 42 #define SDRAM_TRAS_2 2 43 #define SDRAM_TRAS_3 3 44 #define SDRAM_TRAS_4 4 45 #define SDRAM_TRAS_5 5 46 #define SDRAM_TRAS_6 6 47 #define SDRAM_TRAS_7 7 48 49 #define SDRAM_TRC_2 2 50 #define SDRAM_TRC_3 3 51 #define SDRAM_TRC_4 4 52 #define SDRAM_TRC_5 5 53 #define SDRAM_TRC_6 6 54 #define SDRAM_TRC_7 7 55 #define SDRAM_TRC_8 8 56 #define SDRAM_TRC_9 9 57 #define SDRAM_TRC_10 10 58 #define SDRAM_TRC_11 11 59 #define SDRAM_TRC_12 12 60 #define SDRAM_TRC_13 13 61 #define SDRAM_TRC_14 14 62 #define SDRAM_TRC_15 15 63 64 #define SDRAM_TRCD_3 3 65 #define SDRAM_TRCD_4 4 66 #define SDRAM_TRCD_5 5 67 #define SDRAM_TRCD_6 6 68 #define SDRAM_TRCD_7 7 69 70 #define SDRAM_TRP_3 3 71 #define SDRAM_TRP_4 4 72 #define SDRAM_TRP_5 5 73 #define SDRAM_TRP_6 6 74 #define SDRAM_TRP_7 7 75 76 77 78 void SDRAM_Init(SDRAM_InitStructure * initStruct); 79 80 void SDRAM_Enable(void); 81 void SDRAM_Disable(void); 82 83 #endif //__SWM320_SDRAM_H__ 84