51单片机秒表计时器课程设计报告

上传人:pu****.1 文档编号:498071956 上传时间:2023-07-07 格式:DOCX 页数:21 大小:553.76KB
返回 下载 相关 举报
51单片机秒表计时器课程设计报告_第1页
第1页 / 共21页
51单片机秒表计时器课程设计报告_第2页
第2页 / 共21页
51单片机秒表计时器课程设计报告_第3页
第3页 / 共21页
51单片机秒表计时器课程设计报告_第4页
第4页 / 共21页
51单片机秒表计时器课程设计报告_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《51单片机秒表计时器课程设计报告》由会员分享,可在线阅读,更多相关《51单片机秒表计时器课程设计报告(21页珍藏版)》请在金锄头文库上搜索。

1、51单片机系统设计课程设计报告题目:秒表系统设计专业、班级: 学生姓名:学 号:指导教师:分 数: 摘要 本设计是一个秒表计时器,采用 51单片机实现。电路包括以下几部 分:单片机最小系统部分,数码管显示部分,摁键开关部分部分。电路选用共阴型 4 位数码管组成时钟显示电路; 时钟的增减控制以及清零部分主要由轻触开关构成 的摁键系统组成;信号接收和处理部分主要由单片机来执行。 接通电源后,秒表 计时器处于初始状态, 4位数码管显示 000.0。当摁下“开始”开关时,秒表开 始计时,数码管显示当前状态的时间。当再次摁下开关时,数码管停止计时。摁 下“清零”键后,系统重新回到初始状态。 关键词 单片

2、机最小系统 秒表 计时摁键控制任务书1、任务设计一个秒表计时器,在51单片机的控制作用下,采用4个LED数码管 显示时间, 计时范围设置为00.060.0秒, 即精确到0.1 秒, 用按键控制秒表的 “开始” 、 “暂停” 、 “复位” ,按“开始”按键,开始计时;按“暂停”按 键,系统暂 停计时;再按“开始”键,系统继续计时;数码管显示当前计时值;按“复位” 按键,系统清零。2、设计要求( 1)开始时显示00.0。每按下 S1 键一次,数值加 1s;(2)每按下S2键一次,数值减1s;(3)每按下S3键一次,数值清零;( 4)每按下S4 键一次,启动定时器使数值开始自动每秒加1,再次按下S4

3、键,数值停止自动加1,保持显示原数。3、发挥部分( 1)开关按键3: “复位 60.0” 按键(用来 60 秒倒计时) 。按键按 下去时数码管复位为“ 60.0” (用于倒计时) 。( 2) 开关按键4: 倒计时 “逐渐自减” 按键。 按键按下去则是数码管开始 “逐渐自减”倒计时。( 3)开关按键5:倒计时初始值“增加”按键。( 4)开关按键6:倒计时初始值“减小”按键。4、课程设计的难点单片机电子秒表需要解决三个主要问题, 一是有关单片机定时器 (一个控 制顺序计时,一个控制倒计时)的使用;二是如何实现 LED 的动态扫描显示; 三是如何对键盘输入进行编程。5、课程设计仪器集成电路芯片STC

4、89C52八段数码管,MCS-51系列单片机微机仿真课程系统中 的软件( keil uvision2 )。摘要 2关键词 2任务书 31、设计任务目的 52、设计方案选取与论证 52.1 系统总体设计方案 52.2 系统整体框图 53、电路设计 63.1 单片机最小系统设计 63.2 数码管显示模块设计 63.3 撼键控制系统模块设计 63.4 程序设计 64、制作及调试过程115、结果分析和总结 12参考文献 12附录a秒表计时器原理图 13附录b元器件清单 14附录c秒表计时器实物图 151 、设计任务目的1 .根据单片机课程所学内容,结合其他相关课程知识,设计电子秒表,以加深对单片 机知

5、识的理解,锻炼实践动手能力,为以后的毕业设计和工作打下坚 实基础;2 熟悉汇编语言或C语言的程序设计方法,熟悉51系列单片机的使用;3 掌握单片机的内部功能模块的应用,如定时器/计数器、中断、I/O 口、串行口通讯等功能;4 .掌握单片机应用系统的软硬件设计过程、方法及实现。2、设计方案选取与论证1.1系统总体设计方案使用STC89C5广片机作为核心控制部件,采用12M晶体振荡器及30PF微小电容构 成振荡电路;用1个四位一体共阴极数码显示管作为显示部分, 构成数字 式秒表的 主体结构,配合独立式键盘和复位电路完成此秒表的计时、 清零、停止、 增减初始 时间等各项功能。1.2系统总体整体框图独

6、立扌恩键控STC89C52单片机4位数码管显制模块最小系统模块不模块图2.2系统设计框图3、 电路设计3.1单片机最小系统设计图3.1单片机最小系统1.时钟电路在XTAL1、XTAL2的引脚上外接定时元件(一个石英晶体和两个电容),内部振荡器便能产生自激振荡。在本设计中采用的 12M 的石英晶振。和晶振并联的两个电容的大小对 振荡频率有微小影响,可以起到频率微调作用。当采用石英晶振时,电容可以在20 40pF之间选择。2. 复位电路复位操作通常有两种基本形式: 上电自动复位和开关复位。 上电瞬间, 电容两端电压不 能突变,此时电容的负极和 RESET 相连,电压全部加在了电阻上,RESET 的

7、输入为高,芯片被复位。随之 +5V 电源给电容充电,电阻上的电压逐渐减小,最后约等于0,芯片正常工作。并联在电容的两端为复位按键, 当复位按键没有被按下的时候电路实现上电复位, 在 芯片正常工作后,通过按下按键使 RST 管脚出现高电平达到手动复位的效果。3. EA/VPP (31 脚) 的功能和接法51 单片机的 EA/VPP( 31 脚)是内部和外部程序存储器的选择管脚。当EA 保持高电平时,单片机访问内部程序存储器; 对于现今的绝大部分单片机来说, 其内部的程序 存储器(一般为 flash )容量都很大,因此基本上不需要外接程序存储器,而是直接使用内 部的存储器。4. P0 口外接上拉电

8、阻51单片机的P0端口为开漏输出,内部无上拉电阻。所以在当做普通I/O输出数据时,由于 V2 截止,输出级是漏极开路电路,要使“ 1 ”信号(即高电平)正常输出,必须外接 上拉电阻。3.2数码管显示模块设计显示部分采用动态显示。数码管动态显示接口是单片机中应用最为广泛的一 种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp 的同名端连在一起,另外为每个数码管的共阴极增加位选通控制电路, 位选通由 各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字 形码, 但究竟是那个数码管会显示出字形,取决于单片机对位选通端电路的控制, 所以我们只要将需

9、要显示的数码管的选通控制打开, 该位就显示出字形,没有选 通的数码管就不会亮。通过分时轮流控制各个数码管的位选通端, 就使各个数码 管轮流受控显示,这就是动态驱动。动态显示是利用人眼视觉暂留特性来实现显 示的。 事实上,显示器上任何时刻只有一个数码管有显示。由于各数码管轮流显 示的时间间隔短、节奏快,人的眼睛反应不过来,因此看到的是连续显示的现 象。为防止闪烁延时的时间在1ms左右,不能太长,也不能太短。3.3摁键控制系统模块设计由P1 口作为独立撼键信号的输入端控制时钟的加1s、减1s、复位60.0s等操作。 用外部中断0作为秒表计时器的开启和暂停的操作。且所有摁键均为低电平有效。其中部分撼

10、键为单刀双掷开关用于控制增计时或减计时以及限60.0s计时和60.0s外计时。3.4程序设计如下:#include /包含52单片机寄存器定义的头文件unsigned char Tab1 =0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/ /段码表unsigned char Tab2 =0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef; / 个位段码表unsigned int x; unsigned char k;sbit int0=P3A2; sbit int1=P3A3;sbit SUB

11、60=P1A1;sbit S60=P1A2;sbit K5=P1A3;sbit K6=P1A4;sbit K7=P1A5;sbit K8=P1A6;*/延时1ms 基|c |c |c |c |c|c | |c | |c | |c | |c | |c | |c|c |c |c |c |c |c |c |cvoid delay1ms(unsigned int i)unsigned char j;while(i-)for(j=0;j125;j+) /1ms 基准延时程序 12MHz 晶振 J|c |c |c |c |c|c | |c | |c | |c |数码显示程序*/|c |c |c |c |c

12、|c | |c | |c | |c | |c | |c | |c | |c | |c | |c | |c|c |c |c |c |c |c |cvoid Display(unsigned int x)P2=0xfe;/P2.0引脚输出低电平,DS6点亮P0=Tab1x/1000;/显示百位delay1ms(6);P2=0xfd;/P2.1引脚输出低电平,DS6点亮P0=Tab1x%1000/100;/显示十位delay1ms(6);P2=0xfb;/P2.2引脚输出低电平,DS6点亮P0=Tab2x%100/10;/显示个位delay1ms(6);P2=0x亿/P2.3引脚输出低电平,DS7点

13、亮P0=Tab1x%10; /显示 0.1 位 delay1ms(6);P2=0xff;函数功能:主函数void main(void)x=0;TMOD=0x01;EA=1;ET0=1;EX0=1;/ TMOD=0000 0001B,使用计数器T0的工作方式1 /开起总中断/允许定时器T0的中断/允许外中断INT0IT0=1; /INT0 为下负脉冲触发方式TH0=(65536-50000)/256;/计数器T0 高 8 位赋初值TL0=(65536-50000)%256;/计数器T0 低 8 位赋初值TF0=0;/溢出标志位清零while(1) K5P1.3 按一次加 1 开关if(K5=0)delay1ms(20);if(K5=0)x=x+10;while(!K5);/摁键关断摁一次触发一次*K6 P1.4 按一次减 1 开关S2*/ if(K6=0) delay1ms(20);if(K6=0) if(x=0) x=10;x=/在00.0的时候停止x10/摁键关断摁一次触发一次P1.5 初 始 值 赋 值 为60.0 秒 开 关/赋初值 60.0秒/摁键关断摁一次触发一次I #1 !*/if(K7=0) delay1ms(20); if(K7=0) x=600;while(!K7);/*60S止开关*

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

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