完整版《单片机原理及应用》键控秒表毕业课程设计.docx

上传人:b****2 文档编号:1940155 上传时间:2022-10-25 格式:DOCX 页数:8 大小:239.18KB
下载 相关 举报
完整版《单片机原理及应用》键控秒表毕业课程设计.docx_第1页
第1页 / 共8页
完整版《单片机原理及应用》键控秒表毕业课程设计.docx_第2页
第2页 / 共8页
完整版《单片机原理及应用》键控秒表毕业课程设计.docx_第3页
第3页 / 共8页
完整版《单片机原理及应用》键控秒表毕业课程设计.docx_第4页
第4页 / 共8页
完整版《单片机原理及应用》键控秒表毕业课程设计.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

完整版《单片机原理及应用》键控秒表毕业课程设计.docx

《完整版《单片机原理及应用》键控秒表毕业课程设计.docx》由会员分享,可在线阅读,更多相关《完整版《单片机原理及应用》键控秒表毕业课程设计.docx(8页珍藏版)》请在冰豆网上搜索。

完整版《单片机原理及应用》键控秒表毕业课程设计.docx

完整版《单片机原理及应用》键控秒表毕业课程设计

《单片机应用技术》

课程设计

 

题目∶

键控秒表

院系∶

机电工程系

专业班级∶

电气1011

姓名∶

吴燊

学号∶

39

指导教师∶

祖一康

 

2012年6月18

摘要

二十世纪跨越了三个“电”的时代,即电气时代,电子时代和现已进入的电脑时代。

但是,实际工作中,并不是需要计算机的场合都需要计算机很高的性能。

应用的关键是看能否够用,是否有很好的性能价格比。

单片机又称单片微控制器,它不是完成某一个逻辑工程的芯片,而是把一个计算机系统集成到一个芯片上。

概括的讲:

一个芯片就成了一台计算机。

它的体积小、质量轻、价格便宜,为学习、应用和开发提供了便利条件。

自从1976年问世以来,单片机获得了巨大的发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上的各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,这些都离不开单片机。

所以,学习单片机在我国是有着广泛前景的。

目录

摘要1

一、课题研究目的3

二、实验内容及要求4

1、实验内容4

2、实验要求4

三、仿真原理图5

四、系统程序6

五、材料清单9

六、键控秒表实物图10

七、心得及体会11

八、总结12

九、参考文献13

一、课题研究目的

1.通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。

2.掌握键控秒表系统的制作,进一步熟悉单片机计数器结构的工作方式,初始值设置和停止等基本应用方法,掌握C语言控制单片机的基本技能。

3.通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。

4.该实验通过单片机的键控原理,设计简单的系统,拥有正确的增一、减一、清零、自动加一功能,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义。

5.通过本次设计,提高自身电路设计能力,并锻炼团队合作精神。

二、实验内容及要求

1、实验内容

利用AT89C52设计一个2位LED数码管显示“秒表”,可显示时间为00~59秒。

并设计一个“增一”按键,一个“减一”按键,一个“清零”按键,一个“自动增一”按键。

按键说明:

按“增一”按键,系统加一计数,数码管显示数字加一;

按“减一”按键,系统减一计数,数码管显示数字减一;

按“清零”按键,系统清零,数码管显示“00”;

按一下“自动加一”按键,系统自动进行加一循环,并在数码管上显示,再按一下“自动加一”按键,系统会暂停自动加一循环,数码管显示的数字将停留在当前显示值上。

2、实验要求

了解AT89c52芯片的的工作原理和工作方式,使用该芯片对LED数码管进行显示控制,实现用单片机的端口控制数码管,显示数字,并能用按键实现秒表增一、减一、清零复位功能。

画出使用单片机控制LED数码管显示的电路图,并编程完成软件部分,最后调试秒表的增一、减一、清零、自动加一。

三、仿真原理图

四、系统程序

#include

voiddisplay(uchar);

voiddelay(uintxms)

{

uintx,y;

for(x=xms;x>0;x--)

for(y=110;y>0;y--);

}

voidkeyscan()

{

if(key1==0)

{

delay(10);

if(key1==0)

{

num++;

if(num==60)

num=0;

while(!

key1);

}

}

if(key2==0)

{

delay(10);

if(key2==0)

{

if(num==0)

num=60;

num--;

while(!

key2);

}

}

if(key3==0)

{

delay(10);

if(key3==0)

{

num=0;

while(!

key3);

}

}

if(key4==0)

{

delay(10);

if(key4==0)

{

while(!

key4);

TR0=~TR0;

}

}

}

voidmain()

{

TMOD=0x01;

TH0=()256;

TL0=()%256;

EA=1;

ET0=1;

while

(1)

{

keyscan();

display(num);

}

}

voiddisplay(ucharnum1)

{

ucharshi,ge;

shi=num110;

ge=num1%10;

dula=1;

P0=table[shi];

dula=0;

P0=0xff;

wela=1;

P0=0xfe;

wela=0;

delay(5);

dula=1;

P0=table[ge];

dula=0;

P0=0xff;

wela=1;

P0=0xfd;

wela=0;

delay(5);

}

voidtimer0()interrupt1

{

n++;

if(n==20)

{

n=0;

num++;

if(num==60)

num=0;

}

TH0=()256;

TL0=()%256;

五、材料清单

名称

型号

符号

数量

备注

单片机

AT89C52

1个

数码管

5202ES

LED

2个

锁存器

74HC573

2个

弹性按键

K

4个

晶振

11.0592

1个

瓷片电容

30PF

C

2个

电解电容

22uF

C

1个

万能板

12*18

PCB

1个

电阻

10K

R

5个

排阻

A102J

RP

1个

底座

20PIC

2个

USB串口线

T0232

1根

电源线

1根

六、键控秒表实物图

七、心得及体会

1.根据课程设计的要求和芯片的功能写出相应的程序。

然后再进行程序调试和相应的修改,达到了本次设计的目的。

2.通过本次设计,我从中感受到了自己优缺点。

优点是我能很好并迅速的将电路布置并组装好,但是对于电路组线设计还有很多不足。

虽然元器件布置比较美观,但是背部的组线就比较凌乱,不利用出现问题后对其进行排查。

3.在本次设计过程中,我做的准备工作相对于其他同学来说是做得最好的,需要的相关工具我都准备的很齐全,以至于在制作的时候很多同学来我这里借东西,所以我感觉,无论做什么事情,准备工作一定要做好,才能一气呵成,减少走的弯路。

4.在本次设计中,在写程序时,我得到了一些启发。

就是在写程序时候,要尽量做到由各个子程序组成,在有些程序后面最好加注释,这样在程序出错的检查过程中可以更容易查找的到,也更简洁,更明白易懂。

本次设计,最大的收获就是让我学会将理论知识与实际相结合,并从中收获到一些书本和课堂上学不到的知识。

5.

八、总结

通过这次的设计,我对单片机这门课程有了更深的了解,同时也尝试着去怎么应用自己所掌握的知识,将知识以最好的方式融入到现实中。

在这其中,深感自己在电路线路设计排布这方面还需很大的努力,单片机课程设计不仅给我提供了展现应用自己所掌握的知识平台,又是检验自己所学知识的一次考核。

在设计过程中,难免会遇到一些困难,尤其在调试过程中,会因为某些原因出不来结果,但通过同学的鼓励和老师的帮助,我还是顺利完成了。

从中我明白要把所学到的理论转化为实践需要一段努力学习的过程。

在学习过程中,一定要注意理论和实践同步进行,光有理论知识还是远远不够的,要用时间去检验理论,用理论指导实践。

社会在进步,我们不论在什么地方,什么岗位我门都要以学为主.学以学以置用,才能把我们的工作做的更好。

并要坚持不懈的去努力,不能因为困难而懦弱,要遇强更强,以最大的信心去接受更严峻的挑战。

九、参考文献

参考单片机应用技术(C语言版)主编:

王静霞

参考祖一康老师的教学课件

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1