网站大量收购独家精品文档,联系QQ:2885784924

第六节 人机交互 — 输入接口.ppt

  1. 1、本文档共72页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.7 CH451的按键代码 按键代码 DIG0 DIG1 DIG2 DIG3 DIG4 DIG5 DIG6 DIG7 SEG0 40H 41H 42H 43H 44H 45H 46H 47H SEG1 48H 49H 4AH 4BH 4CH 4DH 4EH 4FH SEG2 50H 51H 52H 53H 54H 55H 56H 57H SEG3 58H 59H 5AH 5BH 5CH 5DH 5EH 5FH SEG4 60H 61H 62H 63H 64H 65H 66H 67H SEG5 68H 69H 6AH 6BH 6CH 6DH 6EH 6FH SEG6 70H 71H 72H 73H 74H 75H 76H 77H SEG7 78H 79H 7AH 7BH 7CH 7DH 7EH 7FH 1.8 键盘管理操作 处理器从 CH451获得按键代码的过程时序图。 CH451的读取按键代码命令只有位数据 B8~B11 是有效的,所以处理器不必发出读取按键代码命令的B0~B7。 1.9 键盘管理过程时序图 2.0 实验箱上的电路连接图 2.1 驱动程序设计 #define DOUT (116) //P0.16 #define LOAD (120) //P2.20 #define DIN (118) //P2.18 #define DCLK (116) //P2.16 CH451的写函数CH451_Write(uint16 Data,uint8 Length), CH451的读函数uint8 CH451_Read() 两个驱动程序我们先对几个要用到的IO引脚定义如下: /******************************************************************** * 函数名:CH451_Write() * 功能:实现对CH451写入给定长度的数据 *入口参数:uint16 Data 待发送的数据 * uint8 Length 数据长度 ********************************************************************/ void CH451_Write (uint16 Data, uint8 Length) { IO2SET = LOAD; //LOAD置高 /* 发送Length个位数据,从低位发送起 */ for(;Length0;Length--) { IO2CLR = DCLK; if((Data0x01) == 0x01) IO2SET = DIN; //DIN置高 else IO2CLR = DIN; //DIN清0 IO2SET = DCLK; } /* 给LOAD线一个低脉冲 */ IO2CLR = LOAD; IO2SET = LOAD; } 驱动程序设计----写函数 /******************************************************************** * 函数名:CH451_Read() * 功能:实现从CH451读键盘代码数据 *入口参数:无 *出口参数:键盘代码值 ********************************************************************/ uint8 CH451_Read () { uint8 i,Data = 0; /* 读取7位数据,从高位接收起 */ for(i=0;i7;Length--) { IO2SET = DCLK; Data = Data1; //Data左移1位 if((IO0PINDOUT) != 0) Data++; //如果DOUT==1,Data=Data+1; IO2CLR = DCLK; } IO2SET = DCLK; //将DCLK恢复为高电平 } 驱动程序设计----读函数 1、实验目的 掌握编码式键盘电路原理,学会驱动程序的编写。 2、实验内容 对16个矩阵式按键编号为1~16,当有按键事件发生时,蜂鸣器蜂鸣。如果1号键按下则蜂鸣一声,2号键按下则蜂鸣两声,依此类推。 3、实验参考程序 /***********

文档评论(0)

189****6140 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档