单片机人机交互系统的C51语言编程.

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

采用动态显示方式比较节省I/O口,硬件电路也较 静态显示方式简单,但其亮度不如静态显示方式,而且 在显示位数较多时,CPU要依次扫描,占用CPU较多的 时间。 【例5.2】 电路如图5.7所示,单片机采用AT89C51,振荡 器频率fosc为12MHz,数码管LED1、LED2采用7SEGCOM-CAT-GRN(共阴极,绿色),两位数码管分别连接在 AT89C51的P0口、P1口,按键K1接在引脚P2.3上,RP1为 排阻。试编程实现下列功能。 (1) 开机显示00。 (2) 按一次K1键,数字加1。 (3) 当计数到99时,再按一次K1键,又从00开始计数。
图5.6 例5.1电路图
5.2.3 动态显示编程
动态显示是逐位地轮流点亮各位数码管,这种逐位点 亮显示器的方式称为位扫描。通常,各位数码管的相应 LED选线并联在一起,由一个8位的I/O口控制;各位的位 选线(公共阴极或阳极)由另外的I/O口线控制。 动态方式显示时,各数码管分时轮流选通,要使其稳 定显示必须采用扫描方式,即在某一时刻只选通一位数码 管,并送出相应的字型码,在另一时刻选通另一位数码管, 并送出相应的字型码,依此规律循环,即可使各位数码管 显示将要显示的字符,虽然这些字符是在不同的时刻分别 显示,但由于人眼存在视觉暂留效应,只要每位显示间隔 足够短就可以给人同时显示的感觉。
2. P1口
5.2 LED数码管显示器
5.2.1 5.2.2 5.2.3 LED数码管显示器简介 静态显示编码 动态显示编码静态显示编程
5.2.1 LED数码管显示器简介
LED显示器按用途可分为通用7段LED显示器和专用 LED显示器,分别如图5.1和图5.2所示。本节重点介绍通 用7段LED显示器(以下简称为数码管)。
图5.7 例5.2电路图
5.3 LED数码管点阵显示器
5.3.1 5.3.2 字母、数字及图形的显示 中文字符的显示
LED数码管点阵显示器是由LED按矩阵方式排列而成 的,按照尺寸大小,LED点阵显示器有5×7、5×8、6×8、 8×8等多种规格;按照LED发光颜色的变化情况,LED点 阵显示器分为单色、双色、三色;按照LED的连接方式, LED点阵显示器又有共阴极、共阳极之分。
【例5.1】 电路如图5.6所示,单片机采用AT89C51,振荡 器频率fOSC为12MHz,数码管LED1、LED2采用7SEGCOM-CAT-GRN(共阴极,绿色),两位数码管分别连接在 AT89C51的P0口、P1口,按键K1接在引脚P2.3上,RP1为 排阻。试编程实现下列功能。 (1) 开机显示00。 (2) 按一次K1键,数字加1。 (3) 当计数到99时,再按一次K1键,又从00开始计数。
图5.4 共阳极数码管
表5-2 LED数码管的常用字型编码表
续表5-2
LED数码管显示器的外型结构如图5.5所示。
LED数码管有静态显示 和动态显示两种方式,在具 体使用时,要求LED驱动电 路能提供额定的LED导通电 流,还要根据外接电源及额 定LED导通电流来确定相应 的限流电阻。
图5.5 数码管的外型结构
5.3.1 字母、数字及图形的显示
单个的西文字母或阿拉伯数字通常采用5×7点阵显 示,图5.9所示为字母“A”的5×7 字形点阵示意图。值得 注 意的是,字形并不是唯一的,应根据具体需要而定。
第5章 单片机人机交互系统的C51语言编程
5.1 5.2 5.3 5.4 5.5 5.6 5.7 单片机的输入/输出端口 LED数码管显示器 LED数码管点阵显示器 液晶显示器 非编码键盘 本章小结 实训五 模拟数字密码锁
返回首页
教学提示
在单片机应用系统中,经常会涉及显示器、键盘等人 机交互设备。如何将它们与单片机的输入/输出端口相连并 编程实现特定的功能是单片机应用开发人员必须掌握的基 本技术。常用的显示器有LED数码管显示器、LED点阵显 示器、LCD显示器;常用的键盘有非编码键盘、编码键盘。 本章将重点介绍上述元器件与单片机的连接方式以及C51 语言的编程方法。
教学要求
了解单片பைடு நூலகம்输入/输出端口的特点及使用注意事项;熟 练掌握LED数码管显示器的使用方法;掌握LED点阵显示 器、LCD显示器的使用方法;熟练掌握非编码键盘的使用 方法;掌握外部扩展存储器的使用方法。
5.1 单片机的输入/输出端口
51系列单片机有4个8位的双向并行输入/输出(I/O)端口, 称为P0口、P1口、P2口和P3口。各个端口既可以按字节输 入、输出,也可以按位进行输入、输出。利用这4个I/O端 口可以方便地实现单片机与外部数字设备或芯片的信息交 换。下面简要介绍单片机输入/输出端口的特点及使用注意 事项。 1. P0口 3. P2口 4. P3口
图5.1 通用7段LED数码管
图5.2 专用LED数码管
数码管由8个LED(a、b、c、d、e、f、g、h)构成, 按结构分为共阴极和共阳极两种,如图5.3和5.4所示。
图5.3 共阴极数码管
要使LED数码 管显示出相应的数 字或字符,必须向 其数据口输入相应 的字形编码。LED 数码管的常用字形 编码见表5-2。
在使用时,只要点亮相应的LED,LED点阵显示器即可按 要求显示英文字母、阿拉伯数字、图形以及中文字符等。LED 点阵显示器广泛地应用于股票显示板、活动信息公告板、活动 字幕广告板等场合。
Proteus ISIS中只提供了单色的5×7、8×8两种LED点阵显 示器,如图5.8所示。
(a) 5×7LED点阵显示器 (b) 8×8LED点阵显示器 图5.8 LED点阵显示器
5.2.2 静态显示编程
静态显示是指数码管显示某一字符时,相应的LED恒 定导通或恒定截止。静态显示时,各位数码管是相互独立 的,每个数码管的8个LED分别与一个8位I/O口地址相 连,只要I/O口有字型码输出,相应字符即显示出来,并 保持不变,直到I/O口输出新的字型码。 采用静态显示方式,较小的电流即可获得较高的亮度, 且占用CPU时间少,编程简单,显示便于监测和控制,但 其占用的口线多,硬件电路复杂,成本高,只适合于显示 位数较少的场合。
相关文档
最新文档