我们使用的旋转编码器时序为 → CW(顺时针) A ----------- -------------- HIGH ---------- LOW ← CCW(逆时针) B -------- ------------------ HIGH ---------- LOW ENA脚下降沿触发时查询B脚的电平,若为低电平时,由时序图可知为顺时针方向旋转(CW),Position增加1 而ENA脚上升沿触发时查询B脚的电平,若为高电平时,由时序图可知为顺时针方向旋转(CW),Position已增加1,故此时我们不再考虑 ENA脚下降沿触发时查询B脚的电平,若为高电平时,由时序图可知为逆时针方向旋转(CCW),Position减少1 而ENA脚上升沿触发时查询B脚的电平,若为低电平时,由时序图可知为逆时针方向旋转(CCW),Position已减少1,故此时我们不再考虑 编码器模块已设置了对ENA ENB的上拉以及按键SW的上拉 将ENA ENB SW依次连接到传感器扩展板或者Arduino主控板的数字脚2、3、4上 VCC GND依次连接到+5V和GND上 下载运行代码,打开串口监视器Serial Monitor 旋转编码器可看到顺时针旋转时旋转过一个编码点后数值会增加1 逆时针旋转则相应减少1 按下按键时旋转编码器模块板载的LED会被点亮,同时串口监视器中会显示"Switch Pressed" [C++] 纯文本查看 复制代码
上一篇:Arduino官方发布Arduino Esplora 下一篇:大家有试过用progisp读取arduino么? |
|