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

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

?? lib_at91sam7s64a.h

?? 此例程為將ADC轉換的值通過開發版上的UART在超級終端顯示出來。用的芯片是Atmel的AT91SAM7S系列
?? H
?? 第 1 頁 / 共 5 頁
字號:
//*----------------------------------------------------------------------------
//* \fn    AT91F_TC_InterruptDisable
//* \brief Disable TC Interrupt
//*----------------------------------------------------------------------------
__inline static  void AT91F_TC_InterruptDisable(
        AT91PS_TC pTc,   // \arg  pointer to a TC controller
        unsigned int flag) // \arg  TC interrupt to be disabled
{
        pTc->TC_IDR = flag;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_TC_GetInterruptMaskStatus
//* \brief Return TC Interrupt Mask Status
//*----------------------------------------------------------------------------
__inline static  unsigned int AT91F_TC_GetInterruptMaskStatus( // \return TC Interrupt Mask Status
        AT91PS_TC pTc) // \arg  pointer to a TC controller
{
        return pTc->TC_IMR;
}

//*----------------------------------------------------------------------------
//* \fn    AT91F_TC_IsInterruptMasked
//* \brief Test if TC Interrupt is Masked 
//*----------------------------------------------------------------------------
__inline static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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 static  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;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
奇米精品一区二区三区在线观看| a4yy欧美一区二区三区| 欧美激情一区二区| 欧美mv日韩mv| 亚洲精品一区二区三区在线观看 | 成人免费观看视频| 国产一区二区成人久久免费影院| 日韩在线一区二区三区| 水蜜桃久久夜色精品一区的特点| 亚洲韩国精品一区| 亚洲成人1区2区| 日本不卡的三区四区五区| 日韩黄色免费网站| 激情图片小说一区| 成人网在线免费视频| av影院午夜一区| 91国产精品成人| 69p69国产精品| 亚洲精品在线电影| 亚洲欧洲一区二区三区| 亚洲精品乱码久久久久久| 亚洲在线中文字幕| 久久精品国产澳门| 成人午夜视频免费看| 91女神在线视频| 精品视频在线免费| 亚洲精品视频自拍| 国产精品国产三级国产| 亚洲激情自拍视频| 蜜桃av一区二区三区电影| 久久99久久久久久久久久久| 国产99久久久国产精品潘金| 91福利社在线观看| 精品国产一区久久| 亚洲精品国产成人久久av盗摄| 日韩精品亚洲专区| 成人国产精品视频| 欧美一级日韩不卡播放免费| 久久网这里都是精品| 最新成人av在线| 老司机免费视频一区二区三区| 成人性生交大片免费| 欧美高清精品3d| 国产精品国产三级国产aⅴ中文 | 欧美视频在线观看一区| 7777精品伊人久久久大香线蕉完整版 | 日韩免费高清视频| 国产精品美日韩| 免费欧美在线视频| 91小视频免费观看| 久久精品视频一区| 日本伊人精品一区二区三区观看方式| 国产不卡在线一区| 欧美一级欧美三级| 亚洲国产日韩一级| 97se亚洲国产综合自在线| 久久网站热最新地址| 午夜国产精品一区| 欧美亚洲国产一卡| 亚洲同性gay激情无套| 国产一区福利在线| 日韩精品一区在线| 亚洲123区在线观看| 日本韩国欧美国产| 国产精品国产三级国产aⅴ入口| 久久国产尿小便嘘嘘| 欧美老肥妇做.爰bbww| 一区二区三区四区精品在线视频 | 国产精品三级av| 精品一区二区三区蜜桃| 7777精品伊人久久久大香线蕉超级流畅 | 免费观看30秒视频久久| 一本一道久久a久久精品综合蜜臀| www欧美成人18+| 日韩欧美在线1卡| 国产日韩欧美制服另类| 精品亚洲porn| 欧美电影免费观看高清完整版在线 | 国产精品大尺度| 国产馆精品极品| 国产欧美日韩另类一区| 国内精品国产三级国产a久久| 日韩三级在线观看| 免费成人在线观看视频| 欧美成人a∨高清免费观看| 另类小说视频一区二区| 国产精品美女久久久久aⅴ | 欧美一二三四区在线| 亚洲图片激情小说| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 国产精品丝袜一区| 成人久久18免费网站麻豆| 国产精品视频观看| 91免费看`日韩一区二区| 亚洲免费观看高清完整版在线观看| 91在线国内视频| 亚洲成人av中文| 日韩精品专区在线影院重磅| 国内精品在线播放| 国产精品久久久久久久久免费桃花| eeuss鲁一区二区三区| 亚洲精品精品亚洲| 欧美一区二区三区在线观看视频| 免费观看在线综合| 亚洲欧洲色图综合| 69p69国产精品| 懂色av一区二区三区蜜臀| 亚洲欧美日韩系列| 日韩欧美激情一区| 成人av午夜电影| 天天色天天爱天天射综合| 久久久亚洲精品一区二区三区 | 69av一区二区三区| 粉嫩在线一区二区三区视频| 亚洲精品久久久久久国产精华液| 久久久亚洲欧洲日产国码αv| 91精品国产91热久久久做人人| 亚洲激情欧美激情| 日韩视频一区二区三区| 粉嫩aⅴ一区二区三区四区 | 色婷婷综合久久久久中文一区二区 | 国产一级精品在线| 亚洲激情第一区| 久久人人爽人人爽| 欧美日韩精品一区视频| 国产乱淫av一区二区三区| 一区二区在线电影| 久久久久国产精品厨房| 欧美日韩高清不卡| 色综合婷婷久久| 日韩国产在线一| 国产毛片精品视频| 日韩久久免费av| 99久久久无码国产精品| 久久嫩草精品久久久精品一| 欧美精品日韩精品| 免费观看成人av| 亚洲人快播电影网| 久久日韩精品一区二区五区| 欧美又粗又大又爽| 99久久精品99国产精品| 青青草国产成人av片免费| 亚洲免费电影在线| **性色生活片久久毛片| 久久综合国产精品| 日韩欧美一区二区不卡| 欧美高清精品3d| 欧美丰满嫩嫩电影| 欧美日韩一级片网站| 91极品美女在线| 久久综合久久综合九色| 99久久精品国产一区二区三区| 丝袜国产日韩另类美女| 亚洲午夜久久久久久久久电影网| 国产精品久久久久影视| 日本一区二区久久| 国产午夜精品久久久久久久| 精品国产伦一区二区三区免费| 91精品国产黑色紧身裤美女| 在线不卡中文字幕播放| 欧美卡1卡2卡| 欧美一区二区三区色| 日韩免费在线观看| 精品电影一区二区| 欧美精品一区二| 中文字幕av一区 二区| 色素色在线综合| 欧美日韩精品一区二区三区蜜桃| 欧美无乱码久久久免费午夜一区| 欧美日韩视频不卡| 国产成人在线观看免费网站| 亚洲乱码国产乱码精品精小说| 中文字幕成人在线观看| 国产精品麻豆网站| 亚洲视频一二三区| 亚洲h在线观看| 久久精品72免费观看| 国产精品一卡二卡| www.色精品| 欧美高清视频在线高清观看mv色露露十八| 欧美日韩国产成人在线免费| 欧美tickling挠脚心丨vk| 中文字幕va一区二区三区| 亚洲综合小说图片| 另类小说色综合网站| bt欧美亚洲午夜电影天堂| 在线观看日韩电影| www日韩大片| ...xxx性欧美| 免费人成黄页网站在线一区二区| 成人午夜免费av| 欧美一区二区视频在线观看 | 一本一本久久a久久精品综合麻豆| 成人一级黄色片| 欧美亚洲国产bt| 久久久久久黄色| 亚洲国产美女搞黄色| 国产一区二区三区四| 欧美专区在线观看一区| 久久综合资源网|