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

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

?? lib_at91sam7x256.h

?? freertosV4.40 是一種small的嵌入式系統。利于嵌入式開好者入門學習嵌入式操作系統。通過對于源碼的學習可以很好的掌握freertos的運行機制。
?? H
?? 第 1 頁 / 共 5 頁
字號:
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_PIO_GetCfgPullup
//* \brief Return PIO Configuration Pullup
//*----------------------------------------------------------------------------
__inline unsigned int AT91F_PIO_GetCfgPullup( // \return PIO Configuration Pullup
        AT91PS_PIO pPio) // \arg  pointer to a PIO controller
{
        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 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 RSTC
   ***************************************************************************** */
//*----------------------------------------------------------------------------
//* \fn    AT91F_RSTSoftReset
//* \brief Start Software Reset
//*----------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲色图.com| 一区二区三区久久久| 久久久久久久久99精品| 中文字幕成人网| 一区二区在线观看av| 日韩不卡手机在线v区| 国产精品亚洲а∨天堂免在线| 亚洲一区欧美一区| 国产成人精品免费视频网站| 欧美性感一区二区三区| 国产亚洲一区二区三区在线观看| 国产精品乱人伦中文| 蜜臀av一区二区在线观看| 精品一区二区三区日韩| 色婷婷av一区二区三区gif| 在线综合+亚洲+欧美中文字幕| 国产日本欧洲亚洲| 天堂午夜影视日韩欧美一区二区| 成人高清在线视频| 久久久久久综合| 日韩和的一区二区| 国产成人免费xxxxxxxx| 欧美久久高跟鞋激| 亚洲精品日日夜夜| 国产白丝网站精品污在线入口| 91精品国产aⅴ一区二区| 国产精品热久久久久夜色精品三区 | 美女一区二区视频| 一本久道久久综合中文字幕| 日韩一区二区三区电影在线观看 | 国产欧美日韩激情| 免费观看一级特黄欧美大片| 色久综合一二码| 欧美高清在线精品一区| 韩国精品免费视频| 欧美一区二区三区公司| 中文字幕国产一区二区| 丁香婷婷综合激情五月色| 日韩精品中文字幕在线一区| 日本一区中文字幕| 色婷婷av一区二区三区gif| 中文字幕中文字幕一区| 国产成人在线观看免费网站| 国产一区 二区 三区一级| 日韩欧美一卡二卡| 激情伊人五月天久久综合| 欧美一三区三区四区免费在线看| 亚洲第一av色| 精品视频一区二区不卡| 亚洲一区在线观看免费观看电影高清| 成人av电影在线| 久久美女艺术照精彩视频福利播放| 久久成人羞羞网站| 久久亚洲一区二区三区明星换脸| 久久精品国产亚洲aⅴ| 欧美不卡一区二区三区四区| 亚洲电影欧美电影有声小说| 欧美日韩亚洲综合在线| 亚洲mv在线观看| 这里只有精品99re| 丝袜美腿亚洲一区二区图片| 7878成人国产在线观看| 美女视频黄频大全不卡视频在线播放| 91精品国产综合久久久久| 免费观看在线色综合| 精品久久久久久久久久久久久久久 | 欧美韩国日本不卡| 色婷婷亚洲一区二区三区| 日本在线不卡视频| 国产精品视频看| 欧美日韩国产免费| 国产精品一区二区在线播放| 亚洲美女免费视频| 久久这里都是精品| 91麻豆文化传媒在线观看| 免费人成黄页网站在线一区二区| 国产免费久久精品| 7777精品伊人久久久大香线蕉完整版 | 亚洲一区二区在线免费观看视频| 精品久久久久久综合日本欧美| 91麻豆视频网站| 国产一区二三区好的| 亚洲成av人片www| 亚洲欧洲精品一区二区三区| 91精品国产欧美日韩| 色哟哟精品一区| 国产一区二区三区免费观看 | 国产精品久久福利| 日韩欧美一区二区久久婷婷| 91福利在线观看| 成人永久aaa| 韩国视频一区二区| 天涯成人国产亚洲精品一区av| 亚洲视频一区在线| 国产无人区一区二区三区| 欧美一区二区美女| 91成人看片片| 色综合久久久久综合体桃花网| 国产电影精品久久禁18| 久久国内精品自在自线400部| 亚洲福利视频一区| 亚洲伦理在线免费看| 国产精品免费看片| 久久老女人爱爱| 亚洲精品一线二线三线| 欧美一级高清大全免费观看| 欧美日韩精品电影| 91高清在线观看| 欧美综合色免费| 91国偷自产一区二区三区观看| 99精品视频在线观看免费| 成人手机电影网| 国产成人鲁色资源国产91色综 | 亚洲国产精品精华液ab| 精品剧情在线观看| 欧美mv日韩mv| 2017欧美狠狠色| 久久久www免费人成精品| 精品国产乱码久久久久久牛牛 | 国产欧美一区二区三区沐欲| 日韩精品一区二区三区四区 | 国内精品视频一区二区三区八戒| 麻豆91在线观看| 激情久久五月天| 粉嫩av一区二区三区在线播放| 成人丝袜视频网| 色哟哟亚洲精品| 欧美日韩免费一区二区三区| 在线不卡中文字幕| 日韩欧美精品在线| 欧美精品一区二区三区蜜臀| 国产亚洲人成网站| 亚洲欧洲成人av每日更新| 亚洲欧美日韩电影| 怡红院av一区二区三区| 亚洲第一福利一区| 久久超碰97人人做人人爱| 国产夫妻精品视频| 91欧美一区二区| 欧美老女人第四色| 精品国产制服丝袜高跟| 国产日韩三级在线| 亚洲综合色在线| 久久机这里只有精品| av激情综合网| 欧美日韩免费在线视频| 欧美精品一区二区三区蜜臀| 亚洲欧美日本韩国| 麻豆精品一二三| 99久久精品免费看国产 | 91色视频在线| 欧美一区二区精品久久911| 中文一区一区三区高中清不卡| 亚洲免费在线播放| 久久99精品久久久久| 国产精品正在播放| 欧美日韩亚洲国产综合| 久久九九影视网| 婷婷综合久久一区二区三区| 国产91富婆露脸刺激对白| 欧美日韩免费一区二区三区| 国产欧美精品一区二区色综合朱莉| 亚洲图片有声小说| av网站免费线看精品| 26uuu精品一区二区在线观看| 亚洲精品乱码久久久久久黑人 | 国产精品视频在线看| 婷婷中文字幕一区三区| 不卡电影一区二区三区| 日韩你懂的在线观看| 亚洲一区二区黄色| 成人av在线观| 久久综合色8888| 奇米四色…亚洲| 欧美视频一区二区三区在线观看| 久久精品视频一区二区| 美女一区二区三区在线观看| 欧美午夜精品理论片a级按摩| 日本一区二区综合亚洲| 麻豆国产精品官网| 欧美日韩五月天| 亚洲最新视频在线观看| 99re免费视频精品全部| 久久久精品黄色| 日本成人超碰在线观看| 欧美日韩亚洲综合在线| 亚洲精品ww久久久久久p站| 99麻豆久久久国产精品免费| 久久精品视频在线免费观看| 激情文学综合丁香| 久久综合久久综合亚洲| 国内精品免费在线观看| 欧美成人综合网站| 久久国产人妖系列| 日韩精品专区在线影院观看| 开心九九激情九九欧美日韩精美视频电影| 欧美色国产精品| 亚洲成av人**亚洲成av**| 欧美在线free| 亚瑟在线精品视频|