⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 AXD下 S3C2440 nor flash program nand flash
💻 C
字号:
//================================
#include "def.h"
#include "option.h"
#include "2440addr.h"     
#include "2440lib.h"
#include "2440slib.h"    

#include "am29lv160d.h"
//================================

extern void GetCodes(unsigned short *pnManCode, unsigned short *pnDevCode, unsigned long ulStartAddr);

extern ERROR_CODE EraseBlock( int nBlock, unsigned long ulStartAddr );
extern ERROR_CODE EraseFlash(unsigned long ulStartAddr);
extern ERROR_CODE ProgramFlash( unsigned long ulAddr, unsigned short usValue );

 

void Main(void)
{
	ERROR_CODE      reCode;
	unsigned short* source_addr 	 = (unsigned short*)0x30030000; //定义数据源地址
   	unsigned int    sector_base_addr = 0x0;                         //下载到Flash的扇区首地址;
	
	unsigned short pnManCode;
	unsigned short pnDevCode;
	unsigned short usValue;
	unsigned long  ulAddr;
	unsigned long  nDataWriteCount = 0;
	unsigned long  ulStartAddr = 0x0;
	
	Port_Init();	
	
    Uart_Init(0,115200);
    Uart_Select(0);
    
    Uart_SendString("\nQQ2440 Button_test !!!\n");
    Uart_Printf("QQ2440 Button_test !!!\n\n");
    
    GetCodes(&pnManCode, &pnDevCode, ulStartAddr);
    reCode = EraseBlock(0, 0);
    reCode = EraseBlock(1, 0x004000);
    reCode = EraseBlock(2, 0x006000);
    //reCode = EraseFlash(0);
    
    ulAddr = 0;
    for( nDataWriteCount = 0; nDataWriteCount<116*1024; nDataWriteCount++ )
    {
    	usValue = *source_addr++;
    	ulAddr = (unsigned long)sector_base_addr;
    	ProgramFlash(ulAddr,usValue);
    	sector_base_addr += 2;
    }
    
    //reCode = EraseBlock(0, 0);
    //reCode = EraseFlash(0);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -