“线程:测试”中讨论的其它部件,
您好,
我的所有工作都在做,对其进行了编程,输出看起来就像所有数据表/应用说明上的波形一样。 我的 SPI 处于“高级 SPI 模式/ SDO 激活”状态,正在发送0100 0000 (4MHz 时钟)读取 D7-D0,然后发送1110 0000 (通道1)读取 D9-D8。 当 INT / HOLD 引脚设置为 HIGH (高)时,SPI 端口未处于活动状态。 我得到了一个值,但该值通常以128开始,当我增加输入通道1上的毫伏时,最高可达255。 然后 SPI 读数返回到128,但输出电压继续正确上升。 这种旋转发生了几次,然后 D9会偏高,但 D8不会偏高,128到255会继续。 D9在第二次旋转时不会启动,就好像 D8坏了一样,它需要几次旋转,然后才会启动 D9。 频率设置为4.95khz (大孔马达),增益设置为.111, “积分器时间常数”根据马达运行的 RPM 计算。 怠速运转时为600转/分,转速约为10,500转/分时降至40转/分。 我必须将增益设置为.111,这样我就可以达到10500 rpm (如果我正确读取了数据表)。 所有 SPI 信号和时钟都从 FPGA 中发出,因此,如果4MHz 是问题,我可以根据需要更改时钟。 我连续编写3个 SPI 命令。 T9为375 ns (发射两个字或 CS 高时之间的时间),SPI 时钟为4 MHz。 我在将 INT / HOLD 拉低以读取数据后立即激活 SPI,我延迟了读取,但它没有产生任何影响。 同样,输出引脚在11000 rpm 时看起来是正确的,但我在 SPI 上读取的数据与“输出”引脚上的输出电压不匹配。
任何建议都将不胜感激。
提前感谢您的所有帮助,
此致,
布莱克