欢迎来到天天文库
浏览记录
ID:49256565
大小:1.45 MB
页数:81页
时间:2020-02-03
《单片机人机交互系统的C51语言编程.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章单片机人机交互系统的C51语言编程5.1单片机的输入/输出端口5.2LED数码管显示器5.3LED数码管点阵显示器5.4液晶显示器5.5非编码键盘5.6本章小结5.7实训五模拟数字密码锁返回首页教学提示在单片机应用系统中,经常会涉及显示器、键盘等人机交互设备。如何将它们与单片机的输入/输出端口相连并编程实现特定的功能是单片机应用开发人员必须掌握的基本技术。常用的显示器有LED数码管显示器、LED点阵显示器、LCD显示器;常用的键盘有非编码键盘、编码键盘。本章将重点介绍上述元器件与单片机的连接方式以及C51语言的编程方法。教学要求了解单片机输入/输出端口的特点及使用注意事项;熟练掌握L
2、ED数码管显示器的使用方法;掌握LED点阵显示器、LCD显示器的使用方法;熟练掌握非编码键盘的使用方法;掌握外部扩展存储器的使用方法。5.1单片机的输入/输出端口1.P0口2.P1口3.P2口4.P3口51系列单片机有4个8位的双向并行输入/输出(I/O)端口,称为P0口、P1口、P2口和P3口。各个端口既可以按字节输入、输出,也可以按位进行输入、输出。利用这4个I/O端口可以方便地实现单片机与外部数字设备或芯片的信息交换。下面简要介绍单片机输入/输出端口的特点及使用注意事项。5.2LED数码管显示器5.2.1LED数码管显示器简介5.2.2静态显示编码5.2.3动态显示编码静态显示编程5
3、.2.1LED数码管显示器简介图5.1通用7段LED数码管图5.2专用LED数码管LED显示器按用途可分为通用7段LED显示器和专用LED显示器,分别如图5.1和图5.2所示。本节重点介绍通用7段LED显示器(以下简称为数码管)。图5.3共阴极数码管图5.4共阳极数码管数码管由8个LED(a、b、c、d、e、f、g、h)构成,按结构分为共阴极和共阳极两种,如图5.3和5.4所示。要使LED数码管显示出相应的数字或字符,必须向其数据口输入相应的字形编码。LED数码管的常用字形编码见表5-2。表5-2LED数码管的常用字型编码表续表5-2LED数码管显示器的外型结构如图5.5所示。LED数码管
4、有静态显示和动态显示两种方式,在具体使用时,要求LED驱动电路能提供额定的LED导通电流,还要根据外接电源及额定LED导通电流来确定相应的限流电阻。图5.5数码管的外型结构5.2.2静态显示编程静态显示是指数码管显示某一字符时,相应的LED恒定导通或恒定截止。静态显示时,各位数码管是相互独立的,每个数码管的8个LED分别与一个8位I/O口地址相连,只要I/O口有字型码输出,相应字符即显示出来,并保持不变,直到I/O口输出新的字型码。采用静态显示方式,较小的电流即可获得较高的亮度,且占用CPU时间少,编程简单,显示便于监测和控制,但其占用的口线多,硬件电路复杂,成本高,只适合于显示位数较少的
5、场合。【例5.1】电路如图5.6所示,单片机采用AT89C51,振荡器频率fOSC为12MHz,数码管LED1、LED2采用7SEG-COM-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口控制;各位的位选线(公
6、共阴极或阳极)由另外的I/O口线控制。动态方式显示时,各数码管分时轮流选通,要使其稳定显示必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的字型码,在另一时刻选通另一位数码管,并送出相应的字型码,依此规律循环,即可使各位数码管显示将要显示的字符,虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可以给人同时显示的感觉。采用动态显示方式比较节省I/O口,硬件电路也较静态显示方式简单,但其亮度不如静态显示方式,而且在显示位数较多时,CPU要依次扫描,占用CPU较多的时间。【例5.2】电路如图5.7所示,单片机采用AT89C51,振荡器频率fosc
7、为12MHz,数码管LED1、LED2采用7SEG-COM-CAT-GRN(共阴极,绿色),两位数码管分别连接在AT89C51的P0口、P1口,按键K1接在引脚P2.3上,RP1为排阻。试编程实现下列功能。(1)开机显示00。(2)按一次K1键,数字加1。(3)当计数到99时,再按一次K1键,又从00开始计数。图5.7例5.2电路图5.3LED数码管点阵显示器5.3.1字母、数字及图形的显示5.3.2中文字符的显示LED
此文档下载收益归作者所有