存储多组数据的秒表教材_第1页
存储多组数据的秒表教材_第2页
存储多组数据的秒表教材_第3页
存储多组数据的秒表教材_第4页
存储多组数据的秒表教材_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计说明书(2012 /2013 学年第 二 学期)课程名称 :单片机应用题 目 :存储多组数据的秒表专业班级 :电气 10-2学生姓名 :焦奇学 号:100062226指导教师 :苗敬利等设计周数 :2周设计成绩 :2013 年 7 月 11 日目录一、课程设计目的、任务 . 11.1 课设设计目的 11.2 设计任务 1二、各单元硬件设计及计算方法 . 12.1 设计所需材料 12.2 硬件部分 . 2三、程序流程图与原理图 . 5四、软件设计 . 6五、心得体会 . 13六、参考文献 . 13课程设计目的、任务1.1 课设设计目的1.1 掌握单片机的定时器、按键和显示电路的设计,从而

2、学会制作可存储多组数据的秒表。1.2 通过秒表的制作进一步了解各种在制作中用到的中小规模集成电路的作用及使用方法。1.3 学习与掌握单片机软硬件的基本设计思路、方法。1.2 设计任务(1) 用 5 位数码管进行秒数时间显示,分别是分 2 位,秒 2 位, 1/10 秒 1位;(2) 有 5 个按键,分别是开始、记录、停止、清零、回显。00:(3) 开始上电时显示 00:00: 0,按下“开始”键开始定时;每按下一次“记录”键将当前时间记 录、存储;按下“停止”键定时结束,同时显示数据保持不变;按下“清零”键显示数据为 00:0;每按下一次“回显”键将所存储的数据依次显示。二、各单元硬件设计及计

3、算方法 2.1 设计所需材料名称数量(单位:个)共阳数码管590135按键5LED510uF 电容122pF 电容24.7K 电阻710K 电阻61.5K 电阻1晶振1单片机12.2 硬件部分图 1 如下:2.2.1 STC90C52RC 的功能参数介绍 STC90C52RC是由宏晶公司生产的高性能八位单片机。如图1所示。该芯片采用 FLASH存储技术,内部具有 8KB 字节快闪存 存储器,采用 DIP 封装,是目前在中小系统中应用最为普及的 单片机。STC90C52RC可构成真正的单片机最小应用系统,缩小系统体 积,增加系统的可靠性,降低系统的成本。只要程序长度小于 8K,四个 I/O 口全

4、部提供给用户。可用 5V 电压编程,而且擦 写时间仅需 10 毫秒,仅为 8751/87C51 的擦除时间的百分之 一,与 8751/87C51 的 12V 电压擦写相比,不易损坏器件,没 有两种电源的要求,改写时不拔下芯片, 适合许多嵌入式控制领域。工作电压范围( 2.7V6V ), 全静态工作,工作频率宽在 0Hz 24MHz之间,比 8751/87C51 等 51 系列的 6MHz 12MHz更具有灵 活性,系统能快能慢。 STC90C52RC芯片提供三级程序存储器加密,提供了方便灵活而可靠的硬加 密手段,能完全保证程序或系统不被仿制。 P0 口是三态双向口,通称数据总线口,因为只有该口

5、 能直接用于对外部存储器的读 / 写操作。STC90C52RC单片机为 40 引脚芯片如图一所示, 在本设计中,主要用到 P0口、P2 口、P1.0 口及 P3.0、 P3.1 、P3.2 口。P0 口:可作为通用 I/O 口,但须外接上拉电阻,所以在设计显示数码管我们避免了使用P0 口这样大大简化了动态显示电路。P1口:8 位、双向 I/0 口,内部含有上拉电阻。P1 口可作普通 I/O 口。输出缓冲器可驱动四个 TTL负载;用作输入时,先将引脚置 1,由片内上拉 电阻将其抬到高电平。 P1 口的引脚可由外部负载拉到低电平,通过上拉电阻提供电流。在 FLASH并行编程和校验时, P1 口可输

6、入低字节地址。 在串行编程和效验时, P1.5/MO-SI,P1.6/MISO 和 P1.7/SCK 分别是串行数据输入、输出和移位脉冲引脚。P2口:具有内部上拉电阻的 8 位双向 I/O 口。P2口用做输出口时,可驱动 4各 TTL负载;用做输入口时,先将引脚置 1,由内部上拉电阻将其提 高到高电平。若负载为低电平,则通过内部上拉电阻向外部输出电流。在 FLASH并行编程和校验时, P2 口可输入高字节地址和某些控制信号。P3口:具有内部上拉电阻的 8 位双向口。P3口用做输出口时,输出缓冲器可吸收 4各 TTL 的灌电流;用做输入口时,首先将引脚置1,由内部上拉电阻抬位高电平。若外部的负载

7、是低电平,则通过内部上拉电阻向输出电流。在本设计中, P3口作为时间设置的 4 按键输入,因为有上拉电阻,所以可以通过按键直接接地,简化了电路。 在与 FLASH并行编程和校验时, P3 口可输入某些控制信号。 P3口除了通用 I/O 口功能外,还有替 代功能如表 1 所示。表 1 P3 口的第二功能端口引脚各个功能P3.0RXD(串行口输入端 )P3.1TXD(串行口输出端 )P3.2INT0( 外部中断 0 请求输入端,低电平有效 )P3.3INT1( 外部中断 1 请求输入端,低电平有效 )P3.4T0( 定时 / 计数器 0 计数脉冲输入端 )P3.5T1( 定时 / 计数器 1 计数

8、脉冲输入端 )P3.6WR(外部数据存储器写选通信号输出端,低电平有效)P3.7RD(外部数据存储器读选通信号输出端,低电平有效)8 个引脚每个均可吸收 TTL的灌电流。作为输入时,首先应将引脚置1。P0 也可用做访问外部程序存储器和数据存储器时的低 8位地址 /数据总线的复用线。在该模式下, P0口含有内部上拉电阻。 在 FLASH编程时, P0口接收代码字节数据;在编程效验时, P0口输出代码字节数据 ( 需要外接上拉 电阻)。单片机使用宏晶公司支持串口下载程序( ISP )的单片机, 为 STC90C52RC课程设计配发的小电 路板( ISP-MCU Basic circuit )电路原

9、理图见下图。该板作为课程设计的核心电路板使用,板上 有单片机及附属电路, RS-232 通信驱动电路,高低电平测试电路等。课程设计电路中需要的其他 电路在此基础上扩展,通过插孔连接。2.2.2 时钟电路与复位电路的设计 时钟电路是计算机最核心的部分,它控制着计算机的工作。STC90C52RC单片机允许的时钟频率典型值为 6MHZ。 STC90C52RC单片机内部有一个高增益反相放大器,用于构成振荡器。反相放大器的 输入端为 XTAL1,输出端为 XTAL2,分别是 STC90C52RC的 19 脚和 18 脚。在 XTAL1和 XTAL2两端跨 接石英晶体及两个电容就可以构成稳定的自激振荡器。

10、石英晶振起振后要能在 XTAL2 线输出一个 3V 左右的正弦波,使 STC90C52RC片内的 OCS电路按石英晶振相同的频率自激振荡。通常,OCS的输出时钟频率 fosc 为 0.5MHZ-16MHZ,典型值为 6MHZ,电容器 C1 和 C2 通常取 30pF 左右,对振荡 频率有微调作用。调节它们可以达到微调振荡周期 fosc 的目的。单片机的 RST管脚为主机提供一个外部复位信号输入端口。复位信号是高电平有效, 高电平有效的持续时间应为 2个机器周期以上。 单片机的复位方式有上电自动复位和手工复位两种。 图 2-2 所示 是 52 系列单片机常用的上电复位电路,只要Vcc 上升时间不

11、超过 1ms, 它们都能很好的工作。复位后,单片机内各部件恢复到初始状态。RET按键可以选择专门的复位按键,也可以选择轻触开关。三、程序流程图与原理图开始初始化参数LED显示按键检测Y键码判断记录键停止键清零键开始键回显键开始计时记录数据计时停止显示清零回显记录结束四、软件设计#include #include code unsigned char num =0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90; / 段选sbit key1 =P10;sbit key2 =P11;sbit key3 =P12;sbit key4 =P13;sbit

12、 key5 =P14;sbit s0=P23;/位选sbit s1=P24;/位选sbit s2=P25;/位选sbit s3=P26;/位选sbit s4=P27;/位选void init();/ 初始化void delay();/延迟程序void display();/显示程序void key_1();/按键程序,开始,停止,清零void key_2();/记录void key_3();/回显static unsigned char Ms010,Ms110,Sec010,Sec110,Min010,Min110;/ 记录 , 最大记录限制 10 组 static int key_n,j,x

13、;unsigned char ms0=0,ms1=0,sec0=0,sec1=0,min0=0,min1=0;void main()init();while(1)key_1();key_2();key_3();display();void delay()unsigned int i;for(i = 0; i600; i+);void key_1()if(!key1)delay();if(!key1) while(!key1);TR0=1;if(!key2)delay();if(!key2)TR0=0;while(!key2);if(!key3)delay();if(!key3) ms0=ms1

14、=0; sec0=sec1=0; min0=min1=0; for(j=0;j10;j+)Min0j=0;Min1j=0;Sec0j=0;Sec1j=0;Ms0j=0;Ms1j=0;j=0;x=0;void key_2()if(!key4)delay();if(!key4)while(!key4);if(j=10)TR0=0;Min0j=min0;Min1j=min1;Sec0j=sec0;Sec1j=sec1;Ms0j=ms0;Ms1j=ms1; j+;void key_3()if(!key5)delay();if(!key5)while(!key5);if(x=j)x=0;elsex+=1

15、;min0=Min0x;sec0=Sec0x;ms0=Ms0x; min1=Min1x;sec1=Sec1x;ms1=Ms1x;x+;void display()s0=1;s1=0;s2=0;s3=0;s4=0;P0=numms1; delay();s0=0;s1=1;s2=0;10s3=0;s4=0;P0=numsec0; delay();s0=0;s1=0;s2=1;s3=0;s4=0;P0=numsec1; delay();s0=0;s1=0;s2=0;s3=1;s4=0;P0=nummin0; delay();s0=0;s1=0;s2=0;s3=0;s4=1;P0=nummin1; d

16、elay();void init()ms0=ms1=sec0=sec1=min0=min1=0;key_n=0; j=0;x=0;P2=0xff;P1=0xff;11TMOD=0x01;TH0=0xd8;TL0=0xef;EA =1;ET0=1;TR0=0;void tiem0(void) interrupt 1 using 1 TH0=0xd8;TL0=0xef;TR0=1;ms0+;if(ms0=10)ms0=0;ms1+;if(ms1=10)ms1=0; sec0+; if(sec0=10) sec0=0;sec1+;if(sec1=6)12sec1=0;min0+;if(min0=10

17、)min0=0;min1+;if(min1=6) min1=0;五、心得体会我认为,在这学期的实验中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我们的将来也有 很大的帮助。 以后, 不管有多苦, 我想我们都能变苦为乐, 找寻有趣的事情, 发现其中珍贵的事情。 就像中国提倡的艰苦奋斗一样, 我们都可以在实验结束之后变的更加成熟, 会面对需要面对的事情。 回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但 是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很 多在书本上 所没有学到过的知识。 通过这次课程设计使我懂得了理论与实际相结合是很重要的, 只有理论知识 是远远不够的, 只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服 务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题, 可以说得是困难 重重,但可喜的是最终都得到了解决。实验过程中,也对团队精神的进行了考察,让我们在合作起 来更加默契,在成功后一起体会喜悦的心情。 果然是团结就是力量,只有互相之间默契融洽的配合13才能换来最终完美的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论