课程设计:单片机99秒马表设计_第1页
课程设计:单片机99秒马表设计_第2页
课程设计:单片机99秒马表设计_第3页
课程设计:单片机99秒马表设计_第4页
课程设计:单片机99秒马表设计_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

一、 设计目的及要求1.1设计目的本设计主要是应用Proteus软件和嵌入式C语言编程工具结合单片机原理及应用、微机原理与接口技术等专业课程,强化和稳固专业理论基础,掌握Proteus仿真的技巧和嵌入式C语言编程工具,提高单片机开发能力,并为嵌入式开发打下基础。1・2设计要求99秒马表设计〔1〕开始时,显示“00”,第1次按下SP1后就开始计时。〔2〕第2次按SP1后,计时停止。〔3〕第3次按SP1后,计时归零。二、 硬件电路设计2.1芯片简介本设计选择采用AT89C51单片机为核心。AT89C51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。2.2总体设计思路系统板上硬件连线〔1〕把“单片机系统”区域中的P0.0/AD0—P0.7/AD7端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a—h端口上;要求:P0.0/AD0对应着a,P0.1/AD1对应着b,……,P0.7/AD7对应着ho〔2〕把“单片机系统”区域中的P2.0/A8—P2.7/A15端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a—h端口上;要求:P2.0/A8对应着a,P2.1/A9对应着b,……,P2.7/A15对应着ho〔3〕把“单片机系统“区域中的P3.5/T1用导线连接到”独立式键盘“区域中的SP1端口上;

总体设计思路图2.3单元电路设计本设计主要分为时钟电路模块,复位电路模块,显示模块和控制模块。设计方案如下时钟模块图2.3时钟电路如上图所示89C51单片机的时钟信号通常用内部振荡方法得到,在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方法。由于单片机内部有一个高增益反相放大器,当外接晶振后就构成了自激振荡器并产生振荡时钟脉冲。晶振通常选择6MHz、12MHz、24MHz。本设计采用12MHz晶振。图中电容Cl、C2起到稳固振荡频率、快速起振的作用。电容值一般为5—30pF。本设计选用33pF电容。复位电路模块复位操作完成电路的初始化,使单片机从一种确定的状态开始运行。由上图可知,控制模块实际上就是单片机的最小系统。本设计采用常用的上电且开关复位电路。上电后,由于电容的充电,使RST持续一段高电平时间。当单片机已在运行中时,按下复位键也能使RST持续一段时间的高电平,从而实现上电且开关复位的操作。此处C3电容取10uF,R2=K。2・3・4显示模块三、软件设计3・1程序设计思路〔流程图〕TO中断服务程序框图

3・2源程序#includevAT89X51.H>unsignedcharcodedispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};unsignedcharsecond;unsignedcharkeycnt;unsignedinttcnt;voidmain(void){unsignedchari,j;TMOD=0x02;ET0=1;EA=1;second=0;P0=dispcode[second/10];P2=dispcode[second%10];while(1){if(P3_5==0){for(i=20;i>0;i--)for(j=248;j>0;j--);if(P3_5==0){keycnt++;switch(keycnt){case1:TH0=0x06;TL0=0x06;TR0=1;break;case2:TR0=0;break;case3:keycnt=0;second=0;P0=dispcode[second/10];P2=dispcode[second%10];break;}while(P3_5==0);}}}}voidt0(void)interrupt1using0{tcnt++;if(tcnt==400){tcnt=0;second++;if(second==100){

second=0;}P0=dispcode[second/10];P2=dispcode[second%10];}}四、仿真调试总体仿真电路图如下列图所示图4.1整体仿真原理图4.1keil简介KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势。因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境uVision将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。4.2keil与protues联调与仿真实现双击图标进入KeiluVision2编程环境,输入程序。返回桌面双击图标进入PROTEUS仿真环境。点击左上角选项设置keil和proteus的工作环境。实现keil和proteus的连调。五、总结本次课程设计的题目是99秒马表设计。经过本组同学的共同努力,终于调试成功。课程设计是培养学生综合运用所学知识,发现实际问题、提出实际问题、分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际学习能力、动手能力的具体训练和考察过程。在此次设计过程中,在学习新知识的同时,把在课程中学到的理论知识运用到实际作品设计、操作中更进一步地熟悉了单片机芯片的结构及掌握了其工作原理和具体的使用方法与相关元器件的参数计算方法、使用方法了解了电路的开发和制作及课程设计报告的编写。加深了对相关理论知识及专业知识的掌握度,增强自身的动手能力,锻炼及提高了理解问题、分析问题、解决问题的能力,更深刻的体会到了理论联系实际的重要性

温馨提示

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

评论

0/150

提交评论