亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? 2410bios.c.bak

?? 2410bios 實現(xiàn)簡單功能 裸板傳輸 跑馬燈 定時器
?? BAK
字號:
#include "def.h"
#include "2410addr.h"
#include "2410lib.h"
#include "2410slib.h"
#include "mmu.h"
#include "uart.h"
#include "timer.h"
#include "39vf160.h"
#include "LCD.h"
#include "PowerManage.h"

void call_linux(U32 a0, U32 a1, U32 a2);
void UsbMain(void);
void comdownload(void);
void NandWrite(void);
void NandLoadRun(void);
void NandErase(void);
void Function(void);
void Eth0(void);
void init_adc(void);



extern U32 downloadAddress, downloadFileSize;

U32	Console_Uart = 0;
U32	Console_Baud = 115200;
char boot_params[256];

static short DsAutoBoot;
static short NorFlashSupport = 0 ;

volatile int PwrKeyChkEnd;

//*****************************************************************************
void GetBootParam(void)
{
	U16 cmd_cnt = 0;
	char tmp[256] = {0};
	
	puts("Set boot params, press Enter to finish, Esc to abort\n");
	while(1) {
		char c = getch();
		if(c==0x1b) 
			return;
		
		if(c==0xd)
			break;
		if((c==0x8)&&(cmd_cnt)) {			
			cmd_cnt -= 1;
			tmp[cmd_cnt] = 0;
			putch(c);
			putch(' ');
			putch(c);
		}
		else {
			if(cmd_cnt<255) {
				putch(c);
				tmp[cmd_cnt++] = c;
				tmp[cmd_cnt]   = 0;
			}
		}		
	}

	for(cmd_cnt=0; tmp[cmd_cnt]; cmd_cnt++)
		boot_params[cmd_cnt] = tmp[cmd_cnt];
	boot_params[cmd_cnt] = 0;			
}

//*****************************************************************************
static __inline int RtcAlmWake(void)
{	
	return ((rBCDHOUR==rALMHOUR)&&(rBCDMIN==rALMMIN));
}

//*****************************************************************************
static void ProgNorFlash(void)
{
	if(NorFlashSupport) {
		SectorProg(0, (U16 *)downloadAddress, downloadFileSize);
	}
}

//*****************************************************************************
void SDRAM_Test(void)
{
    int i;
    U32 data;
    int memError=0;
    U32 *pt;
    
    printf("Memory Test(%xh-%xh):WR",_RAM_STARTADDRESS,(_ISR_STARTADDRESS&0xfff0000));

    pt=(U32 *)_RAM_STARTADDRESS;
    while((U32)pt<(_ISR_STARTADDRESS&0xffff0000))
    {
	*pt=(U32)pt;
	pt++;
    }

    printf("\b\bRD");
    pt=(U32 *)_RAM_STARTADDRESS;
	
    while((U32)pt<(_ISR_STARTADDRESS&0xffff0000))
    {
	data=*pt;
	if(data!=(U32)pt)
	{
	    memError=1;
	    printf("\b\bFAIL:0x%x=0x%x\n",i,data);
	    break;
	}
	pt++;
    }

    if(memError==0)printf("\b\bO.K.\n");
}
//*****************************************************************************
struct {
	void (*fun)(void);
	char *tip;
}CmdTip[] = {
				{UsbMain, "USB download file"},
				{comdownload, "Uart download file"},
				{NandWrite, "Write Nand flash with download file"},
				{NandLoadRun, "Load Pragram from Nand flash and run"},
				{NandErase, "Erase Nand flash regions"},
				{ProgNorFlash, "Write NOR flash with download file"},
				{GetBootParam, "Set boot params"},
				{EnterPowerOff, "Test Power off"},
				{SDRAM_Test, "test SDRAM Memory"},
				{Function,"function test"}, 
				{Eth0,"ethernet"}, 
				{0, 0}						
			};

//*****************************************************************************
static void AutoBoot(U32 i)
{
	static cnt = 10;		//5s
	
	if(!--cnt) {
		ReleaseBiosTimerEvent(i);
		if(!DsAutoBoot)
			NandLoadRun();
	}
	rGPBDAT ^= 1<<5;
}

/******************************************************************************
【功能說明】系統(tǒng)主函數(shù)
******************************************************************************/

int Main(U32 RstStat)
{
	int i;

//	ChangeClockDivider(1, 1);	// 1:2:4
//	ChangeMPllValue(172,4,1);	//FCLK=180.0Mhz
	SetClockDivider(0, 1);
	SetSysFclk(FCLK_96M);		//to save power, use 48M
	
	Port_Init();
	Isr_Init();

	Uart_Init(0, Console_Baud);
	Uart_Select(Console_Uart);	
	
#if 1			//bank0 modified to RO_START
	MMU_Init();	//MMU should be reconfigured or turned off for the debugger, 
	//After downloading, MMU should be turned off for the MMU based program,such as WinCE.	
#else
	MMU_EnableICache();
	UsbMain();
#endif
	
	//enable GPIO,UART0,PWM TIMER,NAND FLASH module clock
//	DisableModuleClock(CLOCK_ALL);
	EnableModuleClock(CLOCK_ALL);	

	LcdBackLightOff();

	putch('\n');

	PwrKeyChkInit();
	
	if(RstStat&1) {
		puts("Power on reset\n");
//		EnterPowerOff();
	}
	if(RstStat&4) {
		puts("Watchdog reset\n");
//		EnterPowerOff();
	}
	if(RstStat&2) {
		puts("Power-off reset\n");
		if(RtcAlmWake()) {
			puts("Alarm wake up\n");
			printf("RTC hr : %d, min : %d\nALM hr : %d, min : %d\n", rBCDHOUR, rBCDMIN, rALMHOUR, rALMMIN);
		} else if( PwrKeyWake() ) {			
			PwrKeyChkEnd = 1;
			RequestBiosTimerEvent(1, PwrKeyChk);	//reload value = 1, 10ms*1 = 10ms
			while(PwrKeyChkEnd>0);
			if(PwrKeyChkEnd!=0)
				EnterPowerOff();
			puts("Power key wake up\n");
		}
	}	
		
	rMISCCR &= ~(0x3007);		//USB port0,1 = normal, D0~D31 pull-up enable

	LcdBackLightCtl(0, 60);
	Test_Lcd_Tft_16Bpp_240_320();

	RequestBiosTimerEvent(50, AutoBoot);	//reload value = 50, 10ms*50 = 500ms
	//如果不做任何操作,自動啟動linux
	puts("************************************\n");
	puts("************************************\n");
	
//	sendmsg();    //向串口1 發(fā)R232 協(xié)議數(shù)據(jù)
//	receive_uart();
	
	
/*	uart_init();
	in_out();*/
	
	
//	init_adc(); 
/*	GetSysClock();		//輸出主頻
	
	pISR_TIMER2 = (U32)timer_service ;   //timer 中斷		
	timer_init();
	while(1);

		
	tout_init();  //蜂鳴器							
		
	pISR_UART1 =(U32)in_out;  	//串口中斷
	uart_init();

	
	
	IntInit();		//鍵盤中斷
	pISR_EINT0 =(U32)service;
	pISR_EINT2 =(U32)service;
	pISR_EINT8_23=(U32)service;
	while(1);
	
	*/
	
	//****************************************************
	if(rBWSCON&6)
	{
		U32 nor_flash_id;
		
		nor_flash_id = GetFlashID();
		puts("NOR Flash Boot, ");
		printf("Read ID is : 0x%x\n", nor_flash_id);
		
		if ( (nor_flash_id==0x278200bf) | (nor_flash_id==0x234b00bf) )
		{
			NorFlashSupport = 1 ;
			if(nor_flash_id==0x278200bf)		puts("SST39VF160 found\n");
			if(nor_flash_id==0x234b00bf)		puts("SST39VF1601 found\n");
		}
		else
			printf( "Not supported NorFlash found!!!\n" ) ;
		
	}
	else 
		puts("NAND Flash Boot\n");

	while(1)
	{
		U8 idx;
	
		puts("\nPlease select function : \n");	
		for(i=0; CmdTip[i].fun!=0; i++)
			printf("%d : %s\n", i, CmdTip[i].tip);
			
		idx = getch();
		DsAutoBoot = 1;	//when get a key press, disable auto boot
		
		idx -= '0';
		if(idx<i)
		{
			(*CmdTip[idx].fun)();
			continue;
		}
		
	}
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品日韩一区二区三区免费视频| 亚洲欧美在线视频观看| 欧美日精品一区视频| 99热精品国产| 91香蕉视频mp4| 成人福利视频在线| 99视频一区二区| 99亚偷拍自图区亚洲| 91蜜桃网址入口| 色av一区二区| 欧美日韩国产经典色站一区二区三区| 色呦呦网站一区| 色老汉av一区二区三区| 欧美做爰猛烈大尺度电影无法无天| 色呦呦国产精品| 欧美日韩中文字幕精品| 欧美人xxxx| 精品久久人人做人人爰| 日韩精品一区二区在线| 久久久国产午夜精品| 国产精品日产欧美久久久久| 一区精品在线播放| 亚洲午夜久久久久久久久久久 | 婷婷国产在线综合| 青青青爽久久午夜综合久久午夜| 蜜桃一区二区三区在线观看| 国内外成人在线| youjizz国产精品| 欧美性受极品xxxx喷水| 91精品国产综合久久香蕉麻豆 | 天天综合日日夜夜精品| 日本大胆欧美人术艺术动态| 国产一区二区电影| 色综合色综合色综合 | 一区二区在线观看免费| 午夜精品成人在线| 国产精品一区二区三区四区| 91视频在线观看| 在线播放日韩导航| 国产色一区二区| 亚洲一区视频在线| 极品销魂美女一区二区三区| www.一区二区| 91精品国产色综合久久不卡蜜臀| 久久综合av免费| 亚洲视频每日更新| 另类小说视频一区二区| 99视频超级精品| 欧美一级黄色片| 综合激情成人伊人| 人妖欧美一区二区| jizzjizzjizz欧美| 欧美电影免费观看高清完整版在线观看| 国产性做久久久久久| 午夜av一区二区三区| 成人蜜臀av电影| 日韩一区二区在线看| 成人免费一区二区三区视频| 久久精品国产999大香线蕉| 99精品久久久久久| 久久九九全国免费| 午夜国产精品影院在线观看| 99久久免费精品| 精品粉嫩aⅴ一区二区三区四区| 一区二区三区蜜桃| 成人黄色大片在线观看| 欧美大白屁股肥臀xxxxxx| 玉足女爽爽91| 国产成人精品aa毛片| 日韩欧美一二区| 舔着乳尖日韩一区| 91美女蜜桃在线| 欧美国产日韩在线观看| 久久精品99国产精品| 欧美日韩精品久久久| 亚洲精品精品亚洲| 99综合电影在线视频| 国产亚洲va综合人人澡精品| 久久99精品国产麻豆不卡| 欧美日韩国产电影| 亚洲一区二区三区四区五区中文 | 欧美精品在线视频| 亚洲人吸女人奶水| 国产99久久久国产精品潘金 | 国产精品免费久久| 精品综合免费视频观看| 欧美一区国产二区| 午夜精品影院在线观看| 在线看不卡av| 夜夜爽夜夜爽精品视频| 99re热视频这里只精品| 国产精品美女一区二区| 国产69精品久久777的优势| 久久久久久久久一| 经典三级一区二区| 精品久久人人做人人爰| 激情都市一区二区| 日韩免费一区二区三区在线播放| 日韩成人精品视频| 91精品综合久久久久久| 首页国产丝袜综合| 5858s免费视频成人| 天天影视涩香欲综合网| 欧美男人的天堂一二区| 亚洲成人www| 在线综合视频播放| 人人爽香蕉精品| 欧美电影免费观看高清完整版在线观看| 蜜臀a∨国产成人精品| 亚洲精品在线电影| 国产福利一区二区三区视频在线| 久久久精品欧美丰满| 床上的激情91.| 亚洲精品国产视频| 欧美午夜寂寞影院| 蜜臀va亚洲va欧美va天堂| 日韩一区二区三区电影在线观看| 麻豆91免费看| 久久精品亚洲精品国产欧美| 国产99精品在线观看| 综合久久给合久久狠狠狠97色| 在线看日本不卡| 日本vs亚洲vs韩国一区三区| 精品国精品国产尤物美女| 国产大陆亚洲精品国产| 最新不卡av在线| 欧美三级三级三级爽爽爽| 久久66热re国产| 国产精品视频免费看| 91免费国产在线| 天堂成人国产精品一区| 亚洲精品一区二区在线观看| 岛国av在线一区| 亚洲成人午夜影院| 精品久久一二三区| 99这里只有久久精品视频| 婷婷久久综合九色综合伊人色| 久久亚洲一区二区三区明星换脸| www.成人网.com| 亚洲v日本v欧美v久久精品| 精品国产污网站| 91在线视频18| 青椒成人免费视频| 国产精品国产成人国产三级| 欧美色综合天天久久综合精品| 久久精品国产亚洲高清剧情介绍 | 奇米精品一区二区三区在线观看| 欧美成人福利视频| 99r国产精品| 久久精品国产久精国产| 成人免费小视频| 日韩美女视频在线| 91首页免费视频| 久久国产乱子精品免费女| 中文字幕在线一区| 日韩三级.com| 91色在线porny| 久久国产精品一区二区| 亚洲一区影音先锋| 日本一二三四高清不卡| 制服丝袜日韩国产| av电影天堂一区二区在线| 久久精品国产亚洲5555| 亚洲欧美日韩久久精品| 2024国产精品| 欧美精品黑人性xxxx| 99久久99久久精品免费看蜜桃| 美腿丝袜亚洲一区| 一区二区在线观看视频在线观看| 久久久久国产成人精品亚洲午夜| 欧美日韩精品免费观看视频 | 国产三级精品视频| 4438x成人网最大色成网站| 99视频精品免费视频| 国产麻豆视频精品| 欧美a级一区二区| 午夜精品福利一区二区蜜股av | 成人丝袜18视频在线观看| 日韩电影在线一区| 亚洲自拍偷拍九九九| 国产欧美一区二区精品婷婷| 日韩欧美一区电影| 555www色欧美视频| 欧美精品在线观看播放| 91精品福利在线| 91在线国产观看| 成人免费视频app| 国产剧情一区二区三区| 久色婷婷小香蕉久久| 奇米四色…亚洲| 日本vs亚洲vs韩国一区三区| 午夜电影网一区| 亚洲高清不卡在线观看| 一区二区三区91| 亚洲日本免费电影| 亚洲欧美日韩小说| 一区二区在线观看视频 | 成人av资源下载| 国产成人精品网址| 国产成人精品免费看|