uart.c

来自「ads环境,仿真器下载bootloader vivi 源码」· C语言 代码 · 共 69 行

C
69
字号
#include "2410addr.h"
#include "def.h"
#include "2410lib.h"
#include "k9s1208.h"
//#include  "pIPL.h"
//#include  "pSPL.h"

#include "vivi.h"

void Main()
{
	int block, page;
	int page_count = 0;
	int block_count = 0;
	int table = 0;
	
	//U8 *pIPLsrc=(U8*)pIPL;
	//U8 *pSPLsrc=(U8*)pSPL;
	U8 *pvivi = (U8*)vivi;
	
	rCLKDIVN = 0x03;//1:2:4
	rMPLLCON = 0xa1031;//202.8M
	Uart_Init(202800000/4,115200);
	Uart_Printf("Entering Main\n");	
	
	
	/* NandFlash Controller init */
	NF_Init();
	
	/* Erase all blocks on Flash */
	for(block=0; block < 4096; block++)
	{
		
		if (NF_IsBadBlock(block) == 1)
			continue;
		if( NF_EraseBlock(block) != 1)
			table |= block;	
	}
	
	Uart_Printf("Erase over.\n");
	
	if (sizeof(vivi)%512)
		page_count = sizeof(vivi)/512 + 1;
	else
		page_count = sizeof(vivi)/512;
	
	if(page_count%32)
		block_count = page_count/32 +1;
	else
		block_count = page_count/32;
	
	for(block = 0; block < block_count;block++)
	{
		for(page = 0;page < 32; page++)
		{
			if(!NF_WritePage(block,page,pvivi))
				while(1);
			pvivi+=512;
			//Uart_Printf("block is :%d,page is: %d\n",block,page);
		}
	}
	
    Uart_Printf("Flash over\n");     
	
	while(1);

}

 

⌨️ 快捷键说明

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