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

📄 uart.c

📁 ads环境,仿真器下载bootloader vivi 源码
💻 C
字号:
#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 + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -