📄 norflash_test.c
字号:
/*****************************************************************************
* norflash_test.c: External NOR FLASH test main C entry file for NXP
* LPC23xx/24xx Family Microprocessors
*
* Copyright(C) 2006, NXP Semiconductor
* All rights reserved.
*
* History
* 2006.07.14 ver 1.00 Prelimnary version, first Release
*
******************************************************************************/
#include "LPC2468.h" /* LPC23xx/24xx definitions */
#include "type.h"
#include "irq.h"
#include "target.h"
#include "timer.h"
#include "uart0.h"
#include "ex_norflash.h"
/*****************************************************************************
** Main Function main()
******************************************************************************/
int main (void)
{
DWORD i,j;
volatile WORD *ip;
DWORD NorFlashAdr;
TargetResetInit();
UART0Init(9600);
NORFLASHInit();
if ( NORFLASHCheckID() == FALSE )
{
UART0_puts("NOR Flash ID error!\r\n");
while ( 1 );
}
// NORFLASHErase(); /* Chip erase ,实际执行结果不对*/
NorFlashAdr = 0;
for(j=0;j<=30;j++) // 4号扇区到34号扇区
{
NORFLASHSectorErase(j); //erase sector;
/* Write to flash with pattern 0xAA55 and 0xA55A */
for ( i = 0; i < SECTOR_SIZE/2; i++ )
{
NORFLASHWriteWord( NorFlashAdr, 0xAA55 );
NorFlashAdr++;
NORFLASHWriteWord( NorFlashAdr, 0xA55A );
NorFlashAdr++;
}
/* Verify */
for ( i = NorFlashAdr; i < SECTOR_SIZE/2; i+=2 )
{
ip = GET_ADDR(i);
if ( (*ip & 0xFFFF) != 0xAA55 )
{
UART0_puts("NOR Flash Verify error!\r\n");
while ( 1 );
}
ip = GET_ADDR(i+1);
if ( (*ip & 0xFFFF) != 0xA55A )
{
UART0_puts("NOR Flash verify error!\r\n");
while ( 1 );
}
}
}
UART0_puts("NOR Flash test successed!\r\n");
while(1);
}
/*****************************************************************************
** End Of File
*****************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -