ZHCU083I January 2013 – October 2021 TMS320F2802-Q1 , TMS320F28026-Q1 , TMS320F28026F , TMS320F28027-Q1 , TMS320F28027F , TMS320F28027F-Q1 , TMS320F28052-Q1 , TMS320F28052F , TMS320F28052F-Q1 , TMS320F28052M , TMS320F28052M-Q1 , TMS320F28054-Q1 , TMS320F28054F , TMS320F28054F-Q1 , TMS320F28054M , TMS320F28054M-Q1 , TMS320F2806-Q1 , TMS320F28062-Q1 , TMS320F28062F , TMS320F28062F-Q1 , TMS320F28068F , TMS320F28068M , TMS320F28069-Q1 , TMS320F28069F , TMS320F28069F-Q1 , TMS320F28069M , TMS320F28069M-Q1
主函数为 STVELMOVE_run(ST_VELMOVE_Handle handle),其中 handle 是具体 ST_VelMove_t 对象的指针。此函数运行 SpinTAC 速度移动。此函数必须以 SpinTAC 速度控制的相同速率运行。
void STVELMOVE_run(ST_VELMOVE_Handle handle)
参数:
编号 | 类型 | 参数 | 说明 |
---|---|---|---|
1 | ST_VELMOVE_Handle | Handle | ST_VelMove_t 对象的指针 |
SpinTAC 速度移动状态转换图如图 4-8 所示。请注意,在图 4-8 中,IDLE 到 INIT,再到 CONF 的状态转换在一个采样时间内发生。因此,在启用系统配置的采样时间内生成系统配置。
表 4-8 说明了 SpinTAC 速度移动的状态。
起始状态 | 结束状态 | 转换条件(1)(2)(3)(4) | 操作 |
---|---|---|---|
IDLE | 保持 IDLE 状态
|
||
INIT | RES == false 并且 ENB 在上升沿 | ||
INIT | 参数验证
|
||
IDLE | ERR_ID != 0 或 STEP == 0 | 设置 ENB = false | |
CONF | ERR_ID == 0 并且 STEP != 0 | ||
CONF | 根据配置的参数确定系统配置 | ||
IDLE | TST == true | 将 VelEnd 的值设置回 cfg.VelStart 的值 | |
BUSY | TST == false | ||
BUSY | 生成系统配置
|
||
IDLE | RES == true 或 ENB == false 或 DON == true | 设置 ENB = false | |
HALT | VelEnd 在系统配置中发生变化 | ||
HALT | 将 AccRef 减至 0。在每个采样时间内更新 AccRef、JrkRef。准备平滑移动至新 VelEnd。 | ||
INIT | AccRef == 0 |