亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
国产一区二区在线影院| 精品成人一区二区| 亚洲一区在线视频| 欧美日韩一区二区三区四区五区| 一区二区成人在线观看| 欧美久久久久免费| 国产美女精品在线| 亚洲欧美日韩系列| 欧美日本在线视频| 国产福利91精品一区二区三区| 中文一区一区三区高中清不卡| 成人精品高清在线| 天天综合色天天| 26uuu国产在线精品一区二区| 成人av在线资源网| 婷婷国产v国产偷v亚洲高清| 久久综合九色综合97婷婷女人| 99久久精品国产一区二区三区| 午夜精品久久久久久久久久久| 欧美一级xxx| 粉嫩av一区二区三区粉嫩| 一区二区三区视频在线观看| 欧美一二三区在线| 97久久精品人人做人人爽| 秋霞电影网一区二区| 国产无人区一区二区三区| 91国偷自产一区二区三区观看 | 国产精品99久久不卡二区| 成人欧美一区二区三区1314 | 成人午夜视频在线观看| 午夜激情一区二区三区| 欧美韩国日本不卡| 日韩一区二区三区电影在线观看| 粉嫩欧美一区二区三区高清影视| 午夜精品久久久久| 国产免费成人在线视频| 9191国产精品| 色综合天天综合| 国产99久久久国产精品免费看| 亚洲一二三区不卡| 国产精品女同互慰在线看| 欧美一激情一区二区三区| 91福利小视频| k8久久久一区二区三区| 精品一区在线看| 日韩不卡免费视频| 亚洲美女区一区| 国产精品美女久久久久久久网站| 欧美一卡二卡三卡四卡| 91黄色小视频| 97久久超碰国产精品电影| 狠狠色狠狠色综合日日91app| 婷婷六月综合亚洲| 亚洲精品日日夜夜| 国产精品久久久久影院老司| 久久亚洲私人国产精品va媚药| 制服丝袜av成人在线看| 欧洲av在线精品| 91福利社在线观看| 一本到不卡精品视频在线观看| 成人在线视频首页| 国产成人免费av在线| 精品亚洲国产成人av制服丝袜| 免费观看在线综合| 免费成人在线网站| 男人的天堂久久精品| 丝袜美腿高跟呻吟高潮一区| 亚洲一区影音先锋| 亚洲午夜在线视频| 亚洲一区二区三区国产| 悠悠色在线精品| 亚洲一区av在线| 亚洲va韩国va欧美va精品| 亚洲成人免费影院| 丝袜美腿一区二区三区| 日韩不卡一区二区| 久久黄色级2电影| 久久99久久99| 精品一区二区免费视频| 国产在线麻豆精品观看| 国产一区二区三区四| 精品一区二区综合| 粉嫩av一区二区三区| 99精品欧美一区二区三区小说| 99精品视频一区| 欧美三级欧美一级| 欧美成人猛片aaaaaaa| 久久综合成人精品亚洲另类欧美| 国产人成一区二区三区影院| 中文字幕视频一区二区三区久| 一区二区三区不卡在线观看| 亚洲第一电影网| 久久国产精品第一页| 国产电影一区二区三区| 91网址在线看| 欧美男同性恋视频网站| 久久亚洲精品国产精品紫薇| 国产精品热久久久久夜色精品三区 | 日韩黄色小视频| 蜜臀av性久久久久av蜜臀妖精| 国产一区二区三区蝌蚪| 欧美一区二区三区白人| 日韩精品一区二区三区视频| 久久久影视传媒| 亚洲精品视频自拍| 紧缚奴在线一区二区三区| www.日韩大片| 欧美一区欧美二区| 国产精品网站一区| 天堂久久久久va久久久久| 国产精品一区二区91| 色视频成人在线观看免| 欧美va在线播放| 亚洲色图在线看| 久色婷婷小香蕉久久| av不卡免费电影| 欧美成人猛片aaaaaaa| 中文字幕在线播放不卡一区| 偷窥国产亚洲免费视频 | a亚洲天堂av| 欧美一区二区三区在线电影| 国产精品国产自产拍高清av王其| 性做久久久久久| 成人黄色国产精品网站大全在线免费观看| 欧美亚洲一区二区在线观看| 久久久久国产精品厨房| 亚洲成人福利片| 成人h精品动漫一区二区三区| 日韩色视频在线观看| 依依成人精品视频| 国产mv日韩mv欧美| 日韩一二三区视频| 一二三区精品福利视频| 国产精品123| 日韩免费电影一区| 亚洲午夜一区二区三区| www.色精品| 国产午夜精品久久| 久久成人久久鬼色| 在线播放中文字幕一区| 一区二区三区中文免费| 成人av免费在线播放| 久久久精品欧美丰满| 麻豆国产91在线播放| 69av一区二区三区| 久久福利视频一区二区| 911精品国产一区二区在线| 亚洲综合色噜噜狠狠| 91精品蜜臀在线一区尤物| 亚洲欧美韩国综合色| 国产69精品久久久久777| 欧美成人video| 蜜臀久久99精品久久久久宅男| 欧美亚洲综合在线| 亚洲精品成人少妇| 一本色道**综合亚洲精品蜜桃冫| 国产精品欧美综合在线| 成人午夜电影小说| 亚洲国产精品成人综合色在线婷婷 | 欧美国产精品一区| 国产精品123| 国产欧美日韩三区| 粉嫩一区二区三区在线看| 国产欧美精品一区二区色综合朱莉| 国产一区中文字幕| 日本一区二区三区四区| 国v精品久久久网| 中文字幕在线一区| 日本韩国欧美三级| 亚洲一级二级三级| 欧美精品日韩一区| 日韩高清在线电影| 欧美成人伊人久久综合网| 久久精品国产亚洲a| 日韩欧美成人一区二区| 国产精品一区在线| 国产精品免费丝袜| 91成人免费电影| 亚洲va欧美va天堂v国产综合| 91麻豆精品国产91久久久更新时间 | 91精品国产综合久久精品app | 91视频在线看| 亚洲香肠在线观看| 欧美xxx久久| 大尺度一区二区| 亚洲精品高清在线| 欧美一区二区三区在| 国产精品夜夜嗨| 亚洲欧美日韩国产另类专区| 欧美日韩一区二区三区在线看| 麻豆精品国产91久久久久久| 国产欧美日韩综合精品一区二区| eeuss影院一区二区三区| 夜夜嗨av一区二区三区四季av| 欧美精品日韩精品| 国产成人免费视频网站高清观看视频| 综合在线观看色| 91精品国产综合久久蜜臀| 国产精品系列在线观看| 一区二区三区在线观看欧美 |