1、FLASH初始化
先简单介绍下EMC控制器--EMC(external memory controller)外部存储控制器,主要是控制外部的存储设备,包括动态存储设备和静态存储设备。SDRAM属于动态存储设备,而FLASH则属于静态存储设备。初始化的过程主要是使能EMC控制器、配置相应控制flash的管脚、配置EMC控制器关于flash的参数寄存器三部分;
LPC2478针对nand flash初始化函数如下:
void NANDFLASHInit( void )
{
DWORD i;
EMC_CTRL = 0x00000001;//使能EMC控制器
PCONP |= 0x00000800; //使能EMC 的pclk
//-----以下部分是配置LPC2478上关于控制flash的管脚
IODIR0 &=~(1<<10); //配置P010作为FLASH的RB信号,输入
FIO0MASK &= ~(1 << 10);
IODIR0|=(1<<11); //配置P011作为FLASH的CE信号,输出
PINSEL4 |=(0x5<<28);
PINSEL6 = 0x55555555;
PINSEL8 = 0x55555555;
PINSEL9 = 0x50555555;
/* 以下配置EMC控制器关于静态存储器(FLASH)的相关参数 */
EMC_STA_CFG1 = 0x00000080;
&nbs

本文介绍了LPC2478微控制器如何驱动NAND Flash K9F5608,重点讲解了初始化过程,包括使能EMC控制器、配置管脚和设置EMC参数。初始化代码中还包括了坏块表的初始化,为后续的坏块管理打下基础。
最低0.47元/天 解锁文章
104

被折叠的 条评论
为什么被折叠?



