关于 28335 eQEP模块例程的问题
现在想用eQEP模块以及编码器(E6A2-CW3C)测量电机的转速,使用Example_28..xEqep_pos_speed例程。
例程中说
// GPIO20/EQEP1A <- GPIO0/EPWM1A (simulates EQEP Phase A signal)
// GPIO21/EQEP1B <- GPIO1/EPWM1B (simulates EQEP Phase B signal)
// GPIO23/EQEP1I <- GPIO4 (simulates EQEP Index Signal)
把GPIO0/EPWM1A、GPIO1/EPWM1B 作为模拟输入。
GPIO20/EQEP1A、GPIO21/EQEP1B这两个我接的实际编码器的输出A、B两相,已确定电机旋转时编码器可以输出相位差为90度的方波(不连接DSPGPIO20/EQEP1A、GPIO21/EQEP1B时)
然而将编码器的A、B两相输出接到GPIO20/EQEP1A、GPIO21/EQEP1B引脚之后,只有一相可以检测到方波信号,另一相信号消失?
请问大神这是为什么?
在InitEQepGpio()中,GPIO20和GPIO21设置完全相同,怎么会出现这种情况。
编码器是直接接入,还是通过其他电路间接接入,直接接入考虑兼容性,负载情况;间接接入先将硬件部分确认正常再接如28335的IO脚
编码器是直接接入的,请问您说的兼容性是指?可能会有哪里的问题?怎样消除。现在已经确定硬件编码器输出没有问题,只是接到I/O口之后,A相正常,B相信号消失(杂波)。多谢回复。
应该使用高速光耦进行隔离,将处理器直接接到外设上是不明智的,可能导致信号兼容问题,或者后期产生电磁兼容问题,假设做静电实验,直接打一下处理器估计就复位或损坏了
隔离之后,调试时光耦前级信号和后级信号通过示波器分别调试,光耦选择考虑成本与性能综合,不过高速光耦也不是很贵,这个地方属于关键部位,下一点成本也是应该的,最常见的6N137,可以到10M速率,还有一些贴片的10~10M都有,能满足电机最高转速就可以了。
光耦与IO部分使用灌电流驱动,就是加上拉。
额。好复杂,谢谢了!
找到原因了,我手里的板子是GPIO50/EQEP1A复用,接线错了。
前辈你好,请问你的旋转变压器激励信号是怎么来的呢,是F28335生成的还是别的芯片发送的呢