单片机中串口通信时,在不停中断中如何调用高级中断?
程序不会写,我实现的是吧温度传过来,然后比较,输出PWM波控制电机,但是中断4和中断0不知道怎么嵌套。求大神指教。。。...
程序不会写,我实现的是吧温度传过来,然后比较,输出PWM波控制电机,但是中断4和中断0不知道怎么嵌套。求大神指教。。。
展开
1个回答
展开全部
中断4和中断0的嵌套不需要人为干预。
如果它们是同一中断优先级,不会发生嵌套,当一个中断在处理时,即便另一个中断发生,也要等前一个中断处理完,才能响应第二个中断。
如果它们有不同的中断优先级,发生嵌套是自动处理的,当低优先级中断在处理时,如果高优先级中断发生,会中断前一个无中断,等高优先级中断处理完,返回低优先级中断继续执行程序。但是如果高优先级中断先于低优先级中断发生,低优先级中断只好等待。
如果它们是同一中断优先级,不会发生嵌套,当一个中断在处理时,即便另一个中断发生,也要等前一个中断处理完,才能响应第二个中断。
如果它们有不同的中断优先级,发生嵌套是自动处理的,当低优先级中断在处理时,如果高优先级中断发生,会中断前一个无中断,等高优先级中断处理完,返回低优先级中断继续执行程序。但是如果高优先级中断先于低优先级中断发生,低优先级中断只好等待。
追问
我要在串口通信中中断4 传过来的数进行比较 然后控制中断0产生的PWM波控制电机,是动态的数,不知道怎么写。。
追答
像你这种情况,是没办法“实时”控制的,只能接受控制滞后。你觉得哪个最重要就把哪个中断优先权设置为高,其他正常写程序。
其实无觉得无所谓,温度是慢速信号,可将其优先权设为低。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询