CH585中断优先级
1、抢占优先级
CH585含有两级抢占优先级,默认所有中断为高抢占优先级,可通过内核函数:PFIC_SetPriority 设置目标中断为低抢占优先级,
例如:程序中同时含有定时器中断,和GPIOA中断两个中断,在不设置抢占优先级时,如果定时器中断正在发生中(进定时器中断函数正在运行,还未结束前),此时GPIOA中断产生,则GPIOA中断必须等到定时器中断函数执行结束才可进入;


bit 7 = 1,低抢占优先级
bit7 = 0 ,高抢占优先级(所有中断默认值)
通过PFIC_SetPriority(TMR0_IRQn, 0x80); 将TMR0中断设置为低抢占优先级后,如果定时器中断正在发生中(进定时器中断函数正在运行,还未结束前),此时GPIOA中断产生,则会发生中断嵌套,也就是在定时器中断内部打断点,去执行GPIOA中断,执行完恢复现场继续运行定时器中断;
2、响应优先级(子优先级)
CH585芯片的中断,在抢占优先级相同情况下,在同一时间产生的中断,会按照下表所示的优先级序号排队执行,互相不可嵌套,优先级序号越小,响应优先级越高。



浙公网安备 33010602011771号