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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? c_start.c

?? ucos porting to arm946
?? C
?? 第 1 頁 / 共 2 頁
字號:
//*----------------------------------------------------------------------------
//*         ATMEL Microcontroller Software Support  -  ROUSSET  -
//*----------------------------------------------------------------------------
//* The software is delivered "AS IS" without warranty or condition of any
//* kind, either express, implied or statutory. This includes without
//* limitation any warranty or condition with respect to merchantability or
//* fitness for any particular purpose, or against the infringements of
//* intellectual property rights of others.
//*----------------------------------------------------------------------------
//* File Name           : lib_AT91RM9200.h
//* Object              : AT91RM9200 inlined functions
//* Generated           : AT91 SW Application Group  04/16/2003 (12:30:07)
//*
//* CVS Reference       : /lib_pdc.h/1.2/Tue Jul 02 11:29:40 2002//
//* CVS Reference       : /lib_dbgu.h/1.1/Fri Jan 31 11:18:40 2003//
//* CVS Reference       : /lib_rtc_1245d.h/1.1/Fri Jan 31 11:19:12 2003//
//* CVS Reference       : /lib_ssc.h/1.4/Fri Jan 31 11:19:20 2003//
//* CVS Reference       : /lib_spi_AT91RMxxxx.h/1.2/Fri Jan 31 11:19:32 2003//
//* CVS Reference       : /lib_tc_1753b.h/1.1/Fri Jan 31 11:20:02 2003//
//* CVS Reference       : /lib_pmc.h/1.3/Thu Nov 14 06:40:46 2002//
//* CVS Reference       : /lib_pio.h/1.3/Fri Jan 31 11:18:56 2003//
//* CVS Reference       : /lib_twi.h/1.2/Fri Jan 31 11:19:38 2003//
//* CVS Reference       : /lib_usart.h/1.5/Thu Nov 21 15:01:54 2002//
//* CVS Reference       : /lib_mci.h/1.2/Wed Nov 20 13:18:56 2002//
//* CVS Reference       : /lib_aic.h/1.3/Fri Jul 12 06:46:12 2002//
//* CVS Reference       : /lib_udp.h/1.3/Fri Jan 31 11:19:48 2003//
//* CVS Reference       : /lib_st.h/1.4/Fri Jan 31 11:20:14 2003//
//*----------------------------------------------------------------------------

#include "lib_AT91RM9200.h"

//*----------------------------------------------------------------------------
//*         ATMEL Microcontroller Software Support  -  ROUSSET  -
//*----------------------------------------------------------------------------
//* The software is delivered "AS IS" without warranty or condition of any
//* kind, either express, implied or statutory. This includes without
//* limitation any warranty or condition with respect to merchantability or
//* fitness for any particular purpose, or against the infringements of
//* intellectual property rights of others.
//*----------------------------------------------------------------------------
//* File Name           : init_c.c
//* Object              : Low level initialisations written in C
//* Creation            : FB   23/10/2002
//*
//*----------------------------------------------------------------------------

/////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////////

#define	FALSE					0
#define	TRUE					1
#define	DELAY_PLL				200
#define DELAY_MAIN_FREQ			200

/////////////////////////////////////////////////////////////////////////////////////////////////////
// Configuration for a Quartz 18.432000 MHz
/////////////////////////////////////////////////////////////////////////////////////////////////////

#define	PLLAR 					0x2026BE04	//* 179,712000 MHz for PCK 0x20263E04
#define	PLLBR 					0x10483E0E	//* 48,054857 MHz (divider by 2 for USB)
#define	MCKR  					0x00000202	//* PCK/3 = MCK Master Clock = 59,904000MHz with PLLA selected 0x00000202
#define SLOWCLOCK				32768		//* In Hz

/////////////////////////////////////////////////////////////////////////////////////////////////////
// Frequencies Range
/////////////////////////////////////////////////////////////////////////////////////////////////////

#define INPUT_FREQ_MIN			900000
#define INPUT_FREQ_MAX			32000000


#define BASE_EBI_CS0_ADDRESS	0x10000000	//* base address to access memory on CS0
#define BASE_EBI_CS1_ADDRESS	0x20000000	//* base address to access memory on CS1

#define OUTPUT_FREQ_MIN			80000000
#define OUTPUT_FREQ_MAX			240000000


//*----------------------------------------------------------------------------
//* \fn    AT91F_DBGU_Printk
//* \brief This function is used to send a string through the DBGU channel (Very low level debugging)
//*----------------------------------------------------------------------------
void AT91F_DBGU_Printk(
	char *buffer) // \arg pointer to a string ending by \0
{
	while(*buffer != '\0') {
		while (!AT91F_US_TxReady((AT91PS_USART)AT91C_BASE_DBGU));
		AT91F_US_PutChar((AT91PS_USART)AT91C_BASE_DBGU, *buffer++);
	}
}

/*----------------------------------------------------------------------------	*/
/* \fn    AT91F_DataAbort							*/
/* \brief This function reports an Abort					*/
/*----------------------------------------------------------------------------	*/
void AT91F_SpuriousHandler() 
{
	AT91F_DBGU_Printk("-F- Spurious Interrupt detected\n\r");
	while (1);
}


/*----------------------------------------------------------------------------	*/
/* \fn    AT91F_DataAbort							*/
/* \brief This function reports an Abort					*/
/*----------------------------------------------------------------------------	*/
void AT91F_DataAbort() 
{
	AT91F_DBGU_Printk("-F- Data Abort detected\n\r");
	while (1);
}

/*----------------------------------------------------------------------------	*/
/* \fn    AT91F_FetchAbort							*/
/* \brief This function reports an Abort					*/
/*----------------------------------------------------------------------------	*/
void AT91F_FetchAbort()
{
	AT91F_DBGU_Printk("-F- Prefetch Abort detected\n\r");
	while (1);
}

/*----------------------------------------------------------------------------	*/
/* \fn    AT91F_Undef								*/
/* \brief This function reports an Abort					*/
/*----------------------------------------------------------------------------	*/
void AT91F_Undef() 
{
	AT91F_DBGU_Printk("-F- Undef detected\n\r");
	while (1);
}

/*----------------------------------------------------------------------------	*/
/* \fn    AT91F_UndefHandler							*/
/* \brief This function reports that no handler have been set for current IT	*/
/*----------------------------------------------------------------------------	*/
void AT91F_UndefHandler() 
{
	AT91F_DBGU_Printk("-F- Undef detected\n\r");
	while (1);
}


//*----------------------------------------------------------------------------
//* \fn    AT91F_WaitForMainClockFrequency
//* \brief This function performs very low level HW initialization
//*----------------------------------------------------------------------------
unsigned char AT91F_WaitForMainClockFrequency()
{
	volatile char	tmp	= 0;

/////////////////////////////////////////////////////////////////////////////////////////////////////
// Step 2.
// Checking the Main Oscillator Frequency (Optional)
/////////////////////////////////////////////////////////////////////////////////////////////////////
    AT91C_BASE_CKGR->CKGR_MOR=0x1;
	//* Determine the main clock frequency
	
	while(!(AT91C_BASE_CKGR->CKGR_MCFR & AT91C_CKGR_MAINRDY) && (tmp++ < DELAY_MAIN_FREQ));

	if (tmp >= DELAY_MAIN_FREQ)
		return FALSE;

	return TRUE;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_CheckPLL_FrequencyRange
//* \brief This function performs very low level HW initialiszation
//*----------------------------------------------------------------------------
unsigned char AT91F_CheckPLL_FrequencyRange(int MainClock,int pllDivider ,int pllMultiplier)
{
	if(pllDivider == 0)
		return FALSE;

	//* Check Input Frequency
	if( ((MainClock/pllDivider) < INPUT_FREQ_MIN)
	 || ((MainClock/pllDivider) > INPUT_FREQ_MAX) )
		return FALSE;

	//* Check Output Frequency
	if( ((MainClock/pllDivider*pllMultiplier) < OUTPUT_FREQ_MIN)
	 || ((MainClock/pllDivider*pllMultiplier) > OUTPUT_FREQ_MAX) )
		return FALSE;

	return TRUE;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_InitClocks
//* \brief This function performs very low level HW initialization
//*----------------------------------------------------------------------------
unsigned char AT91F_InitClocks(int PLLAR_Register,int PLLBR_Register ,int MCKR_Register)
{
	volatile char 	tmp = 0;
	unsigned int	MainClock;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜桃视频一区二区| 欧美亚洲高清一区二区三区不卡| 成人app网站| 欧美一级爆毛片| 亚洲一区二区精品视频| 国产高清精品网站| 日韩久久久精品| 亚洲一区二区精品3399| 成人理论电影网| 久久一日本道色综合| 日本在线播放一区二区三区| 色偷偷成人一区二区三区91| 中文字幕不卡在线观看| 久久精品国产99国产精品| 欧美一区二区三区影视| 日本一区二区三区久久久久久久久不 | 国产麻豆精品久久一二三| 欧美色电影在线| 亚洲自拍偷拍图区| 色乱码一区二区三区88| 中文字幕一区视频| 成人免费看视频| 国产日产精品一区| 国产一区二区三区免费| 久久综合网色—综合色88| 蜜桃传媒麻豆第一区在线观看| 欧美日韩在线三级| 五月天中文字幕一区二区| 在线看国产一区| 亚洲综合色成人| 欧美影视一区在线| 午夜精品久久久久久久久| 欧美日韩另类一区| 日日夜夜精品视频免费| 4438x成人网最大色成网站| 免费观看在线综合色| 欧美一区中文字幕| 久久精品国产99国产精品| 精品日产卡一卡二卡麻豆| 国产老妇另类xxxxx| 中文字幕精品—区二区四季| 97久久精品人人澡人人爽| 亚洲欧洲色图综合| 在线精品视频一区二区三四| 天堂va蜜桃一区二区三区| 日韩视频在线一区二区| 精品一二三四在线| 国产精品欧美一区二区三区| 91污在线观看| 亚洲午夜电影在线| 精品国产91乱码一区二区三区| 国产精品性做久久久久久| 亚洲三级电影网站| 欧美日韩精品一区视频| 国产在线不卡一区| 日韩理论电影院| 91精品国产乱码久久蜜臀| 国产又黄又大久久| 一区二区三区精品在线观看| 制服丝袜亚洲播放| 国产91清纯白嫩初高中在线观看 | 成人免费电影视频| 亚洲一区二区三区精品在线| 2021中文字幕一区亚洲| 91丝袜美腿高跟国产极品老师| 五月天婷婷综合| 国产农村妇女毛片精品久久麻豆 | 精品国内片67194| 成人av在线资源网| 日日夜夜精品视频免费| 国产精品免费看片| 欧美一区二区三区免费| 成人黄色小视频| 免费高清视频精品| 亚洲欧美欧美一区二区三区| 日韩一卡二卡三卡| 91丨porny丨首页| 精品一区二区三区在线观看国产| 亚洲男人的天堂一区二区| 精品国产乱码久久久久久夜甘婷婷| 色天使色偷偷av一区二区| 国内精品嫩模私拍在线| 亚洲超碰97人人做人人爱| 国产精品麻豆视频| 精品三级在线观看| 欧美日韩日日夜夜| 99国产一区二区三精品乱码| 精品一区免费av| 首页国产欧美日韩丝袜| 依依成人综合视频| 亚洲色图欧洲色图婷婷| 日本一区二区三区国色天香| 欧美成人在线直播| 91精品国产乱| 91麻豆精品国产综合久久久久久| 91在线视频播放地址| 国产成人免费高清| 激情av综合网| 国产一区二区三区香蕉 | 成人黄色av电影| 国产在线精品一区二区夜色| 亚洲bt欧美bt精品| 亚洲欧美日韩国产一区二区三区| 国产欧美一区二区三区鸳鸯浴 | 成人免费视频caoporn| 国内精品久久久久影院色| 麻豆91在线播放免费| 日韩激情一区二区| 亚洲成av人综合在线观看| 亚洲国产成人av| 亚洲午夜在线电影| 亚洲一区二区欧美日韩| 亚洲综合图片区| 亚洲一区影音先锋| 国产一区在线看| 久久er99精品| 国产乱子伦视频一区二区三区 | 免费人成在线不卡| 日韩国产精品久久| 毛片不卡一区二区| 九色综合狠狠综合久久| 九色|91porny| 国产成人精品亚洲777人妖| 国产成人免费xxxxxxxx| av在线综合网| 欧美日韩中文另类| 日韩一区二区在线看| 久久久久久久久久美女| 欧美极品aⅴ影院| 亚洲免费资源在线播放| 亚洲sss视频在线视频| 麻豆91免费看| 成人免费视频视频| 欧美在线视频日韩| 日韩欧美的一区二区| 日本一区二区三区久久久久久久久不| 国产精品久久久久一区二区三区| 亚洲品质自拍视频| 奇米一区二区三区| 成人av电影观看| 欧美日韩不卡一区| 久久久精品免费观看| 亚洲女人****多毛耸耸8| 日本不卡中文字幕| 成人国产精品免费网站| 欧美系列在线观看| 国产亚洲精品超碰| 亚洲一区欧美一区| 国产精品影视天天线| 色综合天天性综合| 欧美一区午夜精品| 国产精品久久久久久久久图文区 | 欧美日韩国产一区| 久久久亚洲精华液精华液精华液| 亚洲精品你懂的| 韩国精品主播一区二区在线观看| 色88888久久久久久影院按摩| 精品噜噜噜噜久久久久久久久试看 | 欧美色综合影院| 久久精品视频免费观看| 亚洲一区av在线| 国产精品正在播放| 91精品国产综合久久蜜臀| 亚洲国产精品二十页| 日韩精品色哟哟| 色综合久久中文综合久久97| 久久久久一区二区三区四区| 午夜成人在线视频| 91蜜桃婷婷狠狠久久综合9色| 欧美大片在线观看一区| 亚洲一区中文在线| 成人午夜视频在线| 欧美成人欧美edvon| 亚洲国产精品久久一线不卡| 国产精品18久久久久久久久 | 在线观看亚洲a| 国产精品免费免费| 国模一区二区三区白浆| 精品视频一区 二区 三区| 亚洲欧美日韩国产手机在线 | 国产精品资源在线| 日韩亚洲欧美中文三级| 夜夜亚洲天天久久| 色婷婷激情久久| 综合在线观看色| 成人精品在线视频观看| 久久看人人爽人人| 国产精品一级在线| 久久蜜桃一区二区| 国产成人精品网址| 久久噜噜亚洲综合| 国产河南妇女毛片精品久久久| 精品免费一区二区三区| 免费观看一级欧美片| 欧美日韩精品久久久| 天天亚洲美女在线视频| 欧美色网站导航| 性做久久久久久| 欧美日韩精品一区二区在线播放| 亚洲午夜成aⅴ人片|