本帖最后由 7120223 于 2011-4-26 21:37 编辑
初次应用systick来做1ms延时用
本来串口中断优先级是
NVIC_PriorityGroup_0
NVIC_IRQChannelPreemptionPriority = 1;//或者其他数 都一样
NVIC_IRQChannelSubPriority = 0; //或者其他数 都一样
//-----------------------------------------------------------------
串口中断里systick进不了中断,经过反复试验
把上面程序修改成如下
NVIC_PriorityGroup_1
NVIC_IRQChannelPreemptionPriority = 0;//只要这个设置为0,下面设置0~7都没有用
NVIC_IRQChannelSubPriority = 0; //0~7 无效
//----------------------------------------------------------------
后来把
NVIC_PriorityGroup_1
NVIC_IRQChannelPreemptionPriority = 1;//此位设置为1,下面设置0~7,systick中断就都是可以进去了
NVIC_IRQChannelSubPriority = 0; //0~7
这是为什么呢,中断优先级 有那些要注意的么? |