首 页       用户登录  |  用户注册
设为首页
加入收藏
联系我们
按字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
按声母检索 A B C D E F G H J K L M N O P Q R S T W X Y Z 数字 符号
您的位置: 5VAR论文频道论文中心理工论文电子通信
   数码管显示驱动和键盘扫描控制器CH451及其应用      ★★★ 【字体: 】  
数码管显示驱动和键盘扫描控制器CH451及其应用
收集整理:佚名    来源:本站整理  时间:2009-01-10 22:36:49   点击数:[]    

H451与MCS-51单片机的连接如图1所示,其中DOUT引脚最好连接到单片机的中断输入引脚,这样可用中断方式响应按键。如果连接到非中断输入引脚,则应该使用查询方式确定CH451是否检测到有效按键,同时还可向单片机提供复位信号RESET并带Watch-Dog功能。CH451的段驱动引脚串接的电阻R1(200Ω)用于限制和均衡段驱动电流。在5V电源电压下,串接200Ω电阻通常对应13mA段电流。CH451具有64键的键盘扫描功能,为了防止键被按下后在SEG信号线与DIG信号线之间形成短路而影响数码管显示,一般应在CH451的DIG0~DIG7引脚与键盘矩阵之间串接限流电阻R2,其阻值可以从1kΩ至10kΩ。

将P1.0与DIN连接可用于输入串行数据,串行数据输入的顺序是低位在前,高位在后。另外,在上电复位后,CH451 默认选择1线串行接口,如需选择4线串行接口,则应在DCLK输出串行时钟之前,先在DIN上输出一个低电平脉冲,以通知CH451为4线串行接口。将P1.1与DCLK连接可提供串行时钟,以使CH451在其上升沿从DIN输入数据,并在其下降沿从DOUT输出数据。LOAD用于加载串行数据,CH451一般在其上升沿加载移位寄存器中的12位数据以作为操作命令进行分析并处理。也就是说,LOAD的上升沿是串行数据帧的帧完成标志,此时无论移位寄存器中的12位数据是否有效,CH451都会将其当作操作命令来处理。应注意的是,在级联电路中,单片机每次输出的串行数据必须是单个CH451的串行数据的位数乘以级联的级数。

下面是该电路的驱动程序:

;主程序需要定义的参数

DCLK BIT P1.1 ;串行数据时钟,上升沿激活

DIN BIT P1.0 ;串行数据输入

LOAD BIT P1.2 ;串行命令加载,上升沿激活

DOUT BIT P3.2 ;接INT0,键盘中断和键值数据输出

KEY DATA 7FH ;存放键盘中断时读取的键值

;******* 初始化子程序 *******

INIT CLR DIN ;先低后高,输出上升沿通知

CH451选择4线串行接口

SETB DCLK ;置为默认的高电平

SETB DIN

SETB LOAD

SETB DOUT ;置为输入

MOV B#04H ;设置系统参数命令

MOV A#07H ; Watch-Dog使能,开键盘、显示功能

LCALL WRITE

MOV B#03H ;设置移位命令

MOV A#00H ;开环左移

LCALL WRITE

MOV B#05H ;设置显示参数

MOV A#00H ;不译码,8位显示,最亮

LCALL WRITE

MOV B#06H ;设置闪烁控制

MOV A#00H ;不闪烁

LCALL WRITE

CLR IT0 ;置外部信号为低电平触发

CLR IE0 ;清中断标志

SETB EX0 ;允许键盘中断

SETB EA

RET

;******* 输出命令子程序 ******

;入参:B、ACC待写的12位数据 低8位在ACC中 高4位在B的低4位中

WRITE CLR EX0 ;禁止键盘中断

CLR LOAD ;命令开始,此命令可以放在后面

MOV R7#08H ;将ACC中8位送出

WRITE_8RRC A ;低位在前,高位在后

CLR DCLK

MOV DINC ;送出一位数据

SETB DCLK ;产生时钟上升沿通知

CH451输入位数据

DJNZ R7 WRITE 8 ;位数据未完,继续

MOV AB

MOV R7#04H ;将B中4位送出

WRITE 4RRC A ;低位在前高位在后

CLR DCLK

MOV DINC

SETB DCLK

DJNZ R7 WRITE 4

SETB LOAD ;产生加载上升沿通知

CH451处理命令数据

SETB EX0 ;允许键盘中断

RET

******* 输入键值子程序 ******

 出参 ACC键值数据

READ CLR EX0 ;禁止键盘中断

CLR LOAD ;命令开始

MOV A#07H ;读取键值命令的高4

位0111B

MOV R7#04H ;忽略12位命令的低

8位

READ 4 RRC A ;低位在前,高位在后

CLR DCLK

MOV DINC

SETB DCLK

DJNZ R7 READ 4

SETB LOAD ;产生加载上升沿通知

CH451处理命令数据

CLR A ;先清除键值单元以便移位

MOV R7#07H ;读入7位键值

READ_7 MOV CDOUT ;读入一位数据

CLR DCLK ;产生时钟下降沿通知

CH451输出下一位

RLC A ;数据移入ACC,高位

在前,低位在后

SETB DCLK

DJNZ R7 READ_7 ;位数据未完继续

CLR IE0 ;清中断标志,读操作

过程中有低电平脉冲

SETB EX0 ;允许键盘中断

RET

4 结束语

用CH451扩展键盘显示接口,具有接口简单、占用CPU资源少、外围器件简单、性能价格比高等优点,可在各种单片机系统中得到广泛的应用。



上一页  [1] [2] [3] 


Tags:


文章转载请注明来源于:5VAR论文频道 http://paper.5var.com。本站内容整理自互联网,如有问题或合作请Email至:support@5var.com
或联系QQ37750965
提供人:佚名
  • 上一篇文章:MCS-51系统中断优先级的软扩展

  • 下一篇文章:单片机中断多优先级的软件扩展方法
  • 返回上一页】【打 印】【关闭窗口
    中查找“数码管显示驱动和键盘扫描控制器CH451及其应用”更多相关内容 5VAR论文频道
    中查找“数码管显示驱动和键盘扫描控制器CH451及其应用”更多相关内容 5VAR论文频道
    最新热点 最新推荐 相关新闻
  • ››嵌入式系统的通信规约管理平台设计...
  • ››一种基于七号信令的局间话单采集系...
  • ››对于变频器的制动技术分析
  • ››电子文件管理元数据宏观结构多维分...
  • ››浅论卫星电视接收机的常见故障的检...
  • ››信息时代网络用户信息检索焦虑的心...
  • ››论GIS在高校房产管理中的实际应用
  • ››关于电力通信发展战略的思考 金李莎...
  • ››2G、3G切换精细化优化分析思路探讨...
  • ››光纤自动化生产的需求与时机
  • ››数码管显示驱动和键盘扫描控制器CH...
  •   文章-网友评论:(评论内容只代表网友观点,与本站立场无关!)
    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 网站地图
    Copyright © 2006-2033 5Var.Com. All Rights Reserved .