EDN China > 设计实例 > 嵌入式系统 > MCU(单片机应用) > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

基于89C51单片机的数字视频监控系统键盘及报警控制卡

谭克俊?? 栾秀珍?? 房丽萍?? 范劲波?? 2012年12月18日 ?? 收藏1
键盘是数字视频监控录像系统中最重要的输入设备之一,是人机接口的重要组成部分。目前常用的工业控制计算机键盘除配置电子锁开关防止非法键盘输入外,与 PC键盘并没有多大区别。这种键盘不仅键数多,操作不灵活,而且通常只能作为输入设备,主机无法通过键盘与外设进行通信。本文在分析PC机键盘通信方式的基础上,设计出以89C51单片机为核心的数字视频监控系统键盘及报警控制卡,该卡具有键盘通信和输入输出报警两种功能,采用标准PCI卡的结构,但不占用主机硬件资源。其中,报警部分有4路输入和4路输出,可以与标准的报警传感器相连;键盘部分有16个键,通信方式与PC机完全兼容。采用这种控制卡,不仅可以节省视频监控系统中常用的专用报警解码器,而且能够实现在不占用主机硬件资源的情况下实现与外设的双向通信,利用这个特性,可以及时发现系统的异常情况并加以解决,从而大大提高目前普遍采用的基于Windows操作系统的数字视频监控录像系统的可靠性。

1 键盘与主机的通信方式

  主机通过键盘接口与键盘联络,主机与键盘的通信,实际上是键盘接口与键盘的通信。PC机键盘接口采用Intel8042芯片作为控制器,接收键盘扫描码以及向键盘发送命令。除了电源线和地线之外,键盘与主机之间还有2条双向通信线:时钟线和数据线。采用串行传送方式,在时钟脉冲作用下同步地收发数据,既可以向主机传送键盘响应或键盘扫描码,也可以接收来自主机的键盘命令。主机通过设置数据线和时钟线的状态,指导键盘收发数据:

(1)时钟线为低电平,禁止键盘传送数据。

  (2)时钟线为高电平,数据线为低电平,通知键盘接收命令或参数。

  (3)时钟线和数据线都为高电平,允许键盘传送数据。

1.1 键盘向主机发送数据

  由于键盘输入是异步的,且具有实时性,所以主机系统以中断方式支持键符的随机输入。每当键盘接口接收完从键盘送来的串行扫描码时,即向中断系统发出一个键盘中断,若CPU响应该中断,则由键盘中断程序读取此扫描码,经转换后成为系统扫描码,存到键盘缓冲区。键盘发送数据时,数据线和时钟线都由键盘控制。键盘发送一个字节的数据格式如图1所示。

基于89C51单片机的数字视频监控系统键盘及报警控制卡

键盘首先检测时钟线和数据线的状态,当两者皆为高电平时,开始传送数据。依次传送起始位、8位数据位(低位在前)、校验位和停止位。每传送一位,时钟线同步地产生一个脉冲。当主机收到该脉冲后,将时钟线置成低电平并保持一段时间,禁止键盘继续发码,以便于检验该数据的正确性,并产生中断,进行代码转换和执行相应的操作。如果检验出错,就向键盘传送重发命令0FEH,要求重送,键盘向主机发送数据采用奇校验方式。

1.2 键盘接收主机命令和参数

  主机首先将时钟线置为低电平,随后将数据线置为低电平,延时大约200μs后,将时钟线置为高电平。当键盘检测到这一状态后,开始接收主机命令,接收数据格式与发送的一样。键盘依次接收1个起始位、8个数据位、1个校验位、1个停止位。特别值得注意的是,在接收键盘命令或参数时,虽然数据是由主机发向键盘的,但是时钟脉冲是由键盘产生的。主机在时钟线上每接收一个脉冲的下降沿,就在数据线上输出一位数据。如果接收正确,在时钟线和数据线都成为高电平后,键盘将向主机发一个应答信号(0FAH),否则向主机发一个0FEH信号,要求重发。主机收到0FEH信号后,把刚才输出过的数据重新发送一次。如果这一过程持续三次后,键盘仍然不能正确接收,主机就放弃传送这个数据,转去执行下面的程序或显示错误信息。主机命令和参数也采用奇校验方式。

2 系统硬件电路设计

  本系统采用89C51单片机与PC键盘接口相连,图2给出了系统硬件电路原理。其中P3.0和P3.1分别与主机键盘接口的时钟线CLK和数据线DATA相连,P2口与4×4键盘矩阵相连,P0口经过驱动后与输入输出报警设备相连接。为保证键盘可靠工作,系统配置了看门狗电路 MAX813L,另外,系统还配置了蜂鸣器,每次按键均有声音提示。

基于89C51单片机的数字视频监控系统键盘及报警控制卡

《电子设计技术》网站版权所有,谢绝转载


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

串行通信? 数字视频监控? 报警控制卡? 89C51单片机?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈