论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
2.1 状态编码
由图4可知,A、B信号的相位相差1/4个周期,所以可得图6所示的状态变换图。
若规定顺序时针方向计数器为加,逆时针方向计数器为减。
这样,通过不同状态值的变换就可对数据进行加操作、减操作和不操作,从而实现对信号的连续处理功能。
2.2 软件编程
软件流程如图7所示。
主要可分为以下几部分。
①上电开始后,软件首先对AT89C2051的内部寄存器和RS422串行口进行初始化。通过对专用寄存器的赋值,设定工作状态和通信 方式,串行通信的波特率为9600b/s。
②初始化完成后,软件将检测端口Px.m和Px.n的状态,程序用两位记录端口相邻状态值,左一位代表前一状态,右一位代表当前状态,然后通过带进位的左循环指令进行状态更新。通过状态值变化,查表2,跳转进入执行程序。
③在执行程序中,可根据不同需要设定上下限进行数据处理。同时,由于处理程序很少,执行时间短,串行通信部分可采用查询方式完成。
3 应用实例
把该设计应用到笔者开发的项目