8255lcd 动态显示4x4键盘

上传人:小** 文档编号:90068148 上传时间:2019-06-07 格式:DOC 页数:18 大小:185KB
返回 下载 相关 举报
8255lcd 动态显示4x4键盘_第1页
第1页 / 共18页
8255lcd 动态显示4x4键盘_第2页
第2页 / 共18页
8255lcd 动态显示4x4键盘_第3页
第3页 / 共18页
8255lcd 动态显示4x4键盘_第4页
第4页 / 共18页
8255lcd 动态显示4x4键盘_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《8255lcd 动态显示4x4键盘》由会员分享,可在线阅读,更多相关《8255lcd 动态显示4x4键盘(18页珍藏版)》请在金锄头文库上搜索。

1、 南京邮电大学通达学院课程设计实验报告 实验名称 基于8255的显示的动态显示器设计班 级 080061 学 号 08006129 姓 名 _ 卓晓寒 _ _ _ 指导老师 _ 林建中 _ _ 开课时间 2011/2012学年, 第 一 学期 _ 基于的动态显示器设计 一、 设计要求 能够学会利用Proteus软件的MCS51单片机仿真学习,根据提供的参考工程,在Proteus平台自己重新设计实验电路所需要的电气原理图,并在此基础上编写相对应的程序,实现其功能,学习Proteus软件的使用,其中包括原理图器件的选取、原理图的电气连接、程序的编写编译以及运行,并能查出其错误等。二、 实验内容 设

2、计一基于的动态显示器三、 实验要求1 用数码管或LCD正常显示数字“12345678”。2 通过按键可改变显示方式。3 设计显示屏的动态效果,用10个按键,每键对应一种滚动技术。 另注,实验发挥部分:1 设计所有动作的联合效果。2 设计二个变速按键,可多级改变滚动速度。3 设计一台魔术电子种,采用自动变换,随机组合,数据每10秒变换一次。 动态显示格式:0 静止1 整体闪烁2 单字闪烁3 整体向前、向后滚动4 单字移动5 两边向中间压缩6 中间向两边扩张7 上下压缩8 文字上下滚动9 组合动作(每一字符执行上述一个动作,并同时运动)四、 实验仪器及实验环境(1) 586微型计算机系统(2) p

3、roteus仿真软件(3) MEDWIN软件(4) 单片机开发系统 五、 设计思路 根据实验给出的要求,我们选择了LM016LLCD进行动态显示。并通过按键切换不同的功能,来达到分别显示各种要求的动态效果。 实验要求进行检控式LCD动态显示。定时器T0作为每0.01秒加一的定时器;题目中的要求是用十种动态效果,由于本人对单片机研究肤浅加之有直接可以输入的p1端口。故将监控调为八种功能,对应的分别为:0 静止1 整体闪烁2 单字闪烁3 整体向前、向后滚动4 单字移动5 两边向中间压缩6 中间向两边扩张7 上下压缩8 文字上下滚动9 组合动作(每一字符执行上述一个动作,并同时运动)六、 实验过程

4、本次课程设计是在理论课程的基础上,目的在于培养我们的动手能力,通过电路设计、理论计算、实际编程、调试、测试、分析查找故障,解决在实际设计中的问题,使设计好的电路能正常工作,并可能结合实际的实验板进行下载测试。在此次课题设计的过程中,我们人员分配为两人一组,并由指导老师分发课题。我们的课题为“基于8255的LCD动态显示器设计”。在考虑本次设计过程中,依据设计基本要求,并且基于8255通用可编程器件等条件,我们把8255器件用来扩展I/O口,以备外接一4X4键盘,以满足通过10个按键来控制10种动态显示,以及通过该I/O口外接一LCD显示器(当然,实验中我们发现不用8255扩展I/O口,单片机A

5、T89C51的四个I/O端口已能满足该实验需要)。为了能让各器件间联系起来我们又添加了一些逻辑器件,如:与非门等以及74HC573地址锁存器等。 最终设计的电路图如图(1):图(1) 图中主要器件如表(a):器件名称器件型号单片机AT89C51可编程I/O接口芯片8255地址锁存器74HC573LCD显示器LM016L表(a) 其中主要部分器件使用说明如下:I .4X4矩阵式键盘识别技术a) 键盘键号图 用AT89C51的并行口P1接44矩阵键盘,以P1.0P1.3作输入线,以P1.4P1.7作输出线;对应的按键的序号排列如图(2)。图(2)b) 44矩阵键盘识别处理每个按键有它的行值和列值,

6、行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线分别通过两并行接口和CPU通信。每个按键的状态同样需变成数字量“0”和“1”,开关的一端(行线)通过电阻接VCC,而接地是通过程序输出数字“0”实现的。键盘处理程序的任务是:确定有无键按下,判断哪一个键按下,键的功能是什么;还要消除按键在闭合或断开时的抖动。两个并行口中,一个输出扫描码,使按键逐行动态接地,另一个并行口输入按键状态,由行扫描值和回馈信号共同形成键编码而识别按键。c) 键盘扫描程序框图 WAITP1=0FFH,P1.6=0P1=0FFH,P1.4=0有键按下吗?有键按下吗? 没有 没有 有 有延时10ms延时10ms真的有键

7、按下吗?真的有键按下吗? 没有 没有 有 有根据当前状态识别按键根据当前状态识别按键P1=0FFH,P1.5=0P1=0FFH,P1.7=0有键按下吗?有键按下吗? 没有 没有 有 有延时10ms延时10ms真的有键按下吗?真的有键按下吗? 没有 没有 有 有根据当前状态识别按键根据当前状态识别按键 WAIT根据当前状态识别按键 注:在上图中 调用相应按键识别子程序 转入显示子程序II . 8255通用可编程器件 8255是一种通用的可编程并行I/O接口电路,在单片机应用系统中被广泛用作可编程外部I/O并行接口。18 8255的结构及其引脚:8255有3个8位的并行口PA、PB、PC。8255

8、的引脚如左图所示。图中有关引脚含义如下: D0-D7:双向三态数据总线; CS:选片信号输入线,低电平有效; RESET:复位信号输入线,高电平时有效,复位后,PA口、PB口、PC口均为输入方式; PA、PB、PC:3个8位I/O口; RD:读选通信号输入线,低电平时有效; WR:写选通信号输入线,低电平时有效; A1,A0:端口地址输入线,用于选择内部端口寄存器; VCC:电源+5V; GND:地线。 下表列出了CPU对8255端口的寻址和操作状态:A1A0RDWRCS输入操作(读)00010A口 数据总线01010 B口 数据总线10010 C口 数据总线输出操作(写)00100 数据总线

9、 A口01100 数据总线 B口10100 数据总线 C口11100数据总线 控制口禁止操作XXXX1数据总线为高阻11010非法操作XX110数据总线为高阻由总图可以看出,A、B、C口的端口地址取决于A15(P2.7),和低位A1、A0,本次设计采用数据总线到A口,因此则A的端口地址为(01* * * *00)B,本次在设计中采取7FFCH。七、 部分实验效果图1) 静止 2) 两边向中间压缩3) 整体向前、向后滚动 八、 实验程序 C语言:/*-库文件-*/#include#include/*-宏定义-*/#define uint unsigned int#define uchar uns

10、igned char/*-芯片端口地址定义-*/#define COM8255 XBYTE0X7FFF /8255的命令口#define PA8255 XBYTE0X1FFF /8255的PA#define PB8255 XBYTE0X3FFF /8255的PB#define PC8255 XBYTE0X5FFF /8255的PC#define DAC0832 XBYTE0XEFFF /DAC0832口#define ADC0804 XBYTE0XF7FF /ADC0804口 /*-系统控制引脚定义-*/sbit RS=P30; /1602的数据/命令控制口口sbit RW=P31; /1602的读写控制端sbit EN=P32; /1602的使能控制端sbit CON=P33; /74HC573的锁存端/*-键盘引脚定义-*/键盘引脚定义sbit key1=P10;sbit key2=P11;sbit

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号