日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]NVIC驅(qū)動(dòng)有很多的用途,如使能或者失能IRQ(中斷請(qǐng)求),或者是使能或失能單獨(dú)的IRQ通道,或者是改變其優(yōu)先級(jí)。以下介紹相關(guān)函數(shù)的功能和基本用法。1.NVIC_DeInit函數(shù)的功能是將外設(shè)NVIC寄存器重設(shè)為默認(rèn)值。2.NVIC)

NVIC驅(qū)動(dòng)有很多的用途,如使能或者失能IRQ(中斷請(qǐng)求),或者是使能或失能單獨(dú)的IRQ通道,或者是改變其優(yōu)先級(jí)。以下介紹相關(guān)函數(shù)的功能和基本用法。

1.NVIC_DeInit函數(shù)的功能是將外設(shè)NVIC寄存器重設(shè)為默認(rèn)值。

2.NVIC)PriorityGroupConfig函數(shù)的功能是設(shè)置優(yōu)先級(jí)分組:先占優(yōu)先級(jí)和從優(yōu)先級(jí),且有一個(gè)輸入?yún)?shù)是優(yōu)先級(jí)分組的長(zhǎng)度

例:定義先占優(yōu)先級(jí)1,從優(yōu)先級(jí)3.

NVIC_PriorityGroupConfig(NVICPriorityGroup_1);

3.NVIC_Init函數(shù)的功能是根據(jù)NVIC_InitStruct里面指定的參數(shù)初始化外設(shè)NVIC寄存器,其中NVIC_InitTypeDef structure定義結(jié)構(gòu)體的代碼如下:

typedef struct

{

u8 NVIC_IRQChannel;

u8 NVIC_IRQChannelPreemptionPriority;

u8 NVIC_IRQChannelSubPriority;

FunctionalState NVIC_IRQChannelCmd;

}NVIC_InitTypeDef;

NVIC_IRQChannel參數(shù)是用于使能或者失能指定的IRQ通道,其中IRQ通道有很多,可以自己查詢相關(guān)的手冊(cè)。

NVIC_IRQChannelPreemptionPriority參數(shù)設(shè)置了成員NVIC_IRQChannel中的先占優(yōu)先級(jí)。

IRQChannelSubPriority參數(shù)設(shè)置了成員NVIC_IRQChannel中的從優(yōu)先級(jí)。

當(dāng)選定NVIC_PriorityGroup_0,參數(shù)NVIC_IRQChannelPreemptionPriority對(duì)中斷通道的設(shè)置不產(chǎn)生影響;

當(dāng)選定NVIC_PriorityGroup_4,參數(shù)IRQChannelSubPriority對(duì)中斷通道的設(shè)置不產(chǎn)生影響。

NVIC_IRQChannelCmd參數(shù)指定了在成員NVIC_IRQChannel中定義的IRQ通道被使能或者失能,參數(shù)可取ENABLE 和 DISABLE。

例:定義優(yōu)先級(jí)

NVIC_InittypeDef NVIC_InitStructure;

NVIC_PriorityGroupConfig(NVICPriorityGroup_1);//先占優(yōu)先級(jí)用1 ,從優(yōu)先級(jí)用3

//定義TIM3中斷的優(yōu)先級(jí),先占優(yōu)先級(jí)為0,從優(yōu)先級(jí)為2

NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQChannel;

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;

NVIC_InitStructure.NVIC_IRQSubPriority = 2;

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

NVIC_InitStructure(&NVIC_InitStructure);

//定義USART1串口中斷的優(yōu)先級(jí),先占優(yōu)先級(jí)1,從優(yōu)先級(jí)5.

NVIC_InitStructure.NVIC_IRQChannel = SUART1_IRQChannel;

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;

NVIC_InitStructure.NVIC_IRQSubPriority = 5;

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

NVIC_InitStructure(&NVIC_InitStructure);

//定義RTC中斷優(yōu)先級(jí)為1,從優(yōu)先級(jí)為7;


NVIC_InitStructure.NVIC_IRQChannel = RTC_IRQChannel;

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;

NVIC_InitStructure.NVIC_IRQSubPriority = 7;

//NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

NVIC_InitStructure(&NVIC_InitStructure);

4.NVIC_SetVectorTable函數(shù)的功能是設(shè)置向量表的位置和偏移。其中輸入?yún)?shù)中,對(duì)于32位的OFFSET向量表基地址的偏移量對(duì)于FLASH,參數(shù)值必須高于0x08000100,對(duì)于RAM必須高于0X100.

例:對(duì)FLASH指定向量表基地址偏移量。

NVIC_SetVectorTable(NVIC_VectTab_FLASH,0x00);


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉