课程设计实训报告-基于AT89C51单片机的电子秒表 的设计与制作_第1页
课程设计实训报告-基于AT89C51单片机的电子秒表 的设计与制作_第2页
课程设计实训报告-基于AT89C51单片机的电子秒表 的设计与制作_第3页
课程设计实训报告-基于AT89C51单片机的电子秒表 的设计与制作_第4页
课程设计实训报告-基于AT89C51单片机的电子秒表 的设计与制作_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

PAGE2PAGE2山东英才学院本科实训报告计算机学院实训报告题目:基于AT89C51单片机的电子秒表的设计与制作专业:计算机科学与技术班级:姓名:学号:组长:目录1单片机版图及模块简介 21.1LED点阵屏(8*8点阵) 21.2单片机以及LED数码管显示 31.3EEPROM模块时钟模块 41.4串口通信 41.5电源模块 51.6下载线接口、蜂鸣器、按键模块 52本项目组的设计 62.1实验项目及要求 62.1.1项目原理及完成的功能 62.1.2模块框图 72.2电路图的绘制 92.1.2元件的选取及元件功能简介 92.2.2proteus电路图及连线原因 112.3程序的编写 122.3.1程序框图(流程) 122.3.2keilc的使用步骤 133印刷板的焊接及流程 164调试及遭遇的问题解决方法 165总结体会 176附录 176.1程序代码 17内容提要:本次实训通过电子秒表的设计与制作,学到了单片机最小系统的概念与设计,对单片机中断、定时等功能模块有了进一步的了解,并利用这个实力对单片机的编程方法有了一定程度的深入了解,并对51单片机有了深入的了解。关键字:单片机、定时、中断、数码管显示单片机版图及模块简介1.1LED点阵屏(8*8点阵)LED显示屏是由LED发光二极管以点阵的形式组合而成的。以64个发光二极管排成8*8的矩阵形式,由于具有多个LED而只适用于动态扫描方式,相当于行列都是公共端,无共阴或共阳。 1.2单片机以及LED数码管显示89c51是一个40引脚的芯片,其中继承了运算器、控制器、存储器,是一个高度集成的芯片,可将编写编译后的程序下载到芯片中去,实现某一功能。n个LED数码管可以构成n位LED显示器,有n根位选线(即公共端)和8n跟段选线。LED显示器有静态显示和动态显示两种方式。该系统中采用8位的动态数码显示,控制数码显示的数据由两部分组成,一部分为笔段亮灭控制的信号输入由“ABCDEFGH”端口输入,而控制位显示的控制信号由“S1S2S3S4S5S6S7S8”端口输入,同时该动态数码显示采用共阳数码管;具体的电路原理图如图所示1.3EEPROM模块时钟模块EEPROM是可擦可写存储器,可以对时钟模块的数据修改。时钟模块采用的是DS1302芯片,内含一个实时时钟/日历逻辑,通过简单的串行接口与单片机进行通信,具有能计算2100年之前的秒、分、时、日、日期、星期、月和年的能力,还有闰年调整的能力,按秒刷新1.4串口通信在PC机内接有EIA-TTL的电平转换和RS-232C连接器,称为COM口。由于单片机的串行发送线TXD和接收线RXD是TTL电平,而PC机的COM1和COM2等的RS-232C连接器是EIA电平,因此单片机需要加接MAX232芯片,通过串行电缆线和PC机相连。1.5电源模块电源模块为系统板上其它模块提供+5V电源,电源输入有两种方式,一种为交直流电源从电源插座输入,输入的电压要求,直流输入应大于7.5V,交流输入应大于5V,通过7805三端稳压器得到5V的直流电源供给系统其它模块工作,另一种为从USB接口获取+5V电源,只要用相应配套的USB线从电脑主机获取+5V直流电源,在电源模块中加有保护电路,即电路中有短路,不会对7805三端稳压器及电脑主机电源有损害!1.6下载线接口、蜂鸣器、按键模块该模块完成源程序代码下载到AT89S51或者是AT89S52芯片中,它需要和微机上的ISP下载器软件配合使用来完成这样的功能。具体的电路原理图如图所示:声音的频谱范围约在几十到几千赫兹,若能利用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使喇叭发出不同的声音。如图开关控制信号由“K0K1K2K3”端口输出,具体的电路原理图如图所示2本项目组的设计2.1实验项目及要求2.1.1项目原理及完成的功能系统功能分析:此次实训设计的电子秒表可以实现以下功能:用开关K0实现秒表的启动,用开关K1实现秒表的数据保存,用开关K2实现秒表的数据的翻页查看,用开关K3实现秒表的停止;将数据显示在数码管上,供使用者数取。2.系统分析与设计上述功能只要涉及到单片机定时器、键盘和LED的使用方法.此设计采用AT89C51单片机为核心控制元件,结合数码管、三极管、发光二极管等器件构成一个显示值达99.99的电子秒表。利用了单片机的延时电路、按键复位电路、定时中断等电路,实现了电子秒表的启动、保存、翻页查看、停止的功能和数码管的动态显示的功能。2.1.2模块框图本次实训电子秒表所使用到的模块按键模块K0:start启动,K1:save保存数据,K2:look查看数据,K3:stop停止;将四个按键与P1.0、P1.1、P1.2和P1.3想接。通过扫描按键,读取按键实现四个功能的控制。2.AT89C51单片机与数码管的显示模块该部分由两个四段的共阳极LED数码管组成,用来显示秒表的秒值,数码管的使能端接到P2.4、P2.5、P2.6和P2.7上,其余8个引脚分别单片机P1口相连,根据单片机引脚与数码管的连接关系,可以列出显示不同数字的段选码。从而准确的输出秒表的正确秒值和保存的数据秒值。3.时钟模块单片机必须在时钟的驱动下才能工作.在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,外接晶体以及电容C1和C2构成并联谐振电路接在放大器的反馈回路中,决定单片机的工作速度。一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容C1,C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。电容的大小会影响振荡器频率的高低、振荡器的稳定性、起振的快速性和温度的稳定性,晶体频率可在1.2MHz~12MHz之间任选,电容C1和C2的典型值在20pF~100pF之间选择。C1,C2的典型值为30PF。4.复位模块89S52的复位输入引脚RST为89S52提供了初始化的手段,可以使程序从指定处开始执行,在89S52的时钟电路工作后,只要RST引脚上出现超过两个机器周期以上的高电平时,即可产生复位的操作。只要RST保持高电平,则单片机循环复位。只有当RST由高电平变低电平以后,89S52才从0000H地址开始执行程序。本系统采用按键复位方式的复位电路。如图2.2电路图的绘制2.1.2元件的选取及元件功能简介AT89C51(如下图)89c51是一个40引脚的芯片,其中继承了运算器、控制器、存储器,是一个高度集成的芯片,可将编写编译后的程序下载到芯片中去,实现某一功能。LED数码管(如下图)LED数码管采用的是有发光二极管按一定的结构组合起来的显示器件。本次实训采用的是共阳极的方式。A—G因脚输入不同的二进制编码可显示不同的数字。而且本次实训采用的是软件破译方式,通过译码程序来得到要显示的数字的字段码。三极管(如下图)三极管在此与P2.4P2.7相连,起到位选的作用。排阻(如下图)

2.2.2proteus电路图及连线原因电子秒表的电路图

如图:P0.0——P0.7作为数码管显示的输入信号,作为数码管A——G以及DP的输入端,通过软件破译的方式并根据共阳极的数码管成功显示数字,同时破译的数字为UcharcodeBCD_7[11]={0x02,0x9e,0xa0,0x88,0x1c,0x48,0x40,0x9a,0x00,0x08,0xff};//0,1,2,3,4,5,6,7,8,9,灭P2.4——P2.7作为位选信号,与数码管的1,2,3,4相连,同事结合三极管的驱动完成数码管的位选。P1.0——P1.3与K0,K1,K2,K3四个开关相连,同时结合程序的键盘扫描功能实现开关的控制功能。P1口可以实现I/O输入输出。2.3程序的编写2.3.1程序框图(流程)开始开始定时器计数器2初始化显示缓冲区初始化开中断键盘扫描是否有键盘输入?键号送k判断是否为start键判断是否为stop键判断是否为look键判断是否为save键定时计数器2中断停止计时将数据保存停止后查看数据显示显示YYYYNYNNNN2.3.2keilc的使用步骤打开桌面上的Keil软件:(1)新建项目文件。点击Project菜单,选择弹出的下拉式菜单中的NewProject。在“文件名”中输入您的第一个C程序项目名称,“*****.uv2”。“保存”后的文件扩展名为uv2,这是KEILuVision2项目文件扩展名2)选择所要的单片机,常用Ateml公司的AT89C51。3)在项目中创建新的程序文件。点击新建文件的快捷按钮,出现一个新的文字编辑窗口,这个操作也可以通过菜单File-New或快捷键Ctrl+N来实现。好了,现在可以编写程序了。4)点击保存新建的程序,*****.c,保存在项目所在的目录中,这时会发现程序单词有了不同的颜色,说明KEIL的C语法检查生效了。5)将程序文件加到项目中。在屏幕左边的SourceGroup1文件夹图标上右击弹出菜单,在这里可以做在项目中增加减少文件等操作。选“AddFiletoGroup‘SourceGroup1’”弹出文件窗口,选择刚刚保存的文件,按ADD按钮,关闭文件窗,程序文件加到项目中。这时在SourceGroup1文件夹图标左边出现了一个小+6)设定创建HEX文件选项。上一步建立了单片机C语言项目,但为了让编译好的程序能通过编程器写入51芯片中,要先用编译器生成HEX文件。HEX文件格式是Intel公司提出的按地址排列的数据信息,数据宽度为字节,所有数据使用16进制数字表示,常用来保存单片机或其他处理器的目标程序代码。它保存物理程序存储区中的目标代码映象。一般的编程器都支持这种格式。我们先来打开项目,打开它的所在目录,找到****.Uv2的文件就可以打开先前的项目了。然后右击项目文件夹,弹出项目功能菜单,选OptionsforTarget’Target1’,弹出项目选项设置窗口,同样先选中项目文件夹图标,这时在Project菜单中也有一样的菜单可选。打开项目选项窗口,转到Output选项页。设定:1选择编译输出的路径,2编译输出生成的文件名,3决定是否要创建HEX文件,选中3就可以输出HEX文件到指定的路径中。7)编译运行。8)查错并直至无错误。3印刷板的焊接及流程在老师的指导下,首先按照老师发给每个人的实验指导熟悉这次实训的器件以及各个应用软件及硬件设施。按照各个元器件的摆放位置和摆放标准,将印刷版的各个位置弄清楚之后,将元器件一一焊接好,并检查是否正确焊接。流程:熟悉印刷版的各个方面的情况,将元器件的情况了解,首先焊接印刷版,然后全部焊接完后,将测试程序下载到芯片上测试印刷版时候有问题,有问题再重新检查直到没有问题了。 然后制作USB下载板,先进行焊接然后再测试。将印刷版和USB下载板连接起来。然后就是将编写的程序下载到实验板上就行调试了。4调试及遭遇的问题解决方法将我们项目组所编写的电子秒表的程序下载到芯片中,调试程序。遇到的问题就是数码管不能正确的显示。没有正确编写数码管的显示程序,将小数点的显示位置改正,同时实验板的数码管采用的是共阳的数码管显示,因为0亮1不亮,必须严格按照这个来编写程序。最后我们终于克服了这个困难,让数码管的后四个显示00.00—99.99,完成了实训的项目。反复进行测试,对四个按键分别进行测试,检查是否完成预定的四个功能:启动、保存数据、查看数据、停止。是否实现了定时/计数器中断。5总结体会通过这个为期三个周的单片机实训使我对AT89C51单片机有了更一层深入的了解,同时加强了动手实践能力。了解了印刷版的组成及各个器件的知识。在这次实训中虽然也遇到了各种困难,但是一个组的人员一起克服了,大家一起才能完成项目,同时结合实践进一步巩固了课本上的理论知识,将学习的理论基础知识又加深了一遍,同时认识到我们所学的知识还是远远不够的,我们需要不断学习提升自己的能力,不仅仅是动手能力,还有编程能力和考虑问题的全面性方面。6附录6.1程序代码#include"reg52.h"#defineucharunsignedchar#defineuintunsignedint//unsignedcharkey_times;#definestart0xfe#definesave0xfd#definelook0xfb#definestop0xf7uinttimes_10ms;idatauints[12];uchars_ptr;uchard[4];voiddelay(){uchari,j;for(i=0;i<10;i++)for(j=0;j<50;j++);}voiddisplay(uintt){uchari;ucharcodeBCD_7[11]={0x02,0x9e,0xa0,0x88,//0,1,2,30x1c,0x48,0x40,0x9a,0x00,0x08,0xff};for(;t>0;t--){for(i=0;i<4;i++){P0=BCD_7[d[i]];if(i!=2)P0|=0x01;P2|=0x80>>i;delay();P2&=0x00;}}}ucharRead_key(){uchark;P1=0xff;k=P1;if(k==0xff)return0xff;else{delay();k=P1;if(k==0xff)return0xff;elsereturnk;}}main(){uchari,k;uinttem;ucharrun_sign;TH2=RCAP2H=(65536-10000)/256;TL2=RCAP2L=(65536-10000)%256;EA=1;ET2=1;EX0=0;times_10ms=0;s_ptr=0;for(i=0;i<12;i++)s[i]=0;for(i=0;i<4;i++)d[i]=0;while

温馨提示

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

评论

0/150

提交评论