4.软件设计

4.1 复位时序

图5为AD2S1205复位驱动时序。

当AD2S1205的电源电压小于4.5V时,AD2S1205处于低电压复位状态,LOT/DOS同时为低电平指示,系统复位无信号。当电源电压超过4.5V以后,RESET管脚需保持有效电平至少10μs以上,使得AD2S1205芯片复位。在复位无效后,AD2S1205需要至少20ms时间,使得内部电路能够稳定工作,并且追踪电路能够稳定追踪输入角度。经过20ms的稳定工作时间后,SAMPLE有效并且保持一段时间,复位软件流程如图6所示。

4.2 并口数据读取时序

图7为通过并行接口读取AD2S1205数据的驱动时序。并口数据读取时序从SAMPLE有效开始,SAMPLE必须保持264ns有效时间,锁存内部角度/速度数据至角度/速度寄存器中,然后在SAMPLE有效后750ns,MCU才能控制CS管脚有效,使锁存允许,并采用RD的下降沿锁存角度/速度寄存器中的一项数值内容至数据管脚(并口模式)。RDVEL决定锁存角度寄存器还是速度寄存器,所以在RD下降沿的前5ns和后7ns,RDVEL必须保持稳定不变。在RD下降沿,延时12ns后,即可从并口读取角度数据或者速度数据。

5.实验结果

实验测试系统由测试驱动板,旋变和拖动电机组成,如图8所示。拖动电机旋转带动旋变运行于不同的转动角度和转动速度上,由解码电路输出励磁信号,驱动旋变,同时接收反馈的正、余弦信号,解析旋变的转动角度和转动速度。通过使用仿真器,在初始化函数的前后设置断点控制函数调试过程,并观察函数运行结果是否正确。通过示波器,观察函数运行后相关管脚上的驱动时序是否正确,并观测RESET/SAMPLE/LOT/DOS管脚。在初始化执行过程中,需参照复位时序观察MCU控制的RESET和SAMPLE管脚是否在对应时间送出对应电平或者脉冲,需观察如果系统硬件连接正常,DOS/LOT管脚是否在初始化后输出高电平指示,或者如果系统硬件连接不正常(比如旋变接线断路),DOS/LOT管脚是否在初始化后输出对应故障信号。

图9为AD2S1205的初始化函数调用时的总图。

框a为开始调用初始化函数的时间点位置,在这个时间点,RESET管脚送出15μs的复位有效低电平脉冲,同时置高SAMPLE/CS_RD两路管脚为无效高电平。框b为结束初始化函数的时间点位置,在这个时间点,SAMPLE送出400ns采样有效低电平脉冲,然后读取DOS/LOT状态供应用层使用。初始化函数整体时间为30ms,即RESET复位结束到SAMPLE有效读取DOS/LOT状态的延时时间为30ms。读取位置测试程序每100μs调用一次角度函数和速度函数,测试结果如图10所示。