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

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

?? lib_at91sam7s64.h

?? FREE_RTOS一個FREE的小型操作系統.
?? H
?? 第 1 頁 / 共 5 頁
字號:
//* \fn    AT91F_TC_IsInterruptMasked
//* \brief Test if TC Interrupt is Masked 
//*----------------------------------------------------------------------------
__inline int AT91F_TC_IsInterruptMasked(
        AT91PS_TC pTc,   // \arg  pointer to a TC controller
        unsigned int flag) // \arg  flag to be tested
{
        return (AT91F_TC_GetInterruptMaskStatus(pTc) & 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 to enable
{
	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 to enable
{
	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 peripheral clock
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_EnablePCK (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	unsigned int pck,  // \arg Peripheral clock identifier 0 .. 7
	unsigned int mode)
{
	pPMC->PMC_PCKR[pck] = mode;
	pPMC->PMC_SCER = (1 << pck) << 8;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PMC_DisablePCK
//* \brief Enable peripheral clock
//*----------------------------------------------------------------------------
__inline void AT91F_PMC_DisablePCK (
	AT91PS_PMC pPMC, // \arg pointer to PMC controller
	unsigned int pck)  // \arg Peripheral clock identifier 0 .. 7
{
	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);
}/* *****************************************************************************
                SOFTWARE API FOR ADC
   ***************************************************************************** */
//*----------------------------------------------------------------------------
//* \fn    AT91F_ADC_EnableIt
//* \brief Enable ADC interrupt
//*----------------------------------------------------------------------------
__inline void AT91F_ADC_EnableIt (
	AT91PS_ADC pADC,     // pointer to a ADC controller
	unsigned int flag)   // IT to be enabled
{
	//* Write to the IER register
	pADC->ADC_IER = flag;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_ADC_DisableIt
//* \brief Disable ADC interrupt
//*----------------------------------------------------------------------------
__inline void AT91F_ADC_DisableIt (
	AT91PS_ADC pADC, // pointer to a ADC controller
	unsigned int flag) // IT to be disabled
{
	//* Write to the IDR register
	pADC->ADC_IDR = flag;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_ADC_GetStatus
//* \brief Return ADC Interrupt Status
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_ADC_GetStatus( // \return ADC Interrupt Status
	AT91PS_ADC pADC) // pointer to a ADC controller
{
	return pADC->ADC_SR;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_ADC_GetInterruptMaskStatus
//* \brief Return ADC Interrupt Mask Status
//*----------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
韩国av一区二区三区| 91精品国产综合久久精品性色| 成人毛片在线观看| 欧美精品123区| 国产精品久久久久7777按摩| 舔着乳尖日韩一区| 91在线免费视频观看| 精品国内片67194| 偷偷要91色婷婷| 日本精品一级二级| 国产精品国产自产拍高清av| 久久精品久久久精品美女| 色综合一区二区| 久久久99免费| 久久99久久精品欧美| 欧美日韩一区二区三区四区五区| 国产精品美女久久久久久| 韩国精品免费视频| 日韩一级片网站| 热久久国产精品| 91精品国产麻豆| 午夜精品久久久久久久99水蜜桃 | 不卡av电影在线播放| 日韩视频免费观看高清完整版 | 欧美在线观看一区二区| 中文天堂在线一区| 成人看片黄a免费看在线| 久久综合久色欧美综合狠狠| 蜜乳av一区二区| 日韩精品一区二区在线观看| 日本不卡一二三| 欧美久久婷婷综合色| 丝袜美腿亚洲综合| 欧美肥妇毛茸茸| 青青草视频一区| 精品美女一区二区| 国产麻豆精品一区二区| 久久青草欧美一区二区三区| 国产真实乱偷精品视频免| 亚洲精品在线观看网站| 国产一区二区0| 国产精品网站导航| 91色porny蝌蚪| 香蕉影视欧美成人| 日韩写真欧美这视频| 韩国中文字幕2020精品| 欧美国产精品劲爆| 一本色道亚洲精品aⅴ| 亚洲丶国产丶欧美一区二区三区| 欧美高清性hdvideosex| 蜜臀av一级做a爰片久久| 精品av综合导航| thepron国产精品| 亚洲国产精品一区二区久久恐怖片| 在线播放一区二区三区| 国产一区日韩二区欧美三区| 国产精品成人免费精品自在线观看| 一本一道波多野结衣一区二区| 亚洲成人资源在线| ww亚洲ww在线观看国产| 99久久99久久久精品齐齐| 亚洲一区中文日韩| 精品国产露脸精彩对白| 成人h版在线观看| 亚洲成av人片一区二区梦乃| 欧美va天堂va视频va在线| av在线不卡电影| 日本午夜精品视频在线观看 | 久久综合成人精品亚洲另类欧美| 丁香六月综合激情| 一区二区三区**美女毛片| 欧美一区二区播放| k8久久久一区二区三区| 日本不卡在线视频| 综合久久国产九一剧情麻豆| 日韩精品综合一本久道在线视频| 成人动漫一区二区三区| 偷拍日韩校园综合在线| 中文字幕高清不卡| 日韩欧美国产不卡| 在线观看不卡视频| 国产91对白在线观看九色| 无码av免费一区二区三区试看 | 国产欧美日韩另类视频免费观看| 在线观看网站黄不卡| 国产不卡高清在线观看视频| 午夜精品免费在线观看| 国产精品久久777777| 欧美成人三级在线| 欧美肥妇bbw| 欧美最猛黑人xxxxx猛交| 福利电影一区二区三区| 裸体在线国模精品偷拍| 亚洲超碰97人人做人人爱| ●精品国产综合乱码久久久久| 欧美xxxxx牲另类人与| 欧美日韩色一区| 91精品91久久久中77777| 波多野结衣中文一区| 国产精品白丝jk白祙喷水网站| 午夜精品123| 一区二区高清在线| 国产精品成人免费精品自在线观看| 精品国产不卡一区二区三区| 88在线观看91蜜桃国自产| 精品视频资源站| 欧美三级日韩三级| 91久久国产最好的精华液| 99精品视频中文字幕| 成人免费视频视频在线观看免费| 国产美女精品在线| 国产一区激情在线| 国产精品亚洲一区二区三区在线| 久久成人免费网| 看片网站欧美日韩| 韩国视频一区二区| 国产精品一区二区视频| 国产高清精品久久久久| 国产成人福利片| eeuss鲁片一区二区三区| 成人app网站| 色先锋资源久久综合| 在线免费观看日本欧美| 欧美影院一区二区| 欧美精品日日鲁夜夜添| 欧美一区二区三区的| 精品久久人人做人人爽| 久久久久亚洲蜜桃| 国产精品久久久久影院老司| 亚洲丝袜美腿综合| 亚洲一区二区三区四区不卡| 性久久久久久久久| 久久国产尿小便嘘嘘尿| 国产美女av一区二区三区| 成人动漫一区二区三区| 欧洲生活片亚洲生活在线观看| 在线观看视频91| 日韩精品一区二区三区蜜臀| 精品国产亚洲在线| 中文字幕亚洲精品在线观看| 亚洲一区影音先锋| 久久99精品久久久久久久久久久久| 国产一本一道久久香蕉| 91日韩精品一区| 日韩亚洲欧美中文三级| 国产精品免费丝袜| 亚洲国产裸拍裸体视频在线观看乱了| 日本最新不卡在线| 高清免费成人av| 欧美日韩欧美一区二区| 国产日产精品一区| 亚洲高清不卡在线观看| 国产激情精品久久久第一区二区 | 一区二区三区精品视频在线| 免费看日韩精品| jlzzjlzz亚洲女人18| 欧美一区二区三区视频免费| 国产三级欧美三级| 丝袜亚洲另类丝袜在线| 成人激情综合网站| 日韩一区二区精品在线观看| 亚洲欧洲日韩av| 韩国精品主播一区二区在线观看| 色噜噜狠狠色综合欧洲selulu| 精品国产91乱码一区二区三区| 亚洲欧洲综合另类在线| 精品无人码麻豆乱码1区2区| 日本精品视频一区二区三区| 久久久午夜电影| 午夜视频一区二区| 色综合天天做天天爱| 久久久美女毛片| 日韩高清不卡一区| 91免费版在线看| 国产欧美精品一区aⅴ影院| 人人狠狠综合久久亚洲| 欧美视频日韩视频| 一区在线观看视频| 国产69精品久久777的优势| 日韩欧美一二三| 视频一区二区三区入口| 欧美综合欧美视频| 国产精品国产三级国产有无不卡| 国产一区二区在线观看视频| 91精品国产色综合久久不卡蜜臀| 亚洲天堂福利av| 成人美女视频在线看| 国产欧美日韩三区| 国产老妇另类xxxxx| 日韩女优av电影在线观看| 天天色 色综合| 欧美日韩情趣电影| 性感美女极品91精品| 欧美色偷偷大香| 一区二区三区精品| 欧美日韩一级视频| 偷拍自拍另类欧美| 欧美一级精品在线| 狠狠网亚洲精品| 久久久不卡网国产精品二区|