完整版《单片机原理及应用》键控秒表毕业课程设计.docx
- 文档编号:1940155
- 上传时间:2022-10-25
- 格式:DOCX
- 页数:8
- 大小:239.18KB
完整版《单片机原理及应用》键控秒表毕业课程设计.docx
《完整版《单片机原理及应用》键控秒表毕业课程设计.docx》由会员分享,可在线阅读,更多相关《完整版《单片机原理及应用》键控秒表毕业课程设计.docx(8页珍藏版)》请在冰豆网上搜索。
完整版《单片机原理及应用》键控秒表毕业课程设计
《单片机应用技术》
课程设计
题目∶
键控秒表
院系∶
机电工程系
专业班级∶
电气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语言版)主编: 王静霞 参考祖一康老师的教学课件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机原理及应用 完整版 单片机 原理 应用 键控 秒表 毕业 课程设计
![提示](https://static.bdocx.com/images/bang_tan.gif)