设计要求
FPGA接收编码器的信号,控制LED颜色的变换,编码器采用HRPG-AD32编码器。
方案设计
- 增量型旋转编码器有两路相位不同的信号输出,Phase A 和 Phase B,FPGA需要对这两路输入信号进行分析,判断出旋转的动作,输出一个加(up)或减(down)的脉冲信号。
- 同时,很多旋转编码器都有按键功能,除了旋转以外可以按下,这个按键和旋转是独立的。FPGA内部对按键进行了消抖动,并响应动作产生一个脉冲信号(keyout) - 改代码加入了现象的验证,输出为6位数据,可接上LED观看现象,旋转和按键会使LED产生流水灯效果 - 在小脚丫开发板上的现象如下图,两个三色LED会按照如图方式进行切换轮流显示。视频中可以观看到
旋转编码器状态转换
==硬件设计== 连接图中,主要有电源和GND,两路信号,按键信号(如果有按键),大地(接机壳,Avago HRPG-AD32#16F上没有按键,多了一个接机壳的地脚,仍然是5个脚)
小脚丫FPGA同旋转编码器的连接
旋转编码器程序结构
小脚丫FPGA驱动旋转编码器所占用资源
项目视频演示: http://v.youku.com/v_show/id_XMTM5NDc3MjI4MA==.html ==本设计中用到的主要芯片== - LCMXO2-1200:Lattice FPGA,主频133Mhz,PBGA132封装(LCMXO2-1200数据手册) - Avago Technologies:HRPG AD32 16F,旋转编码器,(Avago HRPG-AD32#16F数据手册) - 小脚丫开发板:DIP40封装形式,小巧精悍的FPGA开发板,(小脚丫开发板相关信息) - 小脚丫FPGA开发板【自带编译器】至爱板网商城购买:点击购买 - 电路相关文件下载:http://www.cirmall.com/circuit/2704