这几天在调试ft5406驱动,发现在中断处理函数中调用disable_irq后程序死机,现在解决了,中断服务程序中应该要调用disable_irq_nosync来关中断。
disable_irq和disable_irq_nosync,两者都是关中断函数,不同在于,前者要等待中断处理完成才返回,后者不等,直接返回,因此再中断处理函数关中断操作的话一定要调用disable_irq_nosync,否则会死机。
这几天在调试ft5406驱动,发现在中断处理函数中调用disable_irq后程序死机,现在解决了,中断服务程序中应该要调用disable_irq_nosync来关中断。
disable_irq和disable_irq_nosync,两者都是关中断函数,不同在于,前者要等待中断处理完成才返回,后者不等,直接返回,因此再中断处理函数关中断操作的话一定要调用disable_irq_nosync,否则会死机。