www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]對(duì)于NVIC的任務(wù),可以概括為三個(gè):1.配置中斷向量表--如果不配置,則不能進(jìn)入中斷 SCB->VTOR2.配置系統(tǒng)中斷分組--決定了第一和第二優(yōu)先級(jí)各占用的位數(shù) SCB->AIRCR3.配置對(duì)應(yīng)中斷優(yōu)先級(jí)和使能中斷--中斷使能 ISER[0/1

對(duì)于NVIC的任務(wù),可以概括為三個(gè):


1.配置中斷向量表--如果不配置,則不能進(jìn)入中斷 SCB->VTOR


2.配置系統(tǒng)中斷分組--決定了第一和第二優(yōu)先級(jí)各占用的位數(shù) SCB->AIRCR


3.配置對(duì)應(yīng)中斷優(yōu)先級(jí)和使能中斷--中斷使能 ISER[0/1] 中斷優(yōu)先級(jí)IPR[0:15]


只要按照這樣配置,就可以使用中斷了


1 /******************************************************

2 *函數(shù): NVIC_Group(u8 group)

3 *功能: 設(shè)置中斷分組

4 *參數(shù): group-對(duì)應(yīng)分組號(hào) 0~4 共5組

5 *返回: 無(wú)

6 ******************************************************/

7 void NVIC_Group(u8 group)//設(shè)置中斷優(yōu)先級(jí)分組寄存器

8 {

9

10 u32 temp,temp1;

11 //設(shè)置中斷向量表,這里不配置會(huì)導(dǎo)致不能進(jìn)入中斷

12 SCB->VTOR = NVIC_VectTab_FLASH;

13 temp1=(~group)&0x07;//取后三位

14 temp1<<=8;

15 temp=SCB->AIRCR; //讀取先前的設(shè)置

16 temp&=0X0000F8FF; //清空先前分組

17 temp|=0X05FA0000; //寫入鑰匙

18 temp|=temp1;

19 SCB->AIRCR=temp; //設(shè)置分組 寄存器地址0xe000ed00c 可以看cortex m3權(quán)威指南

20 }

21

22

23 /******************************************************

24 *函數(shù): NVIC_Irq_Config(u8 irq,u8 priority)

25 *功能: 設(shè)置中斷irq中斷優(yōu)先級(jí)

26 *參數(shù): irq--中斷號(hào)

27 priority--中斷優(yōu)先級(jí),4位有效

28 0組0:4 1組1:3 2組2:2 3組3:1 4組4:0

29 有規(guī)律的,不難設(shè)置,例如組2,想用第一優(yōu)先級(jí)1,第二優(yōu)先級(jí)2,則priority=0110B=0x6

30 *返回: 無(wú)

31 ******************************************************/

32 void NVIC_Irq_Config(u8 irq,u8 priority)

33 {

34 u8 addr_en,offset_en;

35 u8 addr,offset;

36

37 addr=irq/4;

38 offset=irq%4;

39

40 addr_en=irq/32; //中斷使能控制寄存器

41 offset_en=irq%32;//中斷使能控制位

42

43 NVIC->ISER[addr_en]|=1<

44 NVIC->IPR[addr]=priority<<(offset*8+4);// (優(yōu)先級(jí)設(shè)置)<<(offset*8+4);

45 }


本站聲明: 本文章由作者或相關(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)系本站刪除。
換一批
延伸閱讀

MCS 51 單片機(jī)有 5 個(gè)(8052 有 6 個(gè)) 中斷源,為了使每個(gè)中斷源都能獨(dú)立地被允許 或禁止 ,以便用戶能靈活使用,它在每個(gè)中斷信號(hào)的通道中設(shè)置了一個(gè)中斷屏蔽觸發(fā)器。只有該觸發(fā)器無(wú)效,它所對(duì)應(yīng)的中斷請(qǐng)求信號(hào)才...

關(guān)鍵字: 中斷控制 中斷響應(yīng) 單片機(jī)

閱讀nvic:系統(tǒng)中斷管理。我的理解——管理系統(tǒng)內(nèi)部的中斷,負(fù)責(zé)打開和關(guān)閉中斷。基礎(chǔ)應(yīng)用1,中斷的初始化函數(shù),包括設(shè)置中斷向量表位置,和開啟所需的中斷兩部分。所有程序中必須的。用法: void NVIC_Configur...

關(guān)鍵字: nvic STM32

cortex-m3支持256個(gè)中端,其中包含了16個(gè)內(nèi)核中斷,240個(gè)外部中斷。stm32只有84個(gè)中斷,包括16個(gè)內(nèi)核中斷和68個(gè)可屏蔽中斷。stm32f103上只有60個(gè)中斷,f107上才有68個(gè)中斷。中斷是st...

關(guān)鍵字: nvic STM32 中斷管理

朋友們,如果你需要在STM32上移植RTOS,那么首先必須深入理解它的中斷系統(tǒng)。什么是NVIC?即嵌套向量中斷控制器(Nested Vectored Interrupt Controller)。STM32的中有一個(gè)強(qiáng)大而...

關(guān)鍵字: nvic STM32

前言:1.要想學(xué)習(xí)STM32中斷,要先掌握STM32對(duì)優(yōu)先級(jí)的定義;2.有51單片機(jī)開發(fā)經(jīng)驗(yàn)會(huì)比較容易理解中斷優(yōu)先級(jí);3.本篇博文基于STM32F103ZET6芯片和3.5.0標(biāo)準(zhǔn)庫(kù)編寫;4.本篇博文從寄存器入手,最終實(shí)...

關(guān)鍵字: nvic STM32 中斷

////////////////////////////////////////////////////////////////////////////////////////////////////// // 2012...

關(guān)鍵字: MSP430 中斷控制 周期信號(hào) 定時(shí)器

用STM32做項(xiàng)目已經(jīng)有段時(shí)間了,但是我忽然發(fā)現(xiàn)我對(duì)NVIC其實(shí)一點(diǎn)都不了解,所以今天補(bǔ)習(xí)了一下NVIC的知識(shí)以及我自己對(duì)NVIC中斷優(yōu)先級(jí)設(shè)置的了解,希望對(duì)大家有所幫助:對(duì)于NVIC中斷優(yōu)先級(jí)的設(shè)置一直都不是很清楚;具...

關(guān)鍵字: nvic STM32 中斷優(yōu)先級(jí)

對(duì)于?STM32?講(還是以Timer2例),外部中斷通道位置?28(35?號(hào)優(yōu)先級(jí))是給外部設(shè)備?TIME2?的,但?TIME2本身能夠引起中斷的中斷源或事件有好多個(gè),比如更新事件(上溢/下溢)?、

關(guān)鍵字: STM32 中斷控制

例程: /* Configure one bit for preemption priority */ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); /* Enable...

關(guān)鍵字: nvic STM32

ARM7比較難理解和控制的就是中斷控制,把自己找的一些資料寫上來(lái)。1、 快速中斷FIQ⑴在主程序中:① 在VICIntSelect中將中斷分配為FIQ中斷;② 在VICIntEnable中使能外設(shè)中斷。 ⑵中斷服務(wù)程序中...

關(guān)鍵字: vic 中斷控制
關(guān)閉