您好,欢迎来到五一七教育网。
搜索
您的当前位置:首页秒表设计说明书

秒表设计说明书

来源:五一七教育网


课程设计说明书

用LED数码管显示的秒表设计

专业 新能源科学与工程

董爱林 能源132 1310604204 张兰红 2015年12月18日

学生姓名 班学

级 号

指导教师 完成日期

盐城工学院课程设计说明书(2015)

用LED数码管显示的秒表设计

摘 要:对采用LED数码管显示的秒表进行了设计。所设计的秒表,可通过两位

数码管显示00-59。每秒自动加一。

在对系统功能分析的基础上,采用ATC52单片机。相对而言比较简单,贴近书本,比较熟悉。对所要实现的功能也能很好地满足,焊接也比较简单。设计主要采用硬件和软件两部分。硬件包含数码管按钮模块、单片机控制模块、数码管显示模块、驱动电流放大模块。按钮模块采用式按键,控制模块选用ATC52单片机,显示模块采用两位数码管,放大模块选用NPN三极管。软件采用模块化的程序,分为主程序和定时器计时服务子程序。

在多孔板上制作了LED数码管显示的秒表,使用protus完成了系统仿真,对硬件和软件部分分别进行了调试,进行了软硬件联调,最后调试成功样机实物,完成了毕业设计任务书的要求。

关键词:单片机;数码管;秒表

盐城工学院课程设计说明书( 2015)

A stopwatch design with LED digital tube display

Abstract: For the LED digital tube display of a stopwatch is used for design. The

stopwatch, designed by two digital tube display 00 ~ 59. Automatically add a per second. On the basis of the analysis of system function, using the ATC52 single chip microcomputer. Relatively simple, close to the book, familiar with. To in order to realize the function also can well satisfy, welding is more simple. The design mainly adopts two parts of hardware and software. Hardware consists of digital tube button module, single-chip microcomputer control module, digital tube display module, the drive current amplifier module. Button module USES the independent type key, choose ATC52 single chip microcomputer control module, using two digital tube display module, amplifier module selects the NPN transistor. Software adopts the modular program, main program and timer timing service subroutine.

On the perforated plate made of LED digital tube display a stopwatch, use protus completed system simulation, the hardware and the software part, has carried on the debugging, the software and hardware alignment, the final debugging success physical prototype, completed the graduation design specification requirements.

Key Words: Single chip microcomputer; Digital tube; A stopwatch.

用LED数码管显示的秒表设计

目 录

1. 概 述 ....................................................................................................................... 1

1.1 课题研究背景与意义 .......................................................................................... 1 1.2 课题设计内容 ...................................................................................................... 1 2. 系统设计 ....................................................................................................................... 1

2.1 设计方案论证 ...................................................................................................... 1 2.2 系统硬件设计 ...................................................................................................... 2 2.2.1 主控模块 ........................................................................................................... 2 2.2.2 秒表按钮模块 ................................................................................................... 4 2.2.3 LED数码管显示模块...........................................................................................5 2.2.4 放大模块............................................................................................................6 2.3.1 主程序模块 ....................................................................................................... 6 2.3.2 定时器中断程序 ............................................................................................... 6 3. 系统调试 ....................................................................................................................... 8

3.1 硬件调试 .............................................................................................................. 8 3.1.1 静态检查 ........................................................................................................... 8 3.1.2 通电检查 ........................................................................................................... 8 3.2 软件调试及软硬件联调 ...................................................................................... 8 3.2.1仿真调试 ............................................................................................................ 8 3.2.2 实物调试 ........................................................................................................... 9 3.2.3 实验结果 ........................................................................................................... 9 4. 结束语 .......................................................................................................................... 11 附录1:用LED数码管显示的秒表设计原理图图纸 ................................................... 15 附录2:用LED数码管显示的秒表设计的元器件目录表 ........................................... 16 附录3:用LED数码管显示的秒表设计程序清单 ....................................................... 17

盐城工学院课程设计说明书( 2015)

用LED数码管显示的秒表设计

1.概 述

1.1 课题研究背景与意义

随着电子技术的发展,电子技术在各个领域的运用也越来越广泛。特别是进入21世纪,由于信息产业的高速发展,秒表的用途也越来越广泛。作为一个重要的计时工具,秒表在电器制造、电力、工业自动化控制、国防、实验室及科研单位都有广泛运用。正是由于它的便捷、准确、可比性高等优点,大大减轻了操作人员的负担,降低了错误率。

近年来,计算机技术和半导体技术高速发展,传统的硬件电路设计方法已大大落后于当今技术的发展。一种崭新的、采用硬件描述语言的设计电路方法悄然兴起。这是电子设计自动化领域的一次重大迈进。单片机就是以可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方法。通过有关的开发软件,自动完成用软件方式设计。

在设计中还运用到数码管,数码管通常是由多个发光二极管封装在一起组成“8”字型器件,数码管的段加上特定的电压后,这些特定的段就会亮,显示出特定信息。因而,在楼体墙面、广告招牌、夜总会、会所的门头广告牌中运用到数码管可产生彩虹般绚丽的效果。

本次设计主要完成具备基本功能的电子秒表的理论设计。 1.2 课题设计内容

本课题内容是设计并制作一个LED数码管显示的秒表,运用“开始”、“暂停”、“复位”按钮实现秒表的00-59的计时。

设计LED数码管显示的秒表的硬件电路与软件控制程序,对硬件电路与软件程序分别进行调试,并进行软硬件联调,要求获得调试成功的实物。

2 .系统设计

2.1 设计方案论证

根据设计内容,提出采用单片机芯片为主控电路的设计方案。

由于单片机体积小,重量轻,控制功能强,便于模块化,价格便宜,为学习、应用和开发提供了便利条件。并且在运行中单片机的可靠性较高,出错几率很小,保证系统运行的安全性。同时,单片机的使用领域已经十分广泛,也为以后的产品的升级换代提供了便利。方案设计框图如图2-1所示。

1

上电复位电源模块秒表按钮电路2.2 系统硬件设计

RSTP1口XTALSTCC52P0口P2口 用LED数码管显示的秒表设计

图2-1 LED数码管显示的秒表设计系统结构图

图2-2 LED数码管显示的秒表设计电路原理图

2.2.1 主控模块

主控模块原理图如图2-3所示。主控制器采用STCC52。STCC52是一种带

LED数码管显示的秒表设计系统的电路原理图如2-2所示。系统由主控模块、秒表按钮模块、LED数码管显示模块、放大模块四部分组成。

2

显示模块放大电路

盐城工学院课程设计说明书( 2015)

8K字节闪烁可编程可檫除只读存储器的低电压,高性能CMOS 8位的以80C51为内核的单片机。

图2-3 主控模块原理图

主控模块里面,除单片机外,还包括时钟电路和复位电路两部分。 A. 时钟电路

STCC52内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。

内部方式的时钟电路如图2-4(a) 所示,在XTAL1和XTAL2引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值的大小可对频率起微调的作用。

外部方式的时钟电路如图2-4(b)所示,XTAL2接地,XTAL1接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。

+5VXTAL1外部振荡器XTAL1XTAL2XTAL2

(a)内部方式时钟电路 (b)外部方式时钟电路

图2-4 时钟电路

B. 复位电路

RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。若使用颇率为6MHz的晶振,则复位信号持续

3

用LED数码管显示的秒表设计

时间应超过4us才能完成复位操作。

产生复位信号的电路逻辑如图2-5所示。整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样,然后才得到内部复位操作所需要的信号。

RST/VPDD2D1VCC施密特触发器复位电路片内RAMVSS 2-5复位信号的电路逻辑图

复位操作有上电自动复位相按键手动复位两种方式。

上电自动复位是通过外部复位电路的电容充电来实现的。这样,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。

按键手动复位有电平方式和脉冲方式两种。其中,按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的;而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的。

2.2.2 秒表按钮模块

按钮用按键模块来模拟,按键用式按键表示,电路如图2-6所示。

图2-6 秒表按钮模块

在没有按键按下时,P1口输入的是高电平。当有键按下时,相应的端口引脚输入低电平。

2.2.3 LED数码管显示模块

4

B.数码管介绍

A.电路连接

图2-7 LED数码管显示模块

盐城工学院课程设计说明书( 2015)

图2-8 3261BS 数码管外部引脚

显示模块采用两位共阳极的数码管,电路连接图如图2-7所示。

本设计中运用的是3261BS两位共阳极数码管,其引脚图如图2-8所示。

5

用LED数码管显示的秒表设计

数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元,即一个小数点。数码管的8个显示比划“a,b,c,d,e,f,g,dp”;按能显示多少个“8”可分为1位、2位、4位等数码管。

本设计中发光二极管单元的连接方式为共阳极数码管。共阳数码管是指将所有发光二极管的阳极接在一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。

2.2.4 放大模块

本次设计采用两个NPN三极管对驱动电流进行放大,进而来驱动两位共阳极数码管。电路连接图如图2-9所示。

图2-9 驱动电流放大模块

2.3 软件设计

用LED数码管显示的秒表设计程序清单如附录3所示,程序分主程序和定时器中断程序两大部分。

2.3.1 主程序模块

系统主程序主要用于变量及其他部件的初始化,如定时器T0的初始化,以便能够准确的进行相应的操作,同时进行相应的功能键判断,从而实现特殊功能。主程序的流程图2-10所示。

2.3.2 定时器中断程序

定时器中断程序的相应流程图如2-11所示。

在定时器中断程序中在定时器重置初始值以后,时间50ms次数加一,最后中断返回。

6

盐城工学院课程设计说明书( 2015)

开始程序初始化1秒时间到YN1秒标志位清0,秒个位加1显示秒个位秒个位=10延时N秒十位加1,个位清0秒十位=6Y显示秒十位NY延时秒十位清0

图2-10 用LED数码管显示的秒表设计主程序流程图

定时器重置初值次数加一中断返回

图2-11 定时器中断程序

7

用LED数码管显示的秒表设计

3. 系统调试

根据前述第2大节中硬件和软件设计,制作了LED数码管显示的秒表系统样机实物。对样机的硬件和软件分别进行了调试,最后进行了软件、硬件联调。 3.1 硬件调试

3.1.1 静态检查

根据硬件电路图核对了元器件的型号、极性,安装是否正确,检查硬件电路连线是否与电路原理图一致,检查电路元器件是否都已经连接好,用万用表一一测试。 3.1.2 通电检查

先调试电源部分,整个电路只需要+5V的电压,用USB线从电脑USB口取电。

再用示波器检测单片机的复位和晶振电路是否有复位信号和振荡信号。 3.2软件调试及软硬件联调

对软件先用仿真器进行了调试。用仿真器运行正常后,再用烧写器将程序烧到STCC52单片机中,进行了脱机调试。

3.2.1仿真调试

A. proteus仿真电路

用LED数码管显示的秒表设计proteus仿真电路如图3-1所示。

C130pfRP1X112MHZU119XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD3938373635343332212223242526272810111213141516171234567C21830pf9RSTXTAL2R1C31uF10k293031R4200PSENALEEAR2ab4.7kQ1NPNSTARTSTOPRESET12345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7ATC51R34.7kQ2NPN

图3-1 用LED数码管显示的秒表设计proteus仿真电路

B.仿真结果

用proteus软件对用LED数码管显示的秒表设计进行了仿真,按Start键时秒表计

8

盐城工学院课程设计说明书( 2015)

时开始,按下Stop时的仿真结果如图3-2所示,说明此LED数码管秒表可以模仿真实的秒表计时器。

C130pfRP1X112MHZU119XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD3938373635343332212223242526272810111213141516171234567C21830pf9RSTXTAL2R1C31uF10k293031R4200PSENALEEAR2ab4.7kQ1NPNSTARTSTOPRESET12345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7ATC51R34.7kQ2NPN

图3-2 按下Stop按键时的仿真结果

3.2.2实物调试

用Proteus仿真成功后,制作了用LED数码管显示的秒表多孔板实物,将附录3的程序烧写到STCC52中去,烧写过程中,发现并不能上电成功,但是最小系统的灯亮着,由此可得出并不是电路硬件的问题。因而我专注于对电路软件的研究,经过一番自己的摸索以及周围同学的帮助,发现是烧写程序版本过低的问题,更新了版本后,发现一切正常。秒表可以正常计时,亮度也很好,至此电路板调试工作完成。

多孔板调试成功后,设计制作了用LED数码管显示的秒表PCB板,并进行了焊接与调试,成功调试出PCB板实物。

3.2.3 实验结果

制作了用LED数码管显示的秒表多孔板实物,通电后按下“开始”、“暂停”、“复位”,秒表可以正常工作。图3-3是按下按Stop键以后的显示结果。

9

用LED数码管显示的秒表设计

图3-3 多孔板实验结果

10

盐城工学院课程设计说明书( 2015)

4. 结束语

本次设计的是用LED数码管显示的秒表,分别进行了硬件电路设计、PCB设计、多孔板与PCB板实物调试。

正因为科学技术的日新月异,单片机在21世纪获得蓬勃发展,单片机可以集成越来越多等资源,内部存储越来越丰富,用户不需要扩充资源就可以完成项目开发。因而,单片机已经成为21世纪计算机中空前活跃的领域,在生活中无处不在,是人们生活中不可或缺的一部分。因而,作为当代大学生,掌握单片机的开发与运用是必不可少的。

这次我设计的LED数码管显示的秒表,可以说是很简单的一种。但是这次设计,从理论到实践,有苦也有甜,当电路不成功时自己内心的焦躁无人可说,可经过自己的探索,最终看见秒表顺利计时后,内心的喜悦又是巨大的。

11

用LED数码管显示的秒表设计

参考文献

[1] 张兰红 单片机原理及应用[M] 北京:机械工业出版社,2012.7

[2] 郭天祥 新概念51单片机C语言教程—入门、提高、开发拓展全攻略[M] 北京:电子工业出版社,2010

[3] 彭伟 单片机C语言程序设计实训100例—基于8051+Proteus仿真[M] 北京:电子工业出版社,2010.6

[4] 张大明 单片机控制实训指导及综合应用实例[M].北京:清华大学出版社, 2004 [5] 张齐 朱宁西. 单片机应用系统设计技术—基于C51的Proteus仿真 [M].北京:化学工业出版社,2004

[6] 沈光斌 刘冬,姚志成.单片机系统实用抗干扰设计.[M].北京:人民邮电出版社,2004 [7] 冯育长 .单片机系统设计与实例分析.[M].西安:西安电子科技大学出版社,2007 [8] 晁阳 单片机MCS-51原理及应用开发教程[M].北京:清华大学出版社,2009

12

盐城工学院课程设计说明书( 2015)

致 谢

经过两个星期的课程设计,我学到了很多知识。明白了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把理论与实际结合起来,从实践中得出结论,才能真正学到知识,真正为社会服务,提高自己的实际动手能力和实际思考能力。毕竟这是自己第一次做的设计,许多知识还掌握的不够,在设计中可谓是困难重重,但正因为有困难,有问题,自己才有了学习的机会,自己才能够得到真正的提高。

能够顺利完成课程设计任务,离不开老师的指导和同学的帮助,在此特别感谢张兰红老师的悉心指导,感谢陈鹤鸣同学和庄永栋同学的帮助!

13

用LED数码管显示的秒表设计

附录

附录1:用LED数码管显示的秒表设计原理图图纸

附录2:用LED数码管显示的秒表设计的的元器件目录表 附录3:用LED数码管显示的秒表设计的的程序清单

14

VCCJ112CON2C1XTAL122pFY112MVCCU1C2XTAL2XTAL222pFS6R21kC3+987654321RP1RESPACK-8U3XTAL1XTAL1XTAL21819VCC293031PSENALEEARSTVCC74LS254191CEAB/BAVCCGND910uFVCCP00P01P02P03P04P05P06P0720103938373635343332A0A1A2A3A4A5A6A7B0B1B2B3B4B5B6B72345671817161514131211H1H2H3H4H5H6H7H8VCCR110KS1S243212040GNDVCCSTCC52VCCS3S4S5P30P31P32P33P34P35P36P371011121314151617L1L2L3L4L5L6L7L85P20P21P22P23P24P25P26P272122232425262728盐城工学院课程设计说明书( 2015)

12345678P10P11P12P13P14P15P16P17L1L2L3L4L5L6L7L81334106111516附录1:用LED数码管显示的秒表设计原理图图纸

专业电气工程及其自动化班级盐 城 工 学 院学号0851402219姓名设计审核日期2011.6图名基于单片机的电梯显示屏控制系统原理图苏晨晨课题名称基于单片机的电梯显示屏控制系统设计苏晨晨比例图号共1张H8H7H6H5H4H3H2H1H85H72H67H512H41H3814H2H1L1L2L3L4L5L6L7L8U28*8LEDB电气082915

用LED数码管显示的秒表设计

附录2:用LED数码管显示的秒表设计的元器件目录表

序号 1 2 3 4 5 6 7 8 9

型 号(名称) ATC52 电阻 100欧姆排阻 两位共阳数码管 按钮 22pF瓷片电容 10μF电解电容 12MHz 三极管 数量 1 1K一个、330一个 1 1 3 2 1 1 1 作用 单片机 电路电阻 上拉电阻 显示时间 复位按钮等 晶振电路用 上电复位 晶振 放大电路 16

盐城工学院课程设计说明书( 2015)

附录3:用LED数码管显示的秒表设计程序清单

#include #include

#define uchar unsigned char #define uint unsigned int sbit START=P1^0; //开始 sbit STOP=P1^1; //停止 sbit RESET=P1^2; //复位

sbit dp=P0^7; sbit w1=P2^6; sbit w2=P2^7;

uchar aa,temp,STOPFLAG,STARTFLAG,miaoshi,miaoge;

uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共阳极数码表

void display(uchar temp); void delay(uint z); void init(); void main()

{

init(); temp=0;

if(START==0)

STARTFLAG=1;//开始标志 while(STARTFLAG==1) {

if(aa==20)//中断20次即每秒加1 { aa=0;

temp++; if(temp==60) {

temp=0; } }

if(STOP==0) {

17

用LED数码管显示的秒表设计

STOPFLAG=1;//停止标志

while(STOPFLAG==1) {

TR0=0;

display(temp); if(START==0) break; //退出停止即继续计时 if(RESET==0)//复位清零 { temp=0; display(temp);

} }

}

if(STOP!=0)//继续计时判断 { TR0=1; STOPFLAG=0; } display(temp); } }

void delay(uint z)//延时函数 {

uchar x,y;

for(x=z;x>0;x--) for(y=110;y>0;y--); }

void display(uchar temp)//秒显示 {

miaoshi=temp/10; miaoge=temp%10; w1=1;

P0=table[miaoshi]; delay(2); w1=0;

18

盐城工学院课程设计说明书( 2015)

w2=1;

P0=table[miaoge]; delay(2); w2=0; }

void init() //定时器初始化 {

TMOD=0x01;

TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; }

void timer0()interrupt 1 //定时器T0中断服务子程序 {

TH0=(65536-50000)/256; TL0=(65536-50000)%256; aa++; }

19

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 517ttc.cn 版权所有 赣ICP备2024042791号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务