没有合适的资源?快使用搜索试试~ 我知道了~
万年历数码管显示设计及键盘控制设计final (2).pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 128 浏览量
2022-11-27
21:33:05
上传
评论
收藏 1.6MB PDF 举报
温馨提示
试读
50页
。。。
资源推荐
资源详情
资源评论
万年历数码管显示及其键盘控制设计
组长:康智勇
组员:王 辉
王 玉
王天龙
付晓蓉
2008 年 08 月 08 日
1
目录
前言 .................................................................................................... 3
一、总体方案设计(方案的对比).................................................... 4
二.单元模块设计(设计细节) ....................................................... 5
(一)烧写板..................................................................................... 5
(二) 单片机最小系统板................................................................ 7
(三) 4-16 译码器驱动数码管控制板............................................ 12
(四) 数码管显示板 ..................................................................... 13
(五) 键盘控制板 ......................................................................... 14
(六) DS12C887 功能板 ................................................................ 14
三、系统功能说明(结果说明) ..................................................... 20
四、设计总结(心得体会)............................................................. 20
五、改进方案: ............................................................................... 21
附录: .............................................................................................. 22
【参考文献】:............................................................................ 22
【电路原理图】:........................................................................ 23
【程序清单】:.......................................................................... 28
【流程图】:.............................................................................. 47
【键盘使用说明】 ...................................................................... 49
2
前言
目前,计算机技术的发展分为两大分支:通用计算机系统与嵌入式计算机系
统。嵌入式计算机系统是面向测控对象嵌入到应用系统中的计算机系统的统称,
而单片机则是一种经典的嵌入式系统。
从广义上讲,将微型计算机的主要功能部件集中在一块单芯片上的微型计算
机称为单片机,这一类计算机又称为微控制器 MCU(Micro Control Unit)。由于
单片机集成度高、体积小、功能强、速度快、功耗低、抗干扰能力强等优点,它
在智能仪器、工业测控、日常生活及家电中等得到了广泛的应用。万年历的数码
管显示及键盘控制就是单片机的开发过程中的一个经典的应用。
在国内市场中存在着很多种不同厂家生产的不同类型的单片机,在本次设计
中我们选用 Atmel 公司 MCS-51 系列兼容单片机中的 AT89S51 单片机。AT89S51
单片机是一个低功耗高性能 CMOS 8 位单片机,40 个引脚,片内含 4KB Flash
ROM 和 128B ROM,32 个外部双向输入输出(I/O)接口,同时内含两个外中断
口,两个 16 为可编程定时计数器,两个全双工串行通信口,它的最大的一个特
点就是支持在线更新程序(In System Programmable,ISP)功能。
本设计中除了选用了单片机进行显示和键盘控制外,还需要一个主要的芯片
就是美国 DALLAS 公司的新型时钟日历芯片 DS12C887。DS12C887 是一个能够
自动产生世纪、年、月、日、时、分、秒等时间信息,而且DS12C887 中自带有
锂电池,外部掉电时,其内部时间信息还能够保持 10 年之久,因此各种设备、
家电、仪器、工业控制系统中,可以很容易地用 DS12C887 来组成时间获取单元,
以实现各种时间的获取。本次设计中正是利用它的这一性能来获取准确的时间信
息。
本次设计中需要硬件和软件两方面的结合。在硬件方面,需要准备烧写板、
单片机最小系统板、4-16 译码器驱动数码管控制板、数码管显示板、键盘控制板、
DS12C887 功能板等硬件;在软件选择了 Protel Technology公司开发的具有 PDM
功能的强大的 EDA 综合设计环境 Protel 99SE 来进行原理图设计、PCB(印刷电
路板)设计,选择了 Keil Software 公司推出的 Keil C51 的集编译器、汇编器、
实时操作、项目管理器、调试器于一体的集成开发环境 uVision3。
本次设计的成功离不开本组组员在实习期间的不懈努力,在必要情况下的加
班加点。在整个设计过程中,本组组员本着认真负责的精神,本着 “没有最好,
只有更好”的原则,采取 “团结一致、分工合作 ”的措施,终于成功的设计出了万
年历的数码管显示及键盘控制。
当然,本次设计中我们也遇到了很多的问题,本次设计的成功离不开本组组
员的共同努力,更离不开老师和师兄及其他组员等的帮忙,在此本组组员衷心的
感谢周庆国老师、赵庆林老师、王绍伟老师、刘钰力师兄、姚琪师兄等,谢谢你
们不厌其烦地给予我们帮助。
时间过得很快,实习将近尾声,但是本次实习中的收获、经历及组员间建立
起来的友谊将在本组组员的脑海中留下抹不去的青春的痕迹。
3
一、总体方案设计(方案的对比)
本方案以 AT89S51 单片机为主控芯片,,由时间控制芯片 12C887 来产生精
确的时间输出。用八段数码管来显示时间(年、月、日、星期、时、分、秒),
具体思想如下:
首先准备好烧写板、单片机最小系统板、数码管显示板、键盘控制板、
DS12C887 功能板、4-16 译码器驱动数码管控制板等硬件,并写好所要用的软件;
其次用 PC 机和烧写板 把 PC 机上已经写 好的程序通 过烧写板写 到单片机
AT89S51 上;第三、连接好其它的硬件电路,使用已经写进了程序的 AT89S51
芯片对单片机及 DS12C887 初始化,初始化完成后时间整个系统就开始正常工
作,AT89S51 单片机通过端口 P0 读 DS12C887 上的时间,然后通过写端口 P1
将读到的时间实时在 15 个七段数码管上显示(包括年、月、日、星期、时、分、
秒,其中年用四位十进制数表示);当键盘有按键,需要对时间进行调整时,则
单片机将立即进入中断,置中断标志位后出中断,通过主程序中检查标志位判断
是否进入时间调整模块程序,当标志位为高电平时,工作进入调整时间模块,调
整结束后直接跳出调整程序,在此过程中 15 个七段数码管一直进行着实时扫描
输出,保证了操作的实时性与可靠性。通过单片机 AT89S51 的 P0 端口将调整好
的时间写到 DS12C887 芯片上,然后 DS12C887 将从调整后的时间开始进入正常
的工作状态,同时 AT89S51 单片机再次通过端口 P0 读 DS12C887 上的时间,然
后通过写端口 P1 将读到的时间实时在 15 个七段数码管上显示;或者当单片机复
位时,整体系统又开始从初始化后的时间开始显示。
在设计工程中,我们考虑过其他方案有:
1、以凌阳 61 精简板作为主控制芯片,但考虑价格方面以及更好的锻炼自己
的实际动手能力,我们放弃了以凌阳 61 精简板作为主控芯片的方案;在程序编
写过程中,由于程序大于了 demo 版 uVision3 允许范围,所以我们决定使用
AT89S52,但在通过 Runtime 版 uVision2 编译成功后顺利下载入 AT89S51 所以我
们重新选择了已有芯片,最终成功完成了我们的实习设计。
2、在时间产生方面,我们考虑过以 AT89S51 单片机中的定时器来产生时间,
但是由于 AT89S51 单片机用的是 12MHz 的频率,要产生 1s 的时间进位需加一
些其他的 C 语句,这样会产生微小的时间偏差。虽然在短时间内我们可能看不
出什么问 题,但 是在 长时间 运行时 会造成 时间的 不准 确,故 我们放 弃了以
AT89S51 单片机内部产生时间的方案。
3、在键盘按键方面,我们考虑过使用行列扫描以及反转法扫描的方式进行
按键识别。在此种情况下,我们设想使用 0-9 十个数字键、一个终端进入键和复
位键共 12 键对时间进行调试。但是考虑到这种方式需要的按键太多,我们最终
选择了六键控制方式,此时不需要对键盘进行行列扫描以及大规模阵列式键盘控
制,提高了设计的实用性降低了元件成本。
4、在键盘控制和数码管显示时间方面,我们最初考虑的是使用芯片 8279。
8279 是可编程的键盘、显示接口芯片,它既具有按键处理功能,又具有自动显
示功能,在单片机系统中应用很广泛。8279 内部有键盘 FIFO(先进先出堆栈)
/传感器,双重功能的 8*8=64B RAM,键盘控制部分可控制 8*8=64 个按键或 8*8
阵列方式的传感器。该芯片能自动消抖并具有双键锁定保护功能。显示 RAM 容
量为 16*8,即显示器最大配置可达 16 位 LED 数码显示。正如上所说,由于我
4
们没有选择行列扫描的按键识别方式,同时考虑到设计成本问题,故我们放弃了
这种想法。
二.单元模块设计(设计细节)
(一)烧写板
烧写板的使用前提及使用时与 AT89S51单片机的连接情况见“单片机最小系
统板”。
组成烧写板器件介绍
(1)DB25 并口
DB25 并口的管脚图如下:
DB25 并口的管脚各个功能及标志如下表所示:
针
功能
脚
1
2
3
4
5
6
针
功能
脚
选通 (STROBE 低有 自 动 换 行
14
效) (AUTOFEED 低有效)
数据位 0 (DATAO)
数据位 1 (DATA1)
数据位 2 (DATA2)
数据位 3 (DATA3)
数据位 4 (DATA4)
15 错误 (ERROR 低有效)
16 初始化 (INIT 低有效)
17
选择输入 (SLCTIN 低
有效)
18 地 (GND)
19 地 (GND)
5
剩余49页未读,继续阅读
资源评论
xxpr_ybgg
- 粉丝: 6453
- 资源: 3万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功