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

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

?? lib_at91sam7s256.h

?? Atmel AT91SAM7S Interrupt example code
?? H
?? 第 1 頁 / 共 5 頁
字號:
        return pPio->PIO_PPUSR;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PIO_IsOutputDataStatusSet
//* \brief Test if PIO Output Data Status is Set 
//*----------------------------------------------------------------------------
__inline int AT91F_PIO_IsOutputDataStatusSet(
        AT91PS_PIO pPio,   // \arg  pointer to a PIO controller
        unsigned int flag) // \arg  flag to be tested
{
        return (AT91F_PIO_GetOutputDataStatus(pPio) & flag);
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PIO_IsCfgPullupStatusSet
//* \brief Test if PIO Configuration Pullup Status is Set
//*----------------------------------------------------------------------------
__inline int AT91F_PIO_IsCfgPullupStatusSet(
        AT91PS_PIO pPio,   // \arg  pointer to a PIO controller
        unsigned int flag) // \arg  flag to be tested
{
        return (~AT91F_PIO_GetCfgPullup(pPio) & flag);
}

/* *****************************************************************************
                SOFTWARE API FOR PMC
   ***************************************************************************** */
//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_CfgSysClkEnableReg
//* \brief Configure the System Clock Enable Register of the PMC controller
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_CfgSysClkEnableReg (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	unsigned int mode)
{
	//* Write to the SCER register
	pPMC->PMC_SCER = mode;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_CfgSysClkDisableReg
//* \brief Configure the System Clock Disable Register of the PMC controller
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_CfgSysClkDisableReg (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	unsigned int mode)
{
	//* Write to the SCDR register
	pPMC->PMC_SCDR = mode;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_GetSysClkStatusReg
//* \brief Return the System Clock Status Register of the PMC controller
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_PMC_GetSysClkStatusReg (
	AT91PS_PMC pPMC // pointer to a CAN controller
	)
{
	return pPMC->PMC_SCSR;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_EnablePeriphClock
//* \brief Enable peripheral clock
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_EnablePeriphClock (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	unsigned int periphIds)  // \arg IDs of peripherals
{
	pPMC->PMC_PCER = periphIds;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_DisablePeriphClock
//* \brief Disable peripheral clock
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_DisablePeriphClock (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	unsigned int periphIds)  // \arg IDs of peripherals
{
	pPMC->PMC_PCDR = periphIds;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_GetPeriphClock
//* \brief Get peripheral clock status
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_PMC_GetPeriphClock (
	AT91PS_PMC pPMC) // \arg pointer to PMC controller
{
	return pPMC->PMC_PCSR;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_CKGR_CfgMainOscillatorReg
//* \brief Cfg the main oscillator
//*----------------------------------------------------------------------------
__inline void AT91F_CKGR_CfgMainOscillatorReg (
	AT91PS_CKGR pCKGR, // \arg pointer to CKGR controller
	unsigned int mode)
{
	pCKGR->CKGR_MOR = mode;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_CKGR_GetMainOscillatorReg
//* \brief Cfg the main oscillator
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_CKGR_GetMainOscillatorReg (
	AT91PS_CKGR pCKGR) // \arg pointer to CKGR controller
{
	return pCKGR->CKGR_MOR;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_CKGR_EnableMainOscillator
//* \brief Enable the main oscillator
//*----------------------------------------------------------------------------
__inline void AT91F_CKGR_EnableMainOscillator(
	AT91PS_CKGR pCKGR) // \arg pointer to CKGR controller
{
	pCKGR->CKGR_MOR |= AT91C_CKGR_MOSCEN;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_CKGR_DisableMainOscillator
//* \brief Disable the main oscillator
//*----------------------------------------------------------------------------
__inline void AT91F_CKGR_DisableMainOscillator (
	AT91PS_CKGR pCKGR) // \arg pointer to CKGR controller
{
	pCKGR->CKGR_MOR &= ~AT91C_CKGR_MOSCEN;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_CKGR_CfgMainOscStartUpTime
//* \brief Cfg MOR Register according to the main osc startup time
//*----------------------------------------------------------------------------
__inline void AT91F_CKGR_CfgMainOscStartUpTime (
	AT91PS_CKGR pCKGR, // \arg pointer to CKGR controller
	unsigned int startup_time,  // \arg main osc startup time in microsecond (us)
	unsigned int slowClock)  // \arg slowClock in Hz
{
	pCKGR->CKGR_MOR &= ~AT91C_CKGR_OSCOUNT;
	pCKGR->CKGR_MOR |= ((slowClock * startup_time)/(8*1000000)) << 8;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_CKGR_GetMainClockFreqReg
//* \brief Cfg the main oscillator
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_CKGR_GetMainClockFreqReg (
	AT91PS_CKGR pCKGR) // \arg pointer to CKGR controller
{
	return pCKGR->CKGR_MCFR;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_CKGR_GetMainClock
//* \brief Return Main clock in Hz
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_CKGR_GetMainClock (
	AT91PS_CKGR pCKGR, // \arg pointer to CKGR controller
	unsigned int slowClock)  // \arg slowClock in Hz
{
	return ((pCKGR->CKGR_MCFR  & AT91C_CKGR_MAINF) * slowClock) >> 4;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_CfgMCKReg
//* \brief Cfg Master Clock Register
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_CfgMCKReg (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	unsigned int mode)
{
	pPMC->PMC_MCKR = mode;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_GetMCKReg
//* \brief Return Master Clock Register
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_PMC_GetMCKReg(
	AT91PS_PMC pPMC) // \arg pointer to PMC controller
{
	return pPMC->PMC_MCKR;
}

//*------------------------------------------------------------------------------
//* \fn    AT91F_PMC_GetMasterClock
//* \brief Return master clock in Hz which correponds to processor clock for ARM7
//*------------------------------------------------------------------------------
__inline unsigned int AT91F_PMC_GetMasterClock (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	AT91PS_CKGR pCKGR, // \arg pointer to CKGR controller
	unsigned int slowClock)  // \arg slowClock in Hz
{
	unsigned int reg = pPMC->PMC_MCKR;
	unsigned int prescaler = (1 << ((reg & AT91C_PMC_PRES) >> 2));
	unsigned int pllDivider, pllMultiplier;

	switch (reg & AT91C_PMC_CSS) {
		case AT91C_PMC_CSS_SLOW_CLK: // Slow clock selected
			return slowClock / prescaler;
		case AT91C_PMC_CSS_MAIN_CLK: // Main clock is selected
			return AT91F_CKGR_GetMainClock(pCKGR, slowClock) / prescaler;
		case AT91C_PMC_CSS_PLL_CLK: // PLLB clock is selected
			reg = pCKGR->CKGR_PLLR;
			pllDivider    = (reg  & AT91C_CKGR_DIV);
			pllMultiplier = ((reg  & AT91C_CKGR_MUL) >> 16) + 1;
			return AT91F_CKGR_GetMainClock(pCKGR, slowClock) / pllDivider * pllMultiplier / prescaler;
	}
	return 0;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_EnablePCK
//* \brief Enable Programmable Clock x Output
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_EnablePCK (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	unsigned int pck,  // \arg Programmable Clock x Output
	unsigned int mode)
{
	pPMC->PMC_PCKR[pck] = mode;
	pPMC->PMC_SCER = (1 << pck) << 8;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_DisablePCK
//* \brief Disable Programmable Clock x Output
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_DisablePCK (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	unsigned int pck)  // \arg Programmable Clock x Output
{
	pPMC->PMC_SCDR = (1 << pck) << 8;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_EnableIt
//* \brief Enable PMC interrupt
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_EnableIt (
	AT91PS_PMC pPMC,     // pointer to a PMC controller
	unsigned int flag)   // IT to be enabled
{
	//* Write to the IER register
	pPMC->PMC_IER = flag;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_DisableIt
//* \brief Disable PMC interrupt
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_DisableIt (
	AT91PS_PMC pPMC, // pointer to a PMC controller
	unsigned int flag) // IT to be disabled
{
	//* Write to the IDR register
	pPMC->PMC_IDR = flag;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_GetStatus
//* \brief Return PMC Interrupt Status
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_PMC_GetStatus( // \return PMC Interrupt Status
	AT91PS_PMC pPMC) // pointer to a PMC controller
{
	return pPMC->PMC_SR;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_GetInterruptMaskStatus
//* \brief Return PMC Interrupt Mask Status
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_PMC_GetInterruptMaskStatus( // \return PMC Interrupt Mask Status
	AT91PS_PMC pPMC) // pointer to a PMC controller
{
	return pPMC->PMC_IMR;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_IsInterruptMasked
//* \brief Test if PMC Interrupt is Masked
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_PMC_IsInterruptMasked(
        AT91PS_PMC pPMC,   // \arg  pointer to a PMC controller
        unsigned int flag) // \arg  flag to be tested
{
	return (AT91F_PMC_GetInterruptMaskStatus(pPMC) & flag);
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_IsStatusSet
//* \brief Test if PMC Status is Set
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_PMC_IsStatusSet(
        AT91PS_PMC pPMC,   // \arg  pointer to a PMC controller
        unsigned int flag) // \arg  flag to be tested
{
	return (AT91F_PMC_GetStatus(pPMC) & flag);
}

// ----------------------------------------------------------------------------
//  \fn    AT91F_CKGR_CfgPLLReg
//  \brief Cfg the PLL Register
// ----------------------------------------------------------------------------
__inline void AT91F_CKGR_CfgPLLReg (
	AT91PS_CKGR pCKGR, // \arg pointer to CKGR controller
	unsigned int mode)
{
	pCKGR->CKGR_PLLR = mode;
}

// ----------------------------------------------------------------------------
//  \fn    AT91F_CKGR_GetPLLReg
//  \brief Get the PLL Register
// ----------------------------------------------------------------------------
__inline unsigned int AT91F_CKGR_GetPLLReg (

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
麻豆成人久久精品二区三区红 | 99视频超级精品| 一区二区免费看| 亚洲精品一区二区三区香蕉| 91久久精品一区二区二区| 激情综合色播五月| 亚洲午夜电影网| 国产精品国产a级| 欧美精品一区二区三区久久久| 在线视频国内自拍亚洲视频| 国产精品白丝jk白祙喷水网站| 亚洲午夜在线电影| 亚洲欧洲成人自拍| 久久久高清一区二区三区| 91精品国产免费| 欧美日韩免费在线视频| 成人av在线电影| 国产aⅴ综合色| 精东粉嫩av免费一区二区三区| 三级影片在线观看欧美日韩一区二区 | 欧美日韩国产一区二区三区地区| 成人综合激情网| 国产福利一区二区三区在线视频| 日韩中文字幕91| 亚洲成国产人片在线观看| 亚洲欧美另类小说| 国产精品午夜春色av| www欧美成人18+| 欧美成人a视频| 91精品国产色综合久久不卡电影| 91国产成人在线| 91玉足脚交白嫩脚丫在线播放| 成人在线一区二区三区| 成人午夜在线播放| 日韩精品综合一本久道在线视频| 欧美三级中文字幕| 欧美日韩精品一区二区三区四区 | 激情六月婷婷久久| 久久国产福利国产秒拍| 日韩avvvv在线播放| 亚洲成人资源网| 午夜精品一区二区三区电影天堂| 一区二区三区精品视频| 亚洲视频在线观看三级| 亚洲欧美成人一区二区三区| 亚洲欧美综合另类在线卡通| 亚洲欧美区自拍先锋| 亚洲欧美二区三区| 亚洲影院久久精品| 婷婷中文字幕综合| 蜜桃视频一区二区三区| 国产尤物一区二区在线| 国产一区二区三区蝌蚪| 国产成a人无v码亚洲福利| 成人免费毛片片v| 91麻豆高清视频| 欧美三级电影精品| 日韩视频在线观看一区二区| 欧美精品一区二区久久久| 国产精品伦理在线| 亚洲综合色网站| 麻豆一区二区三| 懂色中文一区二区在线播放| 91色视频在线| 91精品国产免费久久综合| 久久看人人爽人人| 亚洲色欲色欲www| 亚洲成人综合视频| 国产一区啦啦啦在线观看| 97精品超碰一区二区三区| 欧美日韩一本到| 精品国产乱码久久久久久1区2区| 国产精品初高中害羞小美女文| 一区二区三区久久| 狠狠狠色丁香婷婷综合激情 | 处破女av一区二区| 色婷婷av一区二区三区gif | 一区二区三区视频在线观看| 五月婷婷久久综合| 高清不卡在线观看av| 色综合av在线| 久久久三级国产网站| 一区二区三区四区不卡在线 | www..com久久爱| 欧美日韩国产经典色站一区二区三区| 欧美成人女星排行榜| 亚洲人妖av一区二区| 日韩影院免费视频| 不卡视频在线看| 337p亚洲精品色噜噜| 国产精品色噜噜| 美女一区二区三区在线观看| 91麻豆自制传媒国产之光| 日韩久久精品一区| 夜夜嗨av一区二区三区| 国产乱码精品1区2区3区| 欧美性猛交一区二区三区精品| 国产午夜精品久久久久久免费视| 夜夜嗨av一区二区三区四季av| 国产激情91久久精品导航| 91麻豆精品国产91久久久资源速度 | 欧美日韩一区二区三区四区五区| 久久综合视频网| 日本强好片久久久久久aaa| 91小视频在线免费看| 久久九九影视网| 美女视频黄 久久| 欧美在线影院一区二区| 中文一区二区完整视频在线观看 | 国产一区二区三区久久悠悠色av| 欧美日韩不卡一区二区| 亚洲乱码一区二区三区在线观看| 国产精品一线二线三线| 91精品视频网| 五月天亚洲婷婷| 欧美日韩在线播放三区四区| 日韩码欧中文字| 成人高清伦理免费影院在线观看| 欧美成人一区二区三区片免费| 五月婷婷激情综合网| 欧美三级日韩在线| 亚洲综合丝袜美腿| 欧美午夜片在线看| 亚洲精品成a人| 9i看片成人免费高清| 中文字幕免费观看一区| 国产成人精品一区二| 久久久国产午夜精品| 狠狠v欧美v日韩v亚洲ⅴ| 精品噜噜噜噜久久久久久久久试看 | 亚洲精品中文在线观看| av日韩在线网站| 国产精品久久99| 成人免费毛片a| 国产精品欧美一区二区三区| 国产91精品露脸国语对白| 国产香蕉久久精品综合网| 国产成人自拍网| 国产日韩欧美精品综合| 丰满白嫩尤物一区二区| 久久久综合激的五月天| 国产69精品久久久久777| 国产精品污www在线观看| 成人av电影在线观看| 亚洲欧洲精品一区二区三区| 94色蜜桃网一区二区三区| 一区二区三区四区国产精品| 日本韩国一区二区| 三级不卡在线观看| 精品国产亚洲在线| 成人动漫一区二区在线| 亚洲欧美激情一区二区| 在线免费亚洲电影| 日韩精品一区第一页| 日韩欧美高清一区| 成人综合激情网| 亚洲精品成a人| 欧美一区二区三区在线看| 国产一区二区在线电影| 国产精品麻豆视频| 欧美在线视频你懂得| 免费看欧美女人艹b| 久久久精品tv| 91国在线观看| 久久99久久久久| 亚洲视频你懂的| 在线91免费看| 高清久久久久久| 五月婷婷色综合| 亚洲国产精品精华液2区45| 日本道色综合久久| 九九视频精品免费| 亚洲欧美中日韩| 日韩欧美一级精品久久| 成人av网址在线| 天天免费综合色| 国产精品欧美一级免费| 欧美精品在线一区二区| 岛国精品一区二区| 热久久久久久久| 中文字幕一区二区三区精华液| 欧美日韩在线不卡| 成人黄色软件下载| 日本在线不卡一区| √…a在线天堂一区| 日韩一级高清毛片| 色综合久久久网| 奇米777欧美一区二区| 亚洲三级在线免费| 精品国内二区三区| 欧美视频一区在线观看| 成人网页在线观看| 久久www免费人成看片高清| 亚洲日本青草视频在线怡红院| 精品乱人伦小说| 欧美老年两性高潮| 97久久久精品综合88久久| 激情五月婷婷综合网| 婷婷激情综合网| 曰韩精品一区二区|