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

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

?? sysctl.c

?? freertosV4.40 是一種small的嵌入式系統。利于嵌入式開好者入門學習嵌入式操作系統。通過對于源碼的學習可以很好的掌握freertos的運行機制。
?? C
?? 第 1 頁 / 共 5 頁
字號:
//
//! Disables a peripheral in deep-sleep mode.
//!
//! \param ulPeripheral is the peripheral to disable in deep-sleep mode.
//!
//! This function causes a peripheral to stop operating when the processor goes
//! into deep-sleep mode.  Disabling peripherals while in deep-sleep mode helps
//! to lower the current draw of the device, and can keep peripherals that
//! require a particular clock frequency from operating when the clock changes
//! as a result of entering deep-sleep mode.  If enabled (via
//! SysCtlPeripheralEnable()), the peripheral will automatically resume
//! operation when the processor leaves deep-sleep mode, maintaining its entire
//! state from before deep-sleep mode was entered.
//!
//! Deep-sleep mode clocking of peripherals must be enabled via
//! SysCtlPeripheralClockGating(); if disabled, the peripheral deep-sleep mode
//! configuration is maintained but has no effect when deep-sleep mode is
//! entered.
//!
//! The \b ulPeripheral argument must be one of the following values:
//! \b SYSCTL_PERIPH_PWM, \b SYSCTL_PERIPH_ADC, \b SYSCTL_PERIPH_WDOG,
//! \b SYSCTL_PERIPH_UART0, \b SYSCTL_PERIPH_UART1, \b SYSCTL_PERIPH_SSI,
//! \b SYSCTL_PERIPH_QEI, \b SYSCTL_PERIPH_I2C, \b SYSCTL_PERIPH_TIMER0,
//! \b SYSCTL_PERIPH_TIMER1, \b SYSCTL_PERIPH_TIMER2, \b SYSCTL_PERIPH_COMP0,
//! \b SYSCTL_PERIPH_COMP1, \b SYSCTL_PERIPH_COMP2, \b SYSCTL_PERIPH_GPIOA,
//! \b SYSCTL_PERIPH_GPIOB, \b SYSCTL_PERIPH_GPIOC, \b SYSCTL_PERIPH_GPIOD, or
//! \b SYSCTL_PERIPH_GPIOE.
//!
//! \return None.
//
//*****************************************************************************
#if defined(GROUP_peripheraldeepsleepdisable) || defined(BUILD_ALL) || \
    defined(DOXYGEN)
void
SysCtlPeripheralDeepSleepDisable(unsigned long ulPeripheral)
{
    //
    // Check the arguments.
    //
    ASSERT((ulPeripheral == SYSCTL_PERIPH_PWM) ||
           (ulPeripheral == SYSCTL_PERIPH_ADC) ||
           (ulPeripheral == SYSCTL_PERIPH_WDOG) ||
           (ulPeripheral == SYSCTL_PERIPH_UART0) ||
           (ulPeripheral == SYSCTL_PERIPH_UART1) ||
           (ulPeripheral == SYSCTL_PERIPH_SSI) ||
           (ulPeripheral == SYSCTL_PERIPH_QEI) ||
           (ulPeripheral == SYSCTL_PERIPH_I2C) ||
           (ulPeripheral == SYSCTL_PERIPH_TIMER0) ||
           (ulPeripheral == SYSCTL_PERIPH_TIMER1) ||
           (ulPeripheral == SYSCTL_PERIPH_TIMER2) ||
           (ulPeripheral == SYSCTL_PERIPH_COMP0) ||
           (ulPeripheral == SYSCTL_PERIPH_COMP1) ||
           (ulPeripheral == SYSCTL_PERIPH_COMP2) ||
           (ulPeripheral == SYSCTL_PERIPH_GPIOA) ||
           (ulPeripheral == SYSCTL_PERIPH_GPIOB) ||
           (ulPeripheral == SYSCTL_PERIPH_GPIOC) ||
           (ulPeripheral == SYSCTL_PERIPH_GPIOD) ||
           (ulPeripheral == SYSCTL_PERIPH_GPIOE));

    //
    // Disable this peripheral in deep-sleep mode.
    //
    HWREG(g_pulDCGCRegs[ulPeripheral >> 28]) &= ~(ulPeripheral & 0x0fffffff);
}
#endif

//*****************************************************************************
//
//! Controls peripheral clock gating in sleep and deep-sleep mode.
//!
//! \param bEnable is a boolean that is \b true if the sleep and deep-sleep
//! peripheral configuration should be used and \b false if not.
//!
//! This function controls how peripherals are clocked when the processor goes
//! into sleep or deep-sleep mode.  By default, the peripherals are clocked the
//! same as in run mode; if peripheral clock gating is enabled they are clocked
//! according to the configuration set by SysCtlPeripheralSleepEnable(),
//! SysCtlPeripheralSleepDisable(), SysCtlPeripheralDeepSleepEnable(), and
//! SysCtlPeripheralDeepSleepDisable().
//!
//! \return None.
//
//*****************************************************************************
#if defined(GROUP_peripheralclockgating) || defined(BUILD_ALL) || \
    defined(DOXYGEN)
void
SysCtlPeripheralClockGating(tBoolean bEnable)
{
    //
    // Enable peripheral clock gating as requested.
    //
    if(bEnable)
    {
        HWREG(SYSCTL_RCC) |= SYSCTL_RCC_ACG;
    }
    else
    {
        HWREG(SYSCTL_RCC) &= ~(SYSCTL_RCC_ACG);
    }
}
#endif

//*****************************************************************************
//
//! Registers an interrupt handler for the system control interrupt.
//!
//! \param pfnHandler is a pointer to the function to be called when the system
//! control interrupt occurs.
//!
//! This sets the handler to be called when a system control interrupt occurs.
//! This will enable the global interrupt in the interrupt controller; specific
//! system control interrupts must be enabled via SysCtlIntEnable().  It is the
//! interrupt handler's responsibility to clear the interrupt source via
//! SysCtlIntClear().
//!
//! System control can generate interrupts when the PLL achieves lock, if the
//! internal LDO current limit is exceeded, if the internal oscillator fails,
//! if the main oscillator fails, if the internal LDO output voltage droops too
//! much, if the external voltage droops too much, or if the PLL fails.
//!
//! \sa IntRegister() for important information about registering interrupt
//! handlers.
//!
//! \return None.
//
//*****************************************************************************
#if defined(GROUP_intregister) || defined(BUILD_ALL) || defined(DOXYGEN)
void
SysCtlIntRegister(void (*pfnHandler)(void))
{
    //
    // Register the interrupt handler, returning an error if an error occurs.
    //
    IntRegister(INT_SYSCTL, pfnHandler);

    //
    // Enable the system control interrupt.
    //
    IntEnable(INT_SYSCTL);
}
#endif

//*****************************************************************************
//
//! Unregisters the interrupt handler for the system control interrupt.
//!
//! This function will clear the handler to be called when a system control
//! interrupt occurs.  This will also mask off the interrupt in the interrupt
//! controller so that the interrupt handler no longer is called.
//!
//! \sa IntRegister() for important information about registering interrupt
//! handlers.
//!
//! \return None.
//
//*****************************************************************************
#if defined(GROUP_intunregister) || defined(BUILD_ALL) || defined(DOXYGEN)
void
SysCtlIntUnregister(void)
{
    //
    // Disable the interrupt.
    //
    IntDisable(INT_SYSCTL);

    //
    // Unregister the interrupt handler.
    //
    IntUnregister(INT_SYSCTL);
}
#endif

//*****************************************************************************
//
//! Enables individual system control interrupt sources.
//!
//! \param ulInts is a bit mask of the interrupt sources to be enabled.  Must
//! be a logical OR of \b SYSCTL_INT_PLL_LOCK, \b SYSCTL_INT_CUR_LIMIT,
//! \b SYSCTL_INT_IOSC_FAIL, \b SYSCTL_INT_MOSC_FAIL, \b SYSCTL_INT_POR,
//! \b SYSCTL_INT_BOR, and/or \b SYSCTL_INT_PLL_FAIL.
//!
//! Enables the indicated system control interrupt sources.  Only the sources
//! that are enabled can be reflected to the processor interrupt; disabled
//! sources have no effect on the processor.
//!
//! \return None.
//
//*****************************************************************************
#if defined(GROUP_intenable) || defined(BUILD_ALL) || defined(DOXYGEN)
void
SysCtlIntEnable(unsigned long ulInts)
{
    //
    // Enable the specified interrupts.
    //
    HWREG(SYSCTL_IMC) |= ulInts;
}
#endif

//*****************************************************************************
//
//! Disables individual system control interrupt sources.
//!
//! \param ulInts is a bit mask of the interrupt sources to be disabled.  Must
//! be a logical OR of \b SYSCTL_INT_PLL_LOCK, \b SYSCTL_INT_CUR_LIMIT,
//! \b SYSCTL_INT_IOSC_FAIL, \b SYSCTL_INT_MOSC_FAIL, \b SYSCTL_INT_POR,
//! \b SYSCTL_INT_BOR, and/or \b SYSCTL_INT_PLL_FAIL.
//!
//! Disables the indicated system control interrupt sources.  Only the sources
//! that are enabled can be reflected to the processor interrupt; disabled
//! sources have no effect on the processor.
//!
//! \return None.
//
//*****************************************************************************
#if defined(GROUP_intdisable) || defined(BUILD_ALL) || defined(DOXYGEN)
void
SysCtlIntDisable(unsigned long ulInts)
{
    //
    // Disable the specified interrupts.
    //
    HWREG(SYSCTL_IMC) &= ~(ulInts);
}
#endif

//*****************************************************************************
//
//! Clears system control interrupt sources.
//!
//! \param ulInts is a bit mask of the interrupt sources to be cleared.  Must
//! be a logical OR of \b SYSCTL_INT_PLL_LOCK, \b SYSCTL_INT_CUR_LIMIT,
//! \b SYSCTL_INT_IOSC_FAIL, \b SYSCTL_INT_MOSC_FAIL, \b SYSCTL_INT_POR,
//! \b SYSCTL_INT_BOR, and/or \b SYSCTL_INT_PLL_FAIL.
//!
//! The specified system control interrupt sources are cleared, so that they no
//! longer assert.  This must be done in the interrupt handler to keep it from
//! being called again immediately upon exit.
//!
//! \return None.
//
//*****************************************************************************
#if defined(GROUP_intclear) || defined(BUILD_ALL) || defined(DOXYGEN)
void
SysCtlIntClear(unsigned long ulInts)
{
    //
    // Clear the requested interrupt sources.
    //
    HWREG(SYSCTL_MISC) = ulInts;
}
#endif

//*****************************************************************************
//
//! Gets the current interrupt status.
//!
//! \param bMasked is false if the raw interrupt status is required and true if
//! the masked interrupt status is required.
//!
//! This returns the interrupt status for the system controller.  Either the
//! raw interrupt status or the status of interrupts that are allowed to
//! reflect to the processor can be returned.
//!
//! \return The current interrupt status, enumerated as a bit field of
//! \b SYSCTL_INT_PLL_LOCK, \b SYSCTL_INT_CUR_LIMIT, \b SYSCTL_INT_IOSC_FAIL,
//! \b SYSCTL_INT_MOSC_FAIL, \b SYSCTL_INT_POR, \b SYSCTL_INT_BOR, and
//! \b SYSCTL_INT_PLL_FAIL.
//
//*****************************************************************************
#if defined(GROUP_intstatus) || defined(BUILD_ALL) || defined(DOXYGEN)
unsigned long
SysCtlIntStatus(tBoolean bMasked)
{
    //
    // Return either the interrupt status or the raw interrupt status as
    // requested.
    //
    if(bMasked)
    {
        return(HWREG(SYSCTL_MISC));
    }
    else
    {
        return(HWREG(SYSCTL_RIS));
    }
}
#endif

//*****************************************************************************
//
//! Sets the output voltage of the LDO.
//!
//! \param ulVoltage is the required output voltage from the LDO.  Must be one
//! of \b SYSCTL_LDO_2_25V, \b SYSCTL_LDO_2_30V, \b SYSCTL_LDO_2_35V,
//! \b SYSCTL_LDO_2_40V, \b SYSCTL_LDO_2_45V, \b SYSCTL_LDO_2_50V,
//! \b SYSCTL_LDO_2_55V, \b SYSCTL_LDO_2_60V, \b SYSCTL_LDO_2_65V,
//! \b SYSCTL_LDO_2_70V, or \b SYSCTL_LDO_2_75V.
//!
//! This function sets the output voltage of the LDO.  The default voltage is
//! 2.5 V; it can be adjusted +/- 10%.
//!
//! \return None.
//
//*****************************************************************************
#if defined(GROUP_ldoset) || defined(BUILD_ALL) || defined(DOXYGEN)
void
SysCtlLDOSet(unsigned long ulVoltage)
{
    //
    // Check the arguments.
    //
    ASSERT((ulVoltage == SYSCTL_LDO_2_25V) ||
           (ulVoltage == SYSCTL_LDO_2_30V) ||
           (ulVoltage == SYSCTL_LDO_2_35V) ||
           (ulVoltage == SYSCTL_LDO_2_40V) ||
           (ulVoltage == SYSCTL_LDO_2_45V) ||
           (ulVoltage == SYSCTL_LDO_2_50V) ||
           (ulVoltage == SYSCTL_LDO_2_55V) ||
           (ulVoltage == SYSCTL_LDO_2_60V) ||
           (ulVoltage == SYSCTL_LDO_2_65V) ||
           (ulVoltage == SYSCTL_LDO_2_70V) ||
           (ulVoltage == SYSCTL_LDO_2_75V));

    //
    // Set the LDO voltage to the requested value.
    //
    HWREG(SYSCTL_LDOPCTL) = ulVoltage;
}
#endif

//*****************************************************************************
//
//! Gets the output voltage of the LDO.
//!
//! This function determines the output voltage of the LDO, as specified by the
//! control register.
//!
//! \return Returns the current voltage of the LDO; will be one of
//! \b SYSCTL_LDO_2_25V, \b SYSCTL_LDO_2_30V, \b SYSCTL_LDO_2_35V,
//! \b SYSCTL_LDO_2_40V, \b SYSCTL_LDO_2_45V, \b SYSCTL_LDO_2_50V,
//! \b SYSCTL_LDO_2_55V, \b SYSCTL_LDO_2_60V, \b SYSCTL_LDO_2_65V,
//! \b SYSCTL_LDO_2_70V, or \b SYSCTL_LDO_2_75V.
//
//*****************************************************************************
#if defined(GROUP_ldoget) || defined(BUILD_ALL) || defined(DOXYGEN)
unsigned long
SysCtlLDOGet(void)
{
    //
    // Return the LDO voltage setting.
    //
    return(HWREG(SYSCTL_LDOPCTL));
}
#endif

//*****************************************************************************
//
//! Configures the LDO failure control.
//!
//! \param ulConfig is the required LDO failure control setting; can be either

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品午夜视频| 国产精品亚洲午夜一区二区三区| 天天色天天操综合| 免费在线观看视频一区| 国产成人在线视频网站| 色一情一乱一乱一91av| 欧美精品1区2区| 久久婷婷国产综合国色天香| 国产精品卡一卡二| 日韩中文字幕91| 国产成人精品综合在线观看| 欧美色图一区二区三区| 久久午夜电影网| 亚洲一区二区精品视频| 国产乱子伦视频一区二区三区 | 91精品国产日韩91久久久久久| 欧美xxx久久| 一区二区三区四区在线播放| 久久精品国产精品亚洲红杏| 99精品久久只有精品| 欧美日本国产一区| 欧美国产日产图区| 日韩国产精品久久久| 成人免费看视频| 日韩午夜av一区| 一级做a爱片久久| 国产成人精品亚洲777人妖 | 欧美aaaaa成人免费观看视频| va亚洲va日韩不卡在线观看| 91精品婷婷国产综合久久| 中文字幕一区二区三区视频| 国内精品在线播放| 欧美综合在线视频| 国产精品免费视频一区| 美女网站色91| 欧美日韩综合色| 《视频一区视频二区| 黑人巨大精品欧美黑白配亚洲| 欧美少妇一区二区| 椎名由奈av一区二区三区| 国产露脸91国语对白| 7777精品伊人久久久大香线蕉完整版 | 综合欧美一区二区三区| av中文字幕在线不卡| 久久久国产精品麻豆| 免费成人在线影院| 欧美高清hd18日本| 玉米视频成人免费看| 成人美女在线观看| 久久久久久久av麻豆果冻| 日韩av一区二区在线影视| 欧美午夜片在线观看| 亚洲男女毛片无遮挡| 成人美女视频在线看| 国产日本欧美一区二区| 国产精品一区三区| 日韩三级免费观看| 美女一区二区久久| 日韩免费观看高清完整版| 亚洲一区在线免费观看| 在线一区二区三区四区| 一区二区三区不卡视频在线观看| www.av精品| 亚洲日本在线视频观看| 91麻豆精品一区二区三区| 国产精品久久网站| 不卡一二三区首页| 国产精品久久777777| 成人教育av在线| 国产亚洲精久久久久久| 国产一区二区三区视频在线播放| 精品国内二区三区| 久久av资源网| 精品国产青草久久久久福利| 久久精品国产精品青草| 欧美精品一区二区三区蜜桃视频| 另类小说欧美激情| 久久影院午夜片一区| 国产九色sp调教91| 国产精品久久久久久久久免费桃花| 成人涩涩免费视频| 日韩伦理av电影| 日本韩国一区二区三区视频| 亚洲影视在线播放| 欧美伦理电影网| 看国产成人h片视频| 精品国精品自拍自在线| 国产美女精品在线| 中文字幕一区二区三中文字幕| 色综合久久久久网| 天天综合色天天综合| 日韩女优电影在线观看| 国产乱人伦精品一区二区在线观看| 国产精品美日韩| 欧美性感一类影片在线播放| 日韩av不卡一区二区| 337p日本欧洲亚洲大胆精品| www.成人网.com| 亚洲国产一二三| 日韩三级伦理片妻子的秘密按摩| 国产精品一区二区免费不卡| 国产精品欧美极品| 欧美日韩免费观看一区二区三区 | 欧美精品一级二级| 久草精品在线观看| 国产精品电影院| 欧美色图在线观看| 国产精品影视天天线| 成人免费在线播放视频| 精品视频一区三区九区| 国产在线观看一区二区| 亚洲视频狠狠干| 在线成人av网站| 成人性生交大合| 午夜精品一区在线观看| 久久综合九色综合欧美就去吻| 99re热这里只有精品免费视频| 视频一区二区三区入口| 国产精品免费久久久久| 91精品国产手机| 99视频在线精品| 另类小说一区二区三区| 亚洲免费在线视频一区 二区| 中文字幕av不卡| 欧美日韩国产一级二级| 国产麻豆成人精品| 午夜成人在线视频| 国产女人水真多18毛片18精品视频| 色8久久人人97超碰香蕉987| 国模娜娜一区二区三区| 亚洲一区在线看| 日本一区二区三区四区| 欧美一个色资源| 色婷婷激情综合| 国v精品久久久网| 免费人成网站在线观看欧美高清| 最近日韩中文字幕| 精品国产一二三| 欧美人伦禁忌dvd放荡欲情| 成人激情免费视频| 加勒比av一区二区| 亚洲.国产.中文慕字在线| 国产精品国产三级国产aⅴ原创| 91麻豆精品国产91久久久更新时间| av高清久久久| 国产馆精品极品| 美女网站视频久久| 婷婷国产在线综合| 亚洲精品免费播放| 欧美国产精品久久| 久久色在线观看| 欧美电影免费观看高清完整版在线观看 | 日韩一区二区三区免费看| 日本黄色一区二区| 成人永久aaa| 国产精品一区二区久久不卡| 偷拍与自拍一区| 一区二区三区四区在线| 中文字幕在线观看不卡| 久久精品一区八戒影视| 日韩视频一区在线观看| 宅男噜噜噜66一区二区66| 欧美日韩在线综合| 在线影院国内精品| 色婷婷亚洲婷婷| 99re6这里只有精品视频在线观看| 国产69精品久久久久777| 国产在线视视频有精品| 久久精品国产澳门| 蜜臀av一级做a爰片久久| 五月天久久比比资源色| 亚洲动漫第一页| 一区二区成人在线视频| 中文字幕一区三区| 国产精品久久久99| 成人欧美一区二区三区| 国产精品久久久久久久久免费樱桃| 中文字幕精品在线不卡| 国产精品无人区| 国产精品久线观看视频| 中文字幕在线一区| 自拍偷自拍亚洲精品播放| 亚洲人成亚洲人成在线观看图片 | 色综合色狠狠天天综合色| 91视频你懂的| 91老师片黄在线观看| 色婷婷av一区二区| 欧美性色黄大片| 在线不卡免费欧美| 欧美电视剧在线观看完整版| 久久综合五月天婷婷伊人| 久久亚区不卡日本| 亚洲国产成人在线| 亚洲欧美一区二区三区久本道91| 亚洲日本va午夜在线电影| 亚洲精品久久久久久国产精华液| 亚洲最大的成人av| 午夜激情久久久| 精品亚洲免费视频| 国产99久久精品|