2 总体方案设计
2.1 总体分析
本次设计实现的是一两座标步进电机驱动运动工作台控制系统的设计。设计采用单片机对系统进行控制,单片机的包括键盘与显示的控制、与PC机的串口通讯、以及电机输入输入输出信号的控制。电机的输入信号包含报警监测,在机床边缘运用一个接近开关即可实现此目的。
2.2 方案框图
单片机作为控制的核心,一方面对机床的运动方向和位移量进行控
制,另外还将与键盘对应的位移信息显示在LED上,并实现与PC机的通信以及对报警的处理。
三相交流 继电器控制 4*8键盘 HD7279A 单片机 光电隔离 功率接口 步进电机X 8LED显示 光电隔离 功率接口 步进电机Y 串行通信 至上位即 行程开关 图2.1 总体方案设计图
3 单元模块设计
3.1 键盘与显示模块
3.1.1 模块工作原理
本单元模块电路的功能是通过对单片机编程,使当前按键信息在8个LED上显示出来,由芯片CH452来对数码管进行驱动,并对键盘进行扫描。
图3.1为八位LED电路。同一时刻,如各位选线处于选通,8位LED将显示相同字符。若要各位LED能同时显示与本位相应的字符,必须动态显示,即某一时刻,某一位的位选线处于选通,其他位选线处于关闭,同时,段码线上输出相应位要显示的段码。同时刻,8位LED中选通那一位显示出字符,另一位则熄灭。在下一时刻使下一位位选线处于选通,在段码线上输出将要显示字符的段码,则同一时刻,只有选通位显示出相应的字符,而其他各位则是熄灭的。如此循环,就可使两位分别显示将显示的字符。
这些字符是不同时刻出现的,在同一时刻,只有一位显示,其他熄灭,因人眼视觉作用,只要显示间隔短,就可造成同时亮的现象。
VCC2325C2220C10.114910H3L2GNDGNDVCCADDRSEG0SEG1SEG2SEG3SEG4SEG5SEG6SEG71516171819202122R66200CH45212RSTDIG0DIG1DIG2DIG3DIG4DIG5DIG6DIG78×124INT2726SCLSDA12345678K8图3.1 显示单元模块电路图
3.1.2 芯片CH452介绍
CH452是数码管显示驱动和键盘控制芯片。CH452内置振荡电路,可以动态驱动8位数码管或者64位LED,具有BCD译码、段位寻址等功能;还可进行64键扫描;CH452通过4线串行或2线串行与单片机交换数据可以对单片机提供上电复位信号。
图3.2 CH452工作原理图
3.1.2.1 特点
1、显示驱动
? 内置电流驱动级,段电流不小于15mA,字电流不小于80mA。 ? 动态显示扫描控制,直接驱动8位数码管、64位发光管LED或64级
光柱。
? 可选数码管的段与数据位相对应的不译码方式或者BCD 译码方
式。
? BCD译码支持自定义BCD码,用于显示一个特殊字符。 ? 数码管的字数据左移、右移、左循环、右循环。
? 各数码管的数字独立闪烁控制,可选快慢两种闪烁速度。 2、键盘控制
? 内置64键控制器,基于8×8矩阵键盘扫描。 ? 内置按键状态输入的下拉电阻,内置去抖动电路。
? 键盘中断,可以选择低电平有效输出或者低电平脉冲输出。 ? 提供按键释放标志位,可供查询按键按下与释放。
? 支持按键唤醒,处于低功耗节电状态中的CH452 可以被部分按键
唤醒。 3、外部接口
? 同一芯片,可选高速的4 线串行接口或者经济的2 线串行接口。 ? 4 线串行接口:支持多个芯片级联,时钟速度从0 到2MHz,兼容
CH451 芯片。
? 2 线串行接口:时钟速度从500Hz 到200KHz,兼容两线I2C 总线,
节约引脚。
? 内置上电复位,可以为单片机提供高电平有效和低电平有效复位
输出。
3.1.2.2 显示驱动原理
CH452对数码管和发光管采用动态扫描驱动,顺序为DIG0 至DIG7,当其中一个引脚吸入电流时,其它引脚则不吸入电流。CH452内部具有电流驱动级,可以直接驱动0.5英寸至1 英寸的共阴数码管,段驱动引脚SEG6~SEG0 分别对应数码管的段G~段A,段驱动引脚SEG7 对应数码管的小数点,字驱动引脚DIG7~DIG0分别连接8 个数码管的阴极;CH452 也可以连接8×8矩阵的发光二级管LED阵列或者64 个独立发光管或者64级光柱;CH452可以改变字驱动输出极性以便直接驱动共阳数码管(不译码方式),或者通过外接反相驱动器支持共阳数码管,或者外接大功率管支持大尺寸的数码管。
CH452内部具有8 个8 位的数据寄存器,用于保存8 个字数据,分别对应于CH452所驱动的8个数码管或者8 组每组8 个的发光二极管。CH452支持数据寄存器中的字数据左移、右移、左循环、右循环,并且支持各数码管的独立闪烁控制,在字数据左右移动或者左右循环移动的过程中,闪烁控制的属性不会随数据移动。
CH452 支持任意段位寻址,可以用于独立控制64 个发光管LED 中的任意一个或者数码管中的特定段(例如小数点),段位编址顺序与键盘编址一致,编址从00H 到3FH。当用“段位寻址置1”命令将某个地址的段位置1 后,该地址对应的发光管LED 或者数码管的段会点亮,该操作不影响任何其它LED 或者数码管其它段的状态。
CH452支持64级的光柱译码,用64 个发光管或者64级光柱表示65种状态,加载新的光柱值后,编址小于指定光柱值的发光管会点亮,而大于或者等于指定光柱值的发光管会熄灭。 3.1.2.2 键盘扫描原理
CH452 的键盘扫描功能支持8×8 矩阵的64 键键盘。在键盘扫描期