有感霍尔无刷电机转子的位置检测主要通过霍尔传感器来实现,通过处理器的异或功能可以讲霍尔传感器发出的三路180°的信号处理为一路60°的信号。通过检测该信号就可以对传感器的电角度位置进行计算,转子每转过60°的点角度,就会在处理器中对转子位置进行更新。
其具体的程序如图,当处霍尔无刷电机理器检测到转子位置角的跳变信号时,会首先判断中断是否为捕获中断,如果该中断不是捕获中断而是更新中断,在判断出更新中断中的判断超时后,处理器会确定转子位置角没有发生改变,转子电角度的值保持不变。
如果检测到终端为捕获中断,则处理器会对转子位置电角度进行更新,同时改变捕获极性。在进行转子位置检测的过程中,需不断的对定时器分频值进行调整,以保证计数器的时钟是一个合适的值,确保转子位置角检测的精度。