我的理解:例程中HALL3_NEXT_STATE_MACRO作用在 HallMap 创建之后,根据当前采集到的霍尔状态信号确定HallMapPointer的值是多少。然后主中断程序中应该根据HallMapPointer的值设定驱动PWM开启状态pwm1.CmtnPointer。如下面的程序:
但是例程中PWM开启状态pwm1.CmtnPointer似乎与HallMapPointer没有关系,pwm1.CmtnPointer还是根据hall1.HallGpioAccepted的状态来进行对应的赋值。如下图:
我想问:HallMap 创建在后面电机的运转中起什么作用?HallMap 不是应该用来确定pwm1.CmtnPointer的值吗?
user5339769:
我的理解:例程中HALL3_NEXT_STATE_MACRO作用在 HallMap 创建之后,根据当前采集到的霍尔状态信号确定HallMapPointer的值是多少。然后主中断程序中应该根据HallMapPointer的值设定驱动PWM开启状态pwm1.CmtnPointer。如下面的程序:
但是例程中PWM开启状态pwm1.CmtnPointer似乎与HallMapPointer没有关系,pwm1.CmtnPointer还是根据hall1.HallGpioAccepted的状态来进行对应的赋值。如下图:
我想问:HallMap 创建在后面电机的运转中起什么作用?HallMap 不是应该用来确定pwm1.CmtnPointer的值吗?
user5339769:
我的理解:例程中HALL3_NEXT_STATE_MACRO作用在 HallMap 创建之后,根据当前采集到的霍尔状态信号确定HallMapPointer的值是多少。然后主中断程序中应该根据HallMapPointer的值设定驱动PWM开启状态pwm1.CmtnPointer。如下面的程序:
但是例程中PWM开启状态pwm1.CmtnPointer似乎与HallMapPointer没有关系,pwm1.CmtnPointer还是根据hall1.HallGpioAccepted的状态来进行对应的赋值。如下图:
我想问:HallMap 创建在后面电机的运转中起什么作用?HallMap 不是应该用来确定pwm1.CmtnPointer的值吗?
Annie Liu:
为更加有效地解决您的问题,我们建议您将问题发布在E2E英文技术论坛上https://e2e.ti.com/support/microcontrollers/c2000/f/171,将由资深的工程师为您提供帮助。我们的E2E英文社区有TI专家进行回复,并得到全球各地工程师的支持,分享他们的知识和经验。