单片机秒表实验报告

上传人:无*** 文档编号:138294935 上传时间:2022-08-20 格式:DOC 页数:14 大小:573.98KB
收藏 版权申诉 举报 下载
单片机秒表实验报告_第1页
第1页 / 共14页
单片机秒表实验报告_第2页
第2页 / 共14页
单片机秒表实验报告_第3页
第3页 / 共14页
资源描述:

《单片机秒表实验报告》由会员分享,可在线阅读,更多相关《单片机秒表实验报告(14页珍藏版)》请在装配图网上搜索。

1、安徽科技学院机电与车辆工程学院电子电路课程综合实训验收材料题 目: 电子秒表 姓名(学号) 胡斌1609110208 李绪1609110214 王增龙1609110227 段鑫鹏 专 业: 电气工程及其自动化 班 级: 112班 指 导 教 师 : 叶爱芹 2013 年 12 月 29日目录第一章 单片机课程设计任务书1一、 目的意义 .1二、 设计时间、地点和班级1三、 设计内容.1四、 参考电路图形.2五、 单片机的相关知识.3第二章 硬件设计5一、 单片机简介.5二、 电源电路.5三、 晶振振荡电路.5四、 复位电路.5五、 显示电路.6六、 键盘电路.6七、 硬件主电路图设计.7八、

2、元件清单.7第三章 软件设计8一、 软件设计概述.8二、 主程序流程图.8三、 程序中各函数设计.8四、 C语言主程序设计.10第四章 课程设计体会.13.五、单片机相关知识本课题在选取单片机时,充分借鉴了许多成形产品使用单片机的经验,并根据自己的实际情况, 选择了AT89C51。AT89C51单片机采用40引脚的双列直插封装方式。图1.2为引脚排列图, 40条引脚说明如下:主电源引脚Vss和Vcc Vss接地 Vcc正常操作时为+5伏电源外接晶振引脚XTAL1和XTAL2 XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。当采用外部振荡器时,此引脚接地。 XTAL2内部振荡电路

3、反相放大器的输出端。是外接晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。图1.2 AT89C51单片机引脚图控制或与其它电源复用引脚RST/VPD,ALE/,和/Vpp RST/VPD 当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位在Vcc掉电期间,此引脚可接上备用电源,由VPD向内部提供备用电源,以保持内部RAM中的数据。 ALE/正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE 引脚以不变的频率(振荡器频率的1/6)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储

4、器时,将跳过一个ALE脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL电路。对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(功能) 外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,在每个机器周期内两次有效。同样可以驱动八LSTTL输入。 /Vpp、/Vpp为内部程序存储器和外部程序存储器选择端。当/Vpp为高电平时,访问内部程序存储器,当/Vpp为低电平时,则访问外部程序存储器。对于EPROM型单片机,在EPROM编程期间,此引脚上加21伏EPROM编程电源(Vpp)。输入/输出引脚P0.0 - P0.7,P1.0 - P1.7,P2.0 - P

5、2.7,P3.0 - P3.7。 P0口(P0.0 - P0.7)是一个8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。 P1口(P1.0 - P1.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载。 P2口(P2.0 - P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。 P3口(P3.0 - P3.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个

6、LSTTL负载。AT89C52具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89C52可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。CPU是单片机的核心部件。它由运算器和控制器等部件组成。(1) 运算器运算器的功能是进行算术运算和逻辑运算。可以对半字节(4位)、单

7、字节等数据进行操作。例如能完成加、减、乘、除、加1、减1、BCD码十进制调整、比较等算术运算和与、或、异或、求补、循环等逻辑操作,操作结果的状态信息送至状态寄存器。89C51运算器还包含有一个布尔处理器,用来处理位操作。它是以进位标志位C为累加器的,可执行置位、复位、取反、等于1转移、等于0转移、等于1转移且清0以及进位标志位与其他可寻址的位之间进行数据传送等位操作,也能使进位标志位与其他可移位寻址的位之间进行逻辑与、或操作。(2) 程序计数器PC程序计数器PC用来存放即将要执行的指令地址,共16位,可对64K程序存储器直接寻址。执行指令时,PC内容的低8位经P0口输出,高8位经P2口输出。(

8、3) 令寄存器指令寄存器中存放指令代码。CPU执行指令时,由程序存储器中读取的指令代码送入指令寄存器,经译码后由定时与控制电路发出相应的控制信号,完成指令功能。第二章 硬件设计本系统中,硬件电路主要有电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等。一、单片机简介本系统设计采用C51系列单片机。ST89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容(由于在微机原理中学过C-51的具体知识,这里不再详细说明)。由于将多功能8位CPU和闪烁存储器组合在

9、单个芯片中,ST89C51是一种高效的微控制器。二、电源电路电源电路是系统最基本的部分,任何电路都离不开电源部分,由于三端集成稳压器件所组成的稳压电源线路简单,性能稳定,工作可靠,调整方便,已逐渐取代分立元件,在生产中被广泛采用,由于是小系统,我们采用7809电源提供+5V稳压电压。三、晶体振荡电路MCS-51单片机内部的振荡电路是一个高增益反相放大器,引线 XTAL1和XTAL2分别为反向振荡放大器的输入及内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器。这里,我们选用51单片机12MHZ的内部振荡方式,电路如下:电容器C1,C2起稳定振荡频率,快速起振的作用,

10、C1和C2可在20-100PF之间取,这里取30P,接线时要使晶体振荡器X1尽可能接近单片机。晶体振荡电路四、复位电路采用上电+按键复位电路,上电后,由于电容充电,使RST持续一段高电平时间。当单片机已在运行之中时,按下复位键也能使用使RST持续一段时间的高电平,从而实现上电加开关复位的操作。这不仅能使单片机复位,而且还能使单片机的外围芯片也同时复位。当程序出现错误时,可以随时使电路复位。电路图如下:复位电路五、显示电路显示电路既可以选用液晶显示器,也可以选用数码管显示。我们采用的是数码管显示电路。用2个共阴极LED显示,LED是七段式显示器,内部有7个条形发光二极管和1个小圆点发光二极管组成

11、,根据各二极管的亮灭组合成字符。在用数码管显示时,我们有静态和动态两种选择,静态显示程序简单,显示温度,但是占用端口比较多;动态显示所使用的端口比较少,可以节省单片机的I/O口。在设计中,我们采用LED动态显示,用P0口驱动显示。由于P0口的输出极是开漏电路,用它驱动时需要外接上拉电阻才能输出高电平。六、键盘电路在按键电路中,我们可以在I/O口上直接按键,或者通过I/O口设计一个键盘,然后通过键盘扫描程序判断是否有按键按下等。键盘扫描电路节省I/O口,但编程有些复杂,在这里,由于我们所用的按键较少,且系统是一个小系统,有足够的I/O口可以使用,为了使程序简化,我们采用按键电路,用部分P1口做开

12、关,P1.0复位,P1.1开始和暂停,用外中断INT1开始,另外用软件法消除抖动。电路图如下所示:七、硬件主电路图设计用Protues画出其硬件主电路图如下: 秒表原理图八、 元器件清单表3.1 元器件清单名称与规格数量名称与规格数量按键2个AT89C511块两位共阴极数码管2个RESPACK-81个电路板1块电阻4个电容3个晶振1个第三章 软件设计一、软件设计概述在软件设计中,一般采用模块化的程序设计方法,它具有明显的优点。把一个多功能的复杂的程序划分为若干个简单的、功能单一的程序模块,有利于程序的设计和调试,有利于程序的优化和分工,提高了程序的阅读性和可靠性,使程序的结构层次一目了然。应用

13、系统的程序由包含多个模块的主程序和各种子程序组成。各程序模块都要完成一个明确的任务,实现某个具体的功能,在具体需要时调用相应的模块即可。功能描述:用2位LED数码显示秒表,显示时间0099秒,每秒自动加1;一个开始暂停键,一个清零键。二、主程序流程图这里采用顺序结构,通过对按键的扫描,判断要实现什么功能。如下所示:三、程序中各函数设计(1) 初始化函数设计void init()TMOD=0x10;/定时器1工作方式1TH1=0xd8;TL1=0xf0;/延时初始化设置/TR1=1;EA=1;/开总开关ET1=1;/开定时器(2)显示函数设计void writeled(uchar num,uch

14、ar addr)/关显示P2=0xff;/送数据P0=dulatabnum;/开显示P2=welatabaddr;delay(4);void display(uchar sec)uchar sech,secl;sech=sec/10;secl=sec%10;writeled(sech,0);writeled(secl,1);(3)按键函数设计void keyscan()if(start=0)delay(2);if(start=0)TR1=TR1;while(start=0)display(sec);if(stop=0&TR1=0)delay(2);if(stop=0)sec=0;while(s

15、top=0)display(sec);(4)延时函数设计void delay(uchar time)/延时uchar i,j;for(i=0;itime;i+)for(j=0;j110;j+);四、C语言主程序设计 #include#define uchar unsigned charsbit start=P11;sbit stop=P10;uchar code dulatab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40;/数字编码0-9uchar code welatab=0xfe,0xfd;/位控制字uchar msec,s

16、ec;void delay(uchar time)/延时uchar i,j;for(i=0;itime;i+)for(j=0;j110;j+);void writeled(uchar num,uchar addr)P2=0xff;P0=dulatabnum;P2=welatabaddr;delay(4);void display(uchar sec)uchar sech,secl;sech=sec/10;secl=sec%10;writeled(sech,0);writeled(secl,1);void init()TMOD=0x10;TH1=0xd8;TL1=0xf0;/TR1=1;EA=1

17、;ET1=1;void keyscan()if(start=0)delay(2);/延时防抖if(start=0)TR1=TR1;while(start=0)display(sec);if(stop=0&TR1=0)delay(2);/延时防抖if(stop=0)sec=0;while(stop=0)display(sec); void main()init();while(1)display(sec);keyscan();void timer1() interrupt 3TH1=0xd8;TL1=0xf0;msec+;if(msec=100)msec=0;sec+;if(sec=100)se

18、c=0; 第四章 课程心得体会经过两个星期的课程设计,使我加深了单片机课程的了解,我们花费了很多的时间和精力,比如说重新温故C语言的书籍和以前所学单片机不太懂的知识,我觉得这几天让我过的十分的充实,我相信其余的队友也有相同的看法,下面是我的一些心得体会:1. 将学习的理论知识通过实验融会贯通,让我对它的理解更加的深刻,对程序的编译过程也有一定了解。2. 本次课程设计是以团队为主,没有团队的力量,在较短的时间内完成时难以实现的,因此培养了我们积极合作、认真的态度,每个人都有不同分工和任务,做好一个电子秒表也成为了一件很开心的事情,增进了同学们之间的沟通与交流。3. 本次课程设计不仅涉及了编程、C语言和单片机的知识,也涉及其他两门学科上的知识,让我们了解了Protues和kvil等基本知识,真的是学海无涯啊。4. 本次试验也让我了解到自己的不足之处,很多的东西还是没有学好。因此实验可能有瑕疵之处,望各位指导。总之,通过本次试验,不仅加深了我对单片机理论知识的理解,将理论更好的应用到实践中,而且锻炼了我们各个方面的能力,培养了坚强的意志和做事的耐心和细心,认识到合作的重要性,虽然过程中还有不足之处单这需要在实践中不断的锻炼才能提高,希望各位老师和同学多多指导,促进我们进步。在此感谢那些帮助我们的老师和同学们!

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!