数码管对按键次数计数

数码管对按键次数计数

ID:34471983

大小:92.50 KB

页数:17页

时间:2019-03-06

数码管对按键次数计数_第1页
数码管对按键次数计数_第2页
数码管对按键次数计数_第3页
数码管对按键次数计数_第4页
数码管对按键次数计数_第5页
资源描述:

《数码管对按键次数计数》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、河南理工大学计算机科学与技术学院课程设计报告2008—2009学年第1学期课程名称单片机C语言应用程序设计设计题目秒表学生姓名郭兴层学号310609010311专业班级计算机06级3班指导教师2008年12月29日摘要单片机自20世纪70年代问世以来,由于单片机的集成度高,功能强,通用性好,特别是它具有体积小,重量轻,能耗低,价格便宜,可靠性高,抗干扰能力强和使用方便等独特优点,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。而51单片机是各单片机中最为典型和最有代表性的一种。本设计是设计一个用单片机控制的多功能秒表系统。该秒表系统采用AT80C51单片机为中心器件

2、,利用其定时器/计数器定时和记数的原理,结合显示电路、电源电路、LED数码管以及键盘电路来设计计时器。将软、硬件有机地结合起来,使得系统能够实现两位LED显示,显示时间为0.0~9.9秒,每100MS自动加1,能正确地进行计时。其中软件系统采用汇编语言编写程序,包括显示程序,加计数程序,中断,延时程序,并在WAVE中调试运行,并利用PROTEUS作出仿真图仿真,简单且易于观察,在仿真中就可以观察到实际的工作状态。通过这次设计让我更深入了解单片机基本电路、如何控制和定时器和中断编程的基本方法,从而锻炼了我学习、设计和开发软、硬件的能力。目录1概述…………………………………………………

3、……………………31.1设计任务………………………………………………………………31.2设计要求………………………………………………………………32系统总体方案及硬件设计………………………………………………42.1系统总体设计方案……………………………………………………42.2硬件设计………………………………………………………………43软件设计…………………………………………………………………83.1主程序流程图…………………………………………………………83.2子程序流程图…………………………………………………………93.3子程序模块设计………………………………………………………

4、114.proteus软件仿真………………………………………………………145课程设计体会……………………………………………………………16参考文献…………………………………………………………………16附1:源程序代码………………………………………………………17附2:系统原理图………………………………………………………231概述1.1设计任务:设计一个单片机控制的简单秒表计时系统。利用单片机的定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及按键来设计计时器。将软、硬件有机地结合起来,使得系统能够用两个数码管来显示秒表数据,一个显示秒,另一个显示十分之一秒。有一个按键

5、来启动秒表的开始和结束。1.2设计要求:基本要求1.两位LED显示,显示时间为0.0~9.9秒。2.每十分之一秒自动加1。3.一个按键能够表示开始和结束。2系统总体方案及硬件设计2.1系统总体设计方案该简单秒表设计采用AT80C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、电源电路、LED数码管以及键盘电路来设计计时器。将软、硬件有机地结合起来,使得系统能够实现两位LED显示,显示时间为0.0~9.9秒,每十分之一秒自动加1,能正确地进行计时。其中软件系统采用汇编语言编写程序,包括显示程序,加减计数程序,快加快减程序,中断,延时程序,按键消抖程序等,并在

6、WAVE中调试运行,并利用PROTEUS作出仿真图仿真,简单且易于观察,在仿真中就可以观察到实际的工作状态2.2硬件设计:设计的中心环节:单片机(80C51)外围电路:单片机外围电路电源电路显示电路键盘电路图2.1外围电路1.晶体振荡电路图2.2晶体振荡电路通过XTAL1和XTAL2外接晶体振荡器构成内部振荡方式。C1、C2对频率有微调作用,当外接晶振时,C1和C2通常选择10到30Pf。选择震荡频率12MHz。在设计印刷电路板时,晶体谐振器和电容应尽可能安装在单片机芯片附近,以减少寄生电容,保证震荡器稳定和可靠工作。2电源电路:传统的电源3显示电路:我们采用的是动态的led数码管

7、显示电路,其电路图如下:图2.5显示电路5键盘电路:3软件设计:3.1主程序流程图:开始初始化判断按键p1.0=0?Y停止Y图3.13.2子程序流程图加1程序:进位清零加1到100?(20H)清零个位十位分开返回NY初始化图3.2(3)加1子程序此程序只为简单的加1,并判断是否到100?到则从0开始,否则继续,另外将显示内存中的数个位十位分开,以便于动态显示。JIA1:MOVA,20H;CLRCINCACJNEA,#100,GO1;是否加到100?MOV20H,#00

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。