1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四C语言

第4章单片机的C51语言 4.1 C51的程序结构 4.2 C51的数据结构 4.3 C51与汇编语言的混合编程 4.4 C51仿真开发环境 4.5 C51初步应用编程 4.5.1 IO端口的简单应用 4.5.2 IO端口的进阶实践 第4章单片机的C51语言 4.5.2.1 数码管动态显示原理与编程 两种显示接口:静态显示接口和动态显示接口 静态显示接口:一个数码管的引脚独立占据一根I/O口线。 优点:被显示数据只要送入并行口后就不再需要CPU干预,因而显示效果稳定。 缺点:占用资源较多 第4章单片机的C51语言 动态显示接口: 所有数码管的段码线对应并联接在一个并行口上,而每位数码管的公共端分别由一位I/O线控制; 由并口输出的显示码可被所有数码管收到,但只有满足导通条件的数码管可以被驱动。 第4章单片机的C51语言 工作原理: 采用快速切换方式(如10ms),每一时刻只有一只数码管导通工作。利用视力暂留特性,可获得连续显示效果。 优点:占用资源较少 缺点:占用机时较多(需要CPU随时刷新显示值) 第4章单片机的C51语言 实例6 数码管动态显示 采用共阴极动态LED显示原理,实现如下功能: SW1向下拨时显示字符“L2”,向上拨时显示字符“H3”。 第4章单片机的C51语言 分析: Proteus中的双联LED数码管相当于两个并联的数码管。 7SEG-MPX2-CC-BLUE Blue,2 Digit,7-segment Cathode Display 第4章单片机的C51语言 A-G→ “0x38”, 1→“0”,2 → “1” A-G→ “0x5b”, 1→“1”,2 → “0” 进一步说明其工作原理 第4章单片机的C51语言 如果不考虑switch,动态显示“L2”的程序可以如下: ; 完整的源程序 第4章单片机的C51语言 switch_sta 0 0 2 2 led_point 0 1 0 1 switch_sta+led_point 0 1 2 3 P3 = 2 - led_point 2 1 2 1 需要数码管指针led_point和开关状态标志switch_sta的配合才能实现两个显示值的切换功能。 第4章单片机的C51语言 实例6运行效果 第4章单片机的C51语言 4.5.2.2 行列式键盘原理与编程 独立式键盘的电路简单,易于编程,但占用的IO口线较多,当需要较多按键时可能产生IO资源紧张问题。 独立式键盘 第4章单片机的C51语言 行列式键盘——将IO口分为行线和列线,按键跨接在行线和列线上,列线通过上拉电阻接正电源。 4×4行列式键盘 键值——按键压下时形成的电平编码值 键模——按键的人为定义值 第4章单片机的C51语言 ①判断哪一行有键压下 写P3端口0xf0(行线电平=0,列线电平=1) 读P3端口:若P3 = 0xf0→无按键压下,不必后续判断; 若P3 ≠0xf0 →有键压下,K1←P3 (压下键所 在行线电平变为1,其余行线电平仍为0) 键盘扫描原理(以P3口接4×4键盘为例) 第4章单片机的C51语言 ②判断哪一列有键压下 写P3端口0x0f(行线电平=1, 列线电平=0) 读P3端口:压下键所在列线电平变为1,其余列线的电平 仍为0 第4章单片机的C51语言 ③ 形成压下键的键值, K2 = K1 P3 ——闭合键所在行、列的电平均为1,其余行、列皆为0。 整个4x4键盘的键值: 0x11、0x21、0x41、0x81 0x12、0x22、0x42、0x82 0x14、0x24、0x44、0x84 0x18、0x28、0x48、0x88 第一行的键值:0010000110000001 第4章单片机的C51语言 ④ 形成压下键的键模 将各键的键值依次存放在一个数组中,其顺序号就是键模。 利用循环变量i控制比对过程,两者相等时的i就是闭合键的键模。 行列式键盘的特点:占用IO口线少,但软件过程复杂。 第4章单片机的C51语言 按键在闭合和断开瞬间会因弹簧开关的变形产生电压波动 软件消抖法: 延时10ms后再次扫描按键状态。若仍判为“闭合”说明确有键压下;若为“非闭合”说明是误动作。 按键抖动波形 键盘消抖原理: 第4章单片机的C51语言 行列式键盘扫描流程 第4章单片机的C51语言 实例7 行列式键盘 要求按下任意按键后,数码管上显示该键的键模(0~F) 第4章单片机的C51语言 参考程序 //关闭LED数码管 第4章单片

文档评论(0)

little28 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档