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

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

?? arm_cm4.c

?? Kinetis_K60開源底層驅動開發包(20120328)
?? C
字號:
/*
 * File:		arm_cm4.c
 * Purpose:		Generic high-level routines for ARM Cortex M4 processors
 *
 * Notes:
 */

#include "common.h"

/***********************************************************************/
/*
 * Configures the ARM system control register for STOP (deep sleep) mode
 * and then executes the WFI instruction to enter the mode.
 *
 * Parameters:
 * none
 *
 * Note: Might want to change this later to allow for passing in a parameter
 *       to optionally set the sleep on exit bit.
 */

void stop (void)
{
	/* Set the SLEEPDEEP bit to enable deep sleep mode (STOP) */
	SCB_SCR |= SCB_SCR_SLEEPDEEP_MASK;	

	/* WFI instruction will start entry into STOP mode */
	asm("WFI");
}
/***********************************************************************/
/*
 * Configures the ARM system control register for WAIT (sleep) mode
 * and then executes the WFI instruction to enter the mode.
 *
 * Parameters:
 * none
 *
 * Note: Might want to change this later to allow for passing in a parameter
 *       to optionally set the sleep on exit bit.
 */

void wait (void)
{
	/* Clear the SLEEPDEEP bit to make sure we go into WAIT (sleep) mode instead
	 * of deep sleep.
	 */
	SCB_SCR &= ~SCB_SCR_SLEEPDEEP_MASK;	

	/* WFI instruction will start entry into WAIT mode */
	asm("WFI");
}
/***********************************************************************/
/*
 * Change the value of the vector table offset register to the specified value.
 *
 * Parameters:
 * vtor     new value to write to the VTOR
 */

void write_vtor (int vtor)
{
        /* Write the VTOR with the new value */
        SCB_VTOR = vtor;	
}
/***********************************************************************/
/*
 * Initialize the NVIC to enable the specified IRQ.
 * 
 * NOTE: The function only initializes the NVIC to enable a single IRQ. 
 * Interrupts will also need to be enabled in the ARM core. This can be 
 * done using the EnableInterrupts macro.
 *
 * Parameters:
 * irq    irq number to be enabled (the irq number NOT the vector number)
 */

void enable_irq (int irq)
{
    int div;
    
    /* Make sure that the IRQ is an allowable number. Right now up to 91 is 
     * used.
     */
    if (irq > 91)
        printf("\nERR! Invalid IRQ value passed to enable irq function!\n");
    
    /* Determine which of the NVICISERs corresponds to the irq */
    div = irq/32;
    
    switch (div)
    {
    	case 0x0:
              NVICICPR0 = 1 << (irq%32);
              NVICISER0 = 1 << (irq%32);
              break;
    	case 0x1:
              NVICICPR1 = 1 << (irq%32);
              NVICISER1 = 1 << (irq%32);
              break;
    	case 0x2:
              NVICICPR2 = 1 << (irq%32);
              NVICISER2 = 1 << (irq%32);
              break;
    }              
}
/***********************************************************************/
/*
 * Initialize the NVIC to disable the specified IRQ.
 * 
 * NOTE: The function only initializes the NVIC to disable a single IRQ. 
 * If you want to disable all interrupts, then use the DisableInterrupts
 * macro instead. 
 *
 * Parameters:
 * irq    irq number to be disabled (the irq number NOT the vector number)
 */

void disable_irq (int irq)
{
    int div;
    
    /* Make sure that the IRQ is an allowable number. Right now up to 91 is 
     * used.
     */
    if (irq > 91)
        printf("\nERR! Invalid IRQ value passed to disable irq function!\n");
    
    /* Determine which of the NVICICERs corresponds to the irq */
    div = irq/32;
    
    switch (div)
    {
    	case 0x0:
               NVICICER0 = 1 << (irq%32);
              break;
    	case 0x1:
              NVICICER1 = 1 << (irq%32);
              break;
    	case 0x2:
              NVICICER2 = 1 << (irq%32);
              break;
    }              
}
/***********************************************************************/
/*
 * Initialize the NVIC to set specified IRQ priority.
 * 
 * NOTE: The function only initializes the NVIC to set a single IRQ priority. 
 * Interrupts will also need to be enabled in the ARM core. This can be 
 * done using the EnableInterrupts macro.
 *
 * Parameters:
 * irq    irq number to be enabled (the irq number NOT the vector number)
 * prio   irq priority. 0-15 levels. 0 max priority
 */

void set_irq_priority (int irq, int prio)
{
    /*irq priority pointer*/
    uint8 *prio_reg;
    
    /* Make sure that the IRQ is an allowable number. Right now up to 91 is 
     * used.
     */
    if (irq > 91)
        printf("\nERR! Invalid IRQ value passed to priority irq function!\n");

    if (prio > 15)
        printf("\nERR! Invalid priority value passed to priority irq function!\n");
    
    /* Determine which of the NVICIPx corresponds to the irq */
    prio_reg = (uint8 *)(((uint32)&NVICIP0) + irq);
    /* Assign priority to IRQ */
    *prio_reg = ( (prio&0xF) << (8 - ARM_INTERRUPT_LEVEL_BITS) );             
}
/***********************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美一级精品久久| 日韩av在线发布| 色婷婷国产精品久久包臀| 91社区在线播放| 欧美日韩第一区日日骚| 欧美大白屁股肥臀xxxxxx| 国产欧美一区二区三区在线老狼| 中文字幕日韩一区| 视频一区二区欧美| 国产成人自拍网| 欧美婷婷六月丁香综合色| 2023国产一二三区日本精品2022| 亚洲欧美日韩成人高清在线一区| 日本不卡一二三区黄网| 成人午夜私人影院| 欧美电影在线免费观看| 国产调教视频一区| 日韩精品欧美精品| 大桥未久av一区二区三区中文| 欧美主播一区二区三区| 久久综合999| 亚洲一区二区三区四区中文字幕| 韩国一区二区视频| 欧美体内she精视频| 日本一区二区成人| 蜜臀久久99精品久久久久久9 | 7777精品伊人久久久大香线蕉| 精品欧美乱码久久久久久1区2区 | 91女厕偷拍女厕偷拍高清| 91麻豆精品国产91久久久久久久久 | 国产精品嫩草99a| 日本不卡123| 91蝌蚪国产九色| 久久久精品黄色| 亚洲成av人影院| 91在线视频播放| 337p日本欧洲亚洲大胆精品| 亚洲国产综合人成综合网站| 高潮精品一区videoshd| 日韩情涩欧美日韩视频| 亚洲三级在线观看| 夫妻av一区二区| 欧美电视剧免费全集观看 | 91精品国产综合久久香蕉的特点 | 色系网站成人免费| 国产人久久人人人人爽| 美女高潮久久久| 欧美日韩1区2区| 一区二区三区日韩欧美| www.色精品| 国产日产欧美一区二区三区| 麻豆国产精品777777在线| 欧美精品乱码久久久久久按摩| 亚洲欧美日韩电影| 94色蜜桃网一区二区三区| 国产欧美精品日韩区二区麻豆天美| 美女被吸乳得到大胸91| 91精品免费观看| 日本三级韩国三级欧美三级| 欧美无乱码久久久免费午夜一区| 亚洲精品一二三区| 91亚洲精品久久久蜜桃| 国产精品网曝门| 大陆成人av片| 国产精品白丝在线| 成人av网站在线| 国产精品久久一卡二卡| 成人精品免费看| 欧美国产精品v| 成人毛片在线观看| 国产精品女主播av| 99视频一区二区| 综合久久久久久| 色综合久久久久久久| 国产精品久久久久天堂| av不卡一区二区三区| 亚洲男人天堂一区| 色婷婷av一区二区三区软件| 亚洲韩国一区二区三区| 欧美精品18+| 蜜桃av噜噜一区| 国产亚洲精品7777| 成人av在线播放网址| 亚洲视频一二三区| 在线免费观看日韩欧美| 亚洲午夜免费电影| 91麻豆精品国产无毒不卡在线观看 | 色嗨嗨av一区二区三区| 洋洋av久久久久久久一区| 欧美日韩亚洲高清一区二区| 丝袜亚洲精品中文字幕一区| 91麻豆精品国产自产在线观看一区 | 国产a级毛片一区| 中文天堂在线一区| 99r精品视频| 亚洲一区二区视频| 在线成人高清不卡| 精品综合久久久久久8888| 久久久久久久久久电影| 成人手机在线视频| 一区二区三区成人| 欧美一级黄色片| 国产福利精品导航| 亚洲欧洲性图库| 欧美日韩视频第一区| 久久精品国产一区二区| 欧美激情一二三区| 欧美亚一区二区| 精品制服美女丁香| 亚洲欧美一区二区在线观看| 欧美私人免费视频| 国产一区二区三区香蕉| 又紧又大又爽精品一区二区| 7777女厕盗摄久久久| 丰满亚洲少妇av| 亚洲国产精品自拍| 久久久久99精品一区| 91九色最新地址| 狠狠色丁香久久婷婷综合丁香| 国产精品电影院| 91精品蜜臀在线一区尤物| 成人深夜福利app| 免费人成在线不卡| 日韩一区在线播放| 日韩欧美激情一区| 91在线码无精品| 黑人精品欧美一区二区蜜桃| 亚洲乱码中文字幕综合| 欧美草草影院在线视频| 色综合天天综合网天天狠天天| 蜜臀av一区二区| 亚洲免费在线视频| 久久蜜桃一区二区| 欧美挠脚心视频网站| 成人久久久精品乱码一区二区三区| 日韩av电影天堂| 亚洲久草在线视频| 国产欧美一区二区三区鸳鸯浴 | 亚洲国产一区二区视频| 久久久精品影视| 91精品国产aⅴ一区二区| 成人av在线一区二区三区| 久久精品国产亚洲5555| 一区二区成人在线视频| 国产欧美日韩在线观看| 正在播放亚洲一区| 在线观看av不卡| 成人一级黄色片| 久久99国内精品| 午夜日韩在线电影| 亚洲乱码国产乱码精品精小说 | 国产成人亚洲精品狼色在线| 天天免费综合色| 亚洲男人的天堂一区二区| 久久久久久久性| 日韩一级片在线播放| 欧美日韩一级黄| 在线精品亚洲一区二区不卡| 成人免费观看视频| 国产精品中文字幕日韩精品 | 久久久欧美精品sm网站| 91麻豆精品国产自产在线观看一区 | 国产精品欧美一区二区三区| 精品国产99国产精品| 538prom精品视频线放| 日本韩国欧美在线| av一区二区久久| 盗摄精品av一区二区三区| 韩国一区二区在线观看| 另类小说色综合网站| 日韩av一区二区三区| 亚洲五码中文字幕| 一个色妞综合视频在线观看| 日韩理论片中文av| 亚洲天堂a在线| 日韩毛片视频在线看| 亚洲人成网站精品片在线观看| 国产精品视频一二三| 欧美高清在线一区二区| 国产欧美精品一区二区色综合朱莉| 久久这里只有精品6| 精品国产伦理网| 337p粉嫩大胆色噜噜噜噜亚洲| 久久一区二区三区国产精品| 精品99久久久久久| 久久久国产午夜精品| 国产午夜精品久久久久久久| 国产欧美一区二区三区沐欲| 欧美国产激情二区三区| 亚洲天天做日日做天天谢日日欢| 国产精品乱码人人做人人爱| 国产精品对白交换视频| 亚洲激情av在线| 亚洲成人av一区二区| 丝瓜av网站精品一区二区| 日韩高清在线电影| 精品一二三四在线| 国产电影一区在线| 色综合激情五月| 欧美日韩国产欧美日美国产精品|