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

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

?? sysctl.c

?? 飛利浦LM3S系列ARM的庫文件,在進行arm開發時所必須的庫文件,直接加到工程中,一般不必修改.
?? C
?? 第 1 頁 / 共 5 頁
字號:
//! \return None.
//
//*****************************************************************************
void
SysCtlSleep(void)
{
    //
    // Wait for an interrupt.
    //
    CPUwfi();
}

//*****************************************************************************
//
//! Puts the processor into deep-sleep mode.
//!
//! This function places the processor into deep-sleep mode; it will not return
//! until the processor returns to run mode.  The peripherals that are enabled
//! via SysCtlPeripheralDeepSleepEnable() continue to operate and can wake up
//! the processor (if automatic clock gating is enabled with
//! SysCtlPeripheralClockGating(), otherwise all peripherals continue to
//! operate).
//!
//! \return None.
//
//*****************************************************************************
void
SysCtlDeepSleep(void)
{
    //
    // Enable deep-sleep.
    //
    HWREG(NVIC_SYS_CTRL) |= NVIC_SYS_CTRL_SLEEPDEEP;

    //
    // Wait for an interrupt.
    //
    CPUwfi();

    //
    // Disable deep-sleep so that a future sleep will work correctly.
    //
    HWREG(NVIC_SYS_CTRL) &= ~(NVIC_SYS_CTRL_SLEEPDEEP);
}

//*****************************************************************************
//
//! Gets the reason for a reset.
//!
//! This function will return the reason(s) for a reset.  Since the reset
//! reasons are sticky until either cleared by software or an external reset,
//! multiple reset reasons may be returned if multiple resets have occurred.
//! The reset reason will be a logical OR of \b SYSCTL_CAUSE_LDO,
//! \b SYSCTL_CAUSE_SW, \b SYSCTL_CAUSE_WDOG, \b SYSCTL_CAUSE_BOR,
//! \b SYSCTL_CAUSE_POR, and/or \b SYSCTL_CAUSE_EXT.
//!
//! \return The reason(s) for a reset.
//
//*****************************************************************************
unsigned long
SysCtlResetCauseGet(void)
{
    //
    // Return the reset reasons.
    //
    return(HWREG(SYSCTL_RESC));
}

//*****************************************************************************
//
//! Clears reset reasons.
//!
//! \param ulCauses are the reset causes to be cleared; must be a logical OR of
//! \b SYSCTL_CAUSE_LDO, \b SYSCTL_CAUSE_SW, \b SYSCTL_CAUSE_WDOG,
//! \b SYSCTL_CAUSE_BOR, \b SYSCTL_CAUSE_POR, and/or \b SYSCTL_CAUSE_EXT.
//!
//! This function clears the specified sticky reset reasons.  Once cleared,
//! another reset for the same reason can be detected, and a reset for a
//! different reason can be distinguished (instead of having two reset causes
//! set).  If the reset reason is used by an application, all reset causes
//! should be cleared after they are retrieved with SysCtlResetCauseGet().
//!
//! \return None.
//
//*****************************************************************************
void
SysCtlResetCauseClear(unsigned long ulCauses)
{
    //
    // Clear the given reset reasons.
    //
    HWREG(SYSCTL_RESC) &= ~(ulCauses);
}

//*****************************************************************************
//
//! Configures the brown-out control.
//!
//! \param ulConfig is the desired configuration of the brown-out control.
//! Must be the logical OR of \b SYSCTL_BOR_RESET and/or
//! \b SYSCTL_BOR_RESAMPLE.
//! \param ulDelay is the number of internal oscillator cycles to wait before
//! resampling an asserted brown-out signal.  This value only has meaning when
//! \b SYSCTL_BOR_RESAMPLE is set and must be less than 8192.
//!
//! This function configures how the brown-out control operates.  It can detect
//! a brown-out by looking at only the brown-out output, or it can wait for it
//! to be active for two consecutive samples separated by a configurable time.
//! When it detects a brown-out condition, it can either reset the device or
//! generate a processor interrupt.
//!
//! \return None.
//
//*****************************************************************************
void
SysCtlBrownOutConfigSet(unsigned long ulConfig, unsigned long ulDelay)
{
    //
    // Check the arguments.
    //
    ASSERT(!(ulConfig & ~(SYSCTL_BOR_RESET | SYSCTL_BOR_RESAMPLE)));
    ASSERT(ulDelay < 8192);

    //
    // Configure the brown-out reset control.
    //
    HWREG(SYSCTL_PBORCTL) = (ulDelay << SYSCTL_PBORCTL_BOR_SH) | ulConfig;
}

//*****************************************************************************
//
//! Sets the clocking of the device.
//!
//! \param ulConfig is the required configuration of the device clocking.
//!
//! This function configures the clocking of the device.  The input crystal
//! frequency, oscillator to be used, use of the PLL, and the system clock
//! divider are all configured with this function.
//!
//! The \b ulConfig parameter is the logical OR of several different values,
//! many of which are grouped into sets where only one can be chosen.
//!
//! The system clock divider is chosen with one of the following values:
//! \b SYSCTL_SYSDIV_1, \b SYSCTL_SYSDIV_2, \b SYSCTL_SYSDIV_3,
//! \b SYSCTL_SYSDIV_4, \b SYSCTL_SYSDIV_5, \b SYSCTL_SYSDIV_6,
//! \b SYSCTL_SYSDIV_7, \b SYSCTL_SYSDIV_8, \b SYSCTL_SYSDIV_9,
//! \b SYSCTL_SYSDIV_10, \b SYSCTL_SYSDIV_11, \b SYSCTL_SYSDIV_12,
//! \b SYSCTL_SYSDIV_13, \b SYSCTL_SYSDIV_14, \b SYSCTL_SYSDIV_15, or
//! \b SYSCTL_SYSDIV_16.
//!
//! The use of the PLL is chosen with either \b SYSCTL_USE_PLL or
//! \b SYSCTL_USE_OSC.
//!
//! The external crystal frequency is chosen with one of the following values:
//! \b SYSCTL_XTAL_3_57MHZ, \b SYSCTL_XTAL_3_68MHZ, \b SYSCTL_XTAL_4MHZ,
//! \b SYSCTL_XTAL_4_09MHZ, \b SYSCTL_XTAL_4_91MHZ, \b SYSCTL_XTAL_5MHZ,
//! \b SYSCTL_XTAL_5_12MHZ, \b SYSCTL_XTAL_6MHZ, \b SYSCTL_XTAL_6_14MHZ,
//! \b SYSCTL_XTAL_7_37MHZ, \b SYSCTL_XTAL_8MHZ, or \b SYSCTL_XTAL_8_19MHZ.
//!
//! The oscillator source is chosen with one of the following values:
//! \b SYSCTL_OSC_MAIN, \b SYSCTL_OSC_INT, or \b SYSCTL_OSC_INT4.
//!
//! The internal and main oscillators are disabled with the
//! \b SYSCTL_INT_OSC_DIS and \b SYSCTL_MAIN_OSC_DIS flags, respectively.
//! The external oscillator must be enabled in order to use an external clock
//! source.  Note that attempts to disable the oscillator used to clock the
//! device will be prevented by the hardware.
//!
//! To clock the system from an external source (such as an external crystal
//! oscillator), use \b SYSCTL_USE_OSC \b | \b SYSCTL_OSC_MAIN.  To clock the
//! system from the main oscillator, use \b SYSCTL_USE_OSC \b |
//! \b SYSCTL_OSC_MAIN.  To clock the system from the PLL, use
//! \b SYSCTL_USE_PLL \b | \b SYSCTL_OSC_MAIN, and select the appropriate
//! crystal with one of the \b SYSCTL_XTAL_xxx values.
//!
//! \note If selecting the PLL as the system clock source (i.e. via
//! \b SYSCTL_USE_PLL), this function will poll the PLL lock interrupt to
//! determine when the PLL has locked.  If an interrupt.handler for the
//! system control interrupt is in place, and it responds to and clears the
//! PLL lock interrupt, this function will delay until its timeout has occurred
//! instead of completing as soon as PLL lock is achieved.
//!
//! \return None.
//
//*****************************************************************************
void
SysCtlClockSet(unsigned long ulConfig)
{
    volatile unsigned long ulDelay;
    unsigned long ulRCC;

    //
    // Get the current value of the RCC register.
    //
    ulRCC = HWREG(SYSCTL_RCC);

    //
    // Bypass the PLL and system clock dividers for now.
    //
    ulRCC |= SYSCTL_RCC_BYPASS;
    ulRCC &= ~(SYSCTL_RCC_USE_SYSDIV);

    //
    // Write the new RCC value.
    //
    HWREG(SYSCTL_RCC) = ulRCC;

    //
    // Make sure that the PLL and system clock dividers are bypassed for now.
    //
    ulRCC |= SYSCTL_RCC_BYPASS;
    ulRCC &= ~(SYSCTL_RCC_USE_SYSDIV);

    //
    // Make sure that the required oscillators are enabled.  For now, the
    // previously enabled oscillators must be enabled along with the newly
    // requested oscillators.
    //
    ulRCC &= (~(SYSCTL_RCC_IOSCDIS | SYSCTL_RCC_MOSCDIS) |
              (ulConfig & (SYSCTL_RCC_IOSCDIS | SYSCTL_RCC_MOSCDIS)));

    //
    // Set the new crystal value, oscillator source, and PLL configuration.
    //
    ulRCC &= ~(SYSCTL_RCC_XTAL_MASK | SYSCTL_RCC_OSCSRC_MASK |
               SYSCTL_RCC_PWRDN | SYSCTL_RCC_OE);
    ulRCC |= ulConfig & (SYSCTL_RCC_XTAL_MASK | SYSCTL_RCC_OSCSRC_MASK |
                         SYSCTL_RCC_PWRDN | SYSCTL_RCC_OE);

    //
    // Clear the PLL lock interrupt.
    //
    HWREG(SYSCTL_MISC) = SYSCTL_INT_PLL_LOCK;

    //
    // Write the new RCC value.
    //
    HWREG(SYSCTL_RCC) = ulRCC;

    //
    // Wait for a bit so that new crystal value and oscillator source can take
    // effect.  One of the oscillators may need to be started as well.
    //
    for(ulDelay = 0; ulDelay < 16; ulDelay++)
    {
    }

    //
    // Disable the appropriate oscillators.
    //
    ulRCC &= ~(SYSCTL_RCC_IOSCDIS | SYSCTL_RCC_MOSCDIS);
    ulRCC |= ulConfig & (SYSCTL_RCC_IOSCDIS | SYSCTL_RCC_MOSCDIS);

    //
    // Write the new RCC value.
    //
    HWREG(SYSCTL_RCC) = ulRCC;

    //
    // Set the requested system divider.  This will not get written
    // immediately.
    //
    ulRCC &= ~(SYSCTL_RCC_SYSDIV_MASK | SYSCTL_RCC_USE_SYSDIV);
    ulRCC |= ulConfig & (SYSCTL_RCC_SYSDIV_MASK | SYSCTL_RCC_USE_SYSDIV);

    //
    // See if the PLL output is being used to clock the system.
    //
    if(!(ulConfig & SYSCTL_RCC_BYPASS))
    {
        //
        // Wait until the PLL has locked.
        //
        for(ulDelay = 32768; ulDelay > 0; ulDelay--)
        {
            if(HWREG(SYSCTL_RIS) & SYSCTL_INT_PLL_LOCK)
            {
                break;
            }
        }

        //
        // Enable use of the PLL.
        //
        ulRCC &= ~(SYSCTL_RCC_BYPASS);
    }

    //
    // Write the final RCC value.
    //
    HWREG(SYSCTL_RCC) = ulRCC;

    //
    // Delay for a little bit so that the system divider takes effect.
    //
    for(ulDelay = 0; ulDelay < 16; ulDelay++)
    {
    }
}

//*****************************************************************************
//
//! Gets the processor clock rate.
//!
//! This function determines the clock rate of the processor clock.  This is
//! also the clock rate of all the peripheral modules (with the exception of
//! PWM, which has its own clock divider).
//!
//! \note This will not return accurate results if SysCtlClockSet() has not
//! been called to configure the clocking of the device, or if the device is
//! directly clocked from a crystal (or a clock source) that is not one of the
//! supported crystal frequencies.  In the later case, this function should be
//! modified to directly return the correct system clock rate.
//!
//! \return The processor clock rate.
//
//*****************************************************************************
unsigned long
SysCtlClockGet(void)
{
    unsigned long ulRCC, ulPLL, ulClk;

#ifndef NO_EMULATION
    //
    // Get the emulation clock rate from the DID0 register if this is the
    // emulator.
    //
    if(HWREG(SYSCTL_DID0) & 0x80000000)
    {
        return(((HWREG(SYSCTL_DID0) & 0x00001f00) >> 8) * 1000000);
    }

#endif
    //
    // Read RCC.
    //
    ulRCC = HWREG(SYSCTL_RCC);

    //
    // Get the base clock rate.
    //
    switch(ulRCC & SYSCTL_RCC_OSCSRC_MASK)
    {
        //
        // The main oscillator is the clock source.  Determine its rate from
        // the crystal setting field.
        //
        case SYSCTL_RCC_OSCSRC_MAIN:
        {
            ulClk = g_pulXtals[((ulRCC & SYSCTL_RCC_XTAL_MASK) >>
                                SYSCTL_RCC_XTAL_SHIFT) -
                               (SYSCTL_RCC_XTAL_3_57MHZ >>
                                SYSCTL_RCC_XTAL_SHIFT)];
            break;
        }

        //
        // The internal oscillator is the source clock.  This is not an
        // accurate clock (it is +/- 50%); what is used is the nominal.
        //

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
黄色资源网久久资源365| 美国毛片一区二区| 手机精品视频在线观看| 美女视频黄 久久| 风间由美中文字幕在线看视频国产欧美| 91一区二区在线| 91麻豆精品国产91久久久久| 欧美国产日韩一二三区| 午夜欧美一区二区三区在线播放| 天堂久久一区二区三区| 成人av在线影院| 91精品国产综合久久久蜜臀粉嫩| 久久久午夜精品理论片中文字幕| 亚洲精品成a人| 国产一区二区视频在线| 色www精品视频在线观看| 精品国产乱码久久久久久浪潮| 国产精品午夜在线| 精品一区二区三区免费播放| 一本一本大道香蕉久在线精品 | 8x8x8国产精品| 中文字幕一区二区5566日韩| 老司机精品视频一区二区三区| 色婷婷精品久久二区二区蜜臀av| 久久久久久久免费视频了| 亚欧色一区w666天堂| 国产v日产∨综合v精品视频| 欧美视频精品在线| 亚洲精品免费播放| 成人高清免费观看| 欧美激情一区二区三区在线| 蜜芽一区二区三区| 欧美精品日韩一区| 一区二区三区四区不卡视频| 成人小视频免费观看| 欧美日韩国产高清一区二区| 一区二区三区成人| 色吧成人激情小说| 亚洲乱码国产乱码精品精小说| 成人国产在线观看| 国产精品网站在线观看| 丁香一区二区三区| 欧美精品一区男女天堂| 久久激情五月婷婷| 日韩免费高清视频| 久久国产欧美日韩精品| 日韩欧美一二区| 久久66热re国产| 久久亚洲一区二区三区明星换脸| 亚洲国产精品影院| 欧美精品18+| 日韩和欧美的一区| 亚洲精品在线观看视频| 国产成人精品aa毛片| 欧美精品一区二| 激情小说亚洲一区| 久久久不卡影院| 欧美三级三级三级| 日韩在线卡一卡二| 日韩区在线观看| 国产传媒日韩欧美成人| 国产农村妇女毛片精品久久麻豆| 成人小视频免费在线观看| 17c精品麻豆一区二区免费| 色综合久久九月婷婷色综合| 亚洲午夜精品在线| 精品裸体舞一区二区三区| 成人免费毛片片v| 国产精品欧美经典| 欧美体内she精高潮| 亚洲成a人v欧美综合天堂下载 | 在线成人免费观看| 美女网站一区二区| 亚洲精品一区二区三区香蕉 | 亚洲成人免费在线观看| 欧美一级在线观看| 国产盗摄一区二区| 一级女性全黄久久生活片免费| 欧美日韩在线播放一区| 韩国中文字幕2020精品| 中文字幕综合网| 正在播放一区二区| 99久久99久久精品免费看蜜桃| 麻豆国产精品官网| 一区二区三区免费在线观看| 国产日韩欧美精品综合| 5858s免费视频成人| 色婷婷av一区二区三区软件| 国产老肥熟一区二区三区| 日韩国产高清在线| 亚洲最新在线观看| 亚洲日本va午夜在线电影| 国产欧美一区二区三区沐欲| 精品日韩99亚洲| 日韩欧美亚洲一区二区| 91麻豆精品国产91久久久使用方法| 97久久人人超碰| 成人av动漫在线| 成人一级视频在线观看| 国产在线播精品第三| 精品一区二区三区不卡 | 91麻豆精品国产91久久久使用方法| 91蝌蚪porny| 99久久综合国产精品| 不卡av免费在线观看| 国产成人免费xxxxxxxx| 国产呦萝稀缺另类资源| 激情文学综合丁香| 九九九久久久精品| 韩国av一区二区三区在线观看| 久久99久久99精品免视看婷婷| 久久av老司机精品网站导航| 免费欧美高清视频| 免费的国产精品| 久久99精品久久久久婷婷| 精品一区二区三区在线视频| 美日韩黄色大片| 国产一区二区按摩在线观看| 国产在线播放一区三区四| 国产成人综合自拍| 91在线看国产| 欧美伊人久久久久久午夜久久久久| 91福利区一区二区三区| 欧美日韩精品是欧美日韩精品| 91麻豆精品国产自产在线| 国产欧美一区二区精品性色| 亚洲欧美综合色| 夜夜揉揉日日人人青青一国产精品| 一区二区三区中文在线观看| 亚洲二区视频在线| 韩国成人福利片在线播放| 成人国产亚洲欧美成人综合网| 97久久久精品综合88久久| 欧美日韩国产色站一区二区三区| 日韩午夜在线影院| 国产精品欧美久久久久一区二区| 国产精品久久久久国产精品日日| 亚洲另类春色校园小说| 日韩精品1区2区3区| 国产乱理伦片在线观看夜一区| 91在线观看地址| 欧美精品v日韩精品v韩国精品v| 久久一留热品黄| 中文字幕字幕中文在线中不卡视频| 午夜免费久久看| 懂色av噜噜一区二区三区av| 欧美亚洲综合在线| 久久婷婷成人综合色| 亚洲色图清纯唯美| 久久爱另类一区二区小说| www.亚洲精品| 欧美一级淫片007| 国产精品免费丝袜| 三级久久三级久久久| 成人综合激情网| 日韩视频一区二区在线观看| 国产精品热久久久久夜色精品三区| 性感美女久久精品| 成人小视频免费在线观看| 3751色影院一区二区三区| 日韩一区在线看| 久久国产尿小便嘘嘘尿| 欧美性色黄大片| www日韩大片| 天涯成人国产亚洲精品一区av| 丰满放荡岳乱妇91ww| 制服丝袜中文字幕一区| ...中文天堂在线一区| 国产麻豆视频一区| 91麻豆精品国产91久久久久久久久| 中文字幕在线不卡视频| 国产一区二区网址| 日韩一级免费观看| 亚洲综合视频网| 日韩欧美一级二级三级| 亚洲第一会所有码转帖| 91视频免费观看| 国产精品超碰97尤物18| 国产黄人亚洲片| 精品剧情在线观看| 日本成人中文字幕| 欧美日韩aaa| 亚洲国产毛片aaaaa无费看| 色综合色综合色综合色综合色综合| 久久人人超碰精品| 免费高清视频精品| 欧美一区三区四区| 日韩精品电影一区亚洲| 欧美影视一区二区三区| 亚洲品质自拍视频| 99国产精品国产精品毛片| 中文字幕的久久| 成人在线一区二区三区| 国产欧美一区二区精品忘忧草| 国产麻豆午夜三级精品| 国产欧美视频一区二区| 国产98色在线|日韩| 国产清纯白嫩初高生在线观看91| 国产乱码精品一区二区三区五月婷| 欧美成人一区二区三区片免费|