程序是照着别人已经运行正常的改的,电机转不起来,检测到程序
if(bHallStartStep>=6)bHallStartStep=0;
执行完这句后直接跳入@far @interrupt void EXTI_PORTA_IRQHandler(void)
这段执行完后紧接着是@far @interrupt void EXTI_PORTD_IRQHandler(void)
然后就一直在@far @interrupt void EXTI_PORTD_IRQHandler(void)里面一直执行了,return直接到@far @interrupt void EXTI_PORTD_IRQHandler(void)
这个片子我吃的不透,老师又催的紧,实在是没办法了,大家帮一下,万分感谢
-
main.txt
(2015-10-27 16:56 上传)
10.16 KB, 下载次数: 19
主程序
其实原理挺简单的,不知道楼主哪里不懂,程序哪里说明是位置已经发生变化,还是利用外部中断进行采样的
说明外部中断一直在触发,STM8S好像无法软件清除外部中断标志,这点比较麻烦