Здравствуйте.
Изначально не сталкивался с программированием микроконтроллеров, а тем более с программированием LPC микроконтроллеров. Но возникла задача и необходимость прямого соединения LPC1114 и NAND интерфейса.
Примеры которые встречались не могли быть портированы на 1114. Например из примера к 2200 :
Код
void nandFlashInit(void)
{
//Configure Bank0 as Nand Flash controller
PINSEL2 = PINSEL2
& ( ~(0x3<<26) )
| ( 1<<25 ) //enable Addr2 as NAND flash ALE
//enable Addr3 as NAND flash CLE
| ( 1<<8 ) //enable WE
& ( ~( 0x3<<4 ) )
| ( 1<<4 ); //enable CS0, OE, D0...D7, D8...D15
BCFG0 = (( 0<<28 ) //8bit width of data bus
| ( 0x0<<11 ) //1 CCLK cycle write
| ( 1<<10 )
| ( 0x1<<5 ) //4 CCLK cycle read
| ( 0x0 )); //1 CCLK cycle idle
//GPIO P019 as CS pin,P018 as Busy Status pin
PINSEL1 &= ( ~0xf0 );
IO0DIR = IO0DIR
| ( 1<<19 ) //P019 configured as output pin
& ( ~( 1<<18 ) ); //P018 configured as input pin
}
Не понятно как изменить BCFG и вообще что это , под работоспособность на 1114.
Код
#define nandOpen() ( IO0CLR |= ( 1<<19 ) ) //pin for CS, change here!!!
#define nandClose() ( IO0SET |= ( 1<<19 ) )
Так же в данной конструкции CS - это GPIO пин, который подсоединяется к CE (Chip Enable) NAND интерфейса?
Есть у кого какие мысли по этому поводу? Заранее спасибо.
Сообщение отредактировал deplen - Nov 19 2012, 15:08