硬石开发版学习记录
正转控制
正向和反向对应的霍尔二进制相加=7,只用一个是switch函数就可以了
给出的代码,对比前面的例程,没有使用的端口就没有start;
比如case1:C+A-, 仅仅start了通道3的正向输出口,和通道1的反向输出口,前面六步法里面的通道对应的正反输出口都start了,觉得奇怪,应该是举例用的,实际应该不用
/* 获取霍尔传感器引脚状态,作为换相的依据 */
__IO uint32_t tmp = 0;
uwStep = HallSensor_GetPinState();
if(Dir == CW)
{
uwStep = (uint32_t)7 - uwStep; // 根据顺序表的规律 CW = 7 - CCW;
}
/*---- 定义定时器OC1为A(U)相 OC2为B(V)相,OC3为C(W)相 ---- */
/*---- 定义uWSt