当前位置:网站首页>STM32 --- NVIC interrupt
STM32 --- NVIC interrupt
2022-07-05 08:15:00 【chen_ bx】
STM32---NVIC interrupt
brief introduction
CM3 The kernel support 256 A break , Which includes 16 Kernel interrupts and 240 External interrupts , And have 256 The programmable interrupt settings of the .STM32 Not used CM3 Everything about the kernel , It's just a part of it .STM32 Yes 84 A break , Include 16 Kernel interrupts and 68 Maskable interrupts , have 16 Level programmable interrupt priority .
STM32F103 Above the series , It's just 60 Maskable interrupts ( stay 107 The series has 68 individual )
preemption & Response priority difference :
High priority preemption priority can interrupt the ongoing low preemption priority interrupt .
Preempt interrupts of the same priority , A high response priority cannot interrupt a low response priority interrupt .
Preempt interrupts of the same priority , When two interrupts occur at the same time , Which response has the highest priority , Which comes first .
If the preemption priority and response priority of two interrupts are the same , It depends on which interrupt occurs first ;
Interrupt parameter initialization function
void NVIC_Init(NVIC_InitTypeDef* NVIC_InitStruct);
The structure is as follows
typedef struct
{
uint8_t NVIC_IRQChannel; // Set interrupt channel
uint8_t NVIC_IRQChannelPreemptionPriority;// Set response priority
uint8_t NVIC_IRQChannelSubPriority; // Set preemption priority
FunctionalState NVIC_IRQChannelCmd; // Can make / Can make
} NVIC_InitTypeDef;
Initialize instance
NVIC_InitTypeDef NVIC_InitStructure;
NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;// A serial port 1 interrupt
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=1 ;// Preemption priority is 1
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 2;// Sub priority bit 2
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;//IRQ Channel enable
NVIC_Init(&NVIC_InitStructure); // Initialize... According to the parameters specified above NVIC register
Interrupt priority setting steps
① After the system is running, set the interrupt priority group first . Call function :
void NVIC_PriorityGroupConfig(uint32_t NVIC_PriorityGroup);
During the execution of the whole system , Set interrupt packet only once .
② For each interrupt , Set the corresponding preemption priority and response priority :
void NVIC_Init(NVIC_InitTypeDef* NVIC_InitStruct);
③ If you need to suspend / Jie hang , View the current activation status of the interrupt , Call related functions respectively .
边栏推荐
- Circleq of linked list
- Shape template matching based on Halcon learning [v] find_ cocoa_ packages_ max_ deformation. Hdev routine
- My-basic application 1: introduction to my-basic parser
- Hardware 1 -- relationship between gain and magnification
- Class of color image processing based on Halcon learning_ ndim_ norm. hdev
- Consul安装
- Process communication mode between different hosts -- socket
- Live555 push RTSP audio and video stream summary (III) flower screen problem caused by pushing H264 real-time stream
- My-basic application 2: my-basic installation and operation
- Keil use details -- magic wand
猜你喜欢
Some thoughts on extracting perspectives from ealfa and Ebeta
Solutions to compilation warnings in Quartus II
VESC Benjamin test motor parameters
Nb-iot technical summary
Wifi-802.11 negotiation rate table
Improve lighting C program
【论文阅读】2022年最新迁移学习综述笔注(Transferability in Deep Learning: A Survey)
C WinForm [view status bar -- statusstrip] - Practice 2
[trio basic tutorial 16 from introduction to proficiency] UDP communication test supplement
DokuWiki deployment notes
随机推荐
My-basic application 1: introduction to my-basic parser
Halcon's practice based on shape template matching [2]
Create inf module in AMI code
Zero length array in GNU C
H264 (I) i/p/b frame gop/idr/ and other parameters
[trio basic tutorial 17 from getting started to mastering] set up and connect the trio motion controller and input the activation code
[trio basic from introduction to mastery tutorial XIV] trio realizes unit axis multi-color code capture
Explication de la procédure stockée pour SQL Server
Adaptive filter
QEMU demo makefile analysis
Screen record of the opening ceremony of the Beijing winter olympics 2
Record the visual shock of the Winter Olympics and the introduction of the screen 2
动力电池UL2580测试项目包括哪些
C WinForm [get file path -- traverse folder pictures] - practical exercise 6
Introduction of air gap, etc
Improve lighting C program
Slist of linked list
Development tools -- gcc compiler usage
VESC Benjamin test motor parameters
[cloud native | learn kubernetes from scratch] III. kubernetes cluster management tool kubectl