单片机课程设计十秒秒表.docx
- 文档编号:18556059
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:15
- 大小:782.83KB
单片机课程设计十秒秒表.docx
《单片机课程设计十秒秒表.docx》由会员分享,可在线阅读,更多相关《单片机课程设计十秒秒表.docx(15页珍藏版)》请在冰点文库上搜索。
单片机课程设计十秒秒表
1设计目的
设计目的
1、通过单片机课程设计,熟练掌握单片机C语言的编程方法,将理论联系到实践中去,提高我们的动脑和动手的能力。
2、通过定时/计数器控制两个LED数码管显示器显示10秒秒表系统的设计,掌握定时/计数器和LED数码管显示器的使用方法,同时掌握简单程序的编写,最终提高我们的逻辑抽象能力。
设计内容和要求
内容:
设计一个开关控制两个LED数码管显示器显示10秒秒表的模拟系统。
要求:
利用单片机的定时/计数器定时,使两个LED数码管显示器分别显示秒位和毫秒位。
设计思路
1、先熟悉实验原理,同时了解定时/计数器的运作,和LED数码管显示器显示0到9数字的原理。
2、绘制电路原理图,编写基本程序,并进行仿真,实现两个LED数码管显示器显示0到9数字的功能。
3、进一步完善程序,并进行仿真,使第二个LED数码管显示器每100毫秒(即秒)显示一个数字,使第一个LED数码管显示器每1秒显示一个数字。
2设计原理分析
十秒秒表系统设计
通过编写程序,实现对LED数码管显示器的控制,进行十秒的计时。
使第二个LED数码管显示器每100毫秒(即秒)显示一个数字,使第一个LED数码管显示器每1秒显示一个数字。
采用单片机内部的I/O口上的P0口和P2口控制两个LED数码管显示器,用引脚来接收按钮的控制。
十秒秒表系统的功能要求
本设计能模拟基本的十秒秒表显示系统,是用中断的方式计数和控制LED数码管显示器显示数字。
计时显示
定时/计数器工作方式寄存器存入定时/计数器工作方式,定时器采用T0定时器0工作于模式1:
16位计数范围。
中断设置
每累计2次定时器中断就相当于执行了秒,每累计20次定时器中断就相当于执行了1秒。
十秒秒表系统的基本构成及原理
图系统的总体框图
LED数码管显示器的结构与原理
LED数码管显示器是由发光二极管按一定的结构组合起来的显示器件。
在单片机应用系统中通常使用的是8段式LED数码管显示器,它有共阴极和共阳极两种结构,如下图所示。
图8段式LED数码管结构
其中图(a)为共阴极结构,8段发光二极管的阴极端连接在一起,阳极端分开控制,使用时公共段接地,要使哪根发光二极管亮,则对应的阳极端接高电平;图(b)为共阳极结构,8段发光二极管的阳极端连接在一起,阴极端分开控制,使用时公共端接电源,要使哪根发光二极管亮,则对应的阴极端接地。
图(c)为引脚图,从a~dp引脚输入不同的8位二进制编码,可显示不同的数字或字符。
通常把控制发光二极管的8位二进制编码称为字段码。
此系统使用的共阴极结构,
“0”~“9”数字的共阴极对应的字段码如表所示。
表“0”~“9”数字对应
显示字符
共阴极字段码
显示字符
共阴极字段码
0
3FH
5
6DH
1
06H
6
7DH
2
5BH
7
07H
3
4FH
8
7FH
4
66H
9
6FH
LED数码管的显示方式
LED数码管在显示时,通常有静态显示方式和动态显示方式两种,本系统采用的是静态显示方式。
LED静态显示时,其公共端直接接地,各段选线分别与I/O接口线相连。
要显示字符,直接在I/O线发送相应的字段码,如图所示。
两个数码管的共阴极端直接接地,如果要在第一个数码管上显示数字1,只要在I/O
(1)发送1的共阴极字段码;如果要在第二个数码管上显示2,只要在
I/O
(2)发送2的共阴极字段码。
图两位数码管静态显示
3系统硬件电路的设计
系统硬件总电路构成及原理
实现本设计要求的具体功能,可以选用AT89C51单片机及外围器件构成最小控制系统,2个LED数码管显示器和1个按钮等。
主要器件的选择:
表3-1元器件表
器件
个数
LED数码管显示器
2
晶振()
1
排阻
1
电容
3
按钮
1
主控制部分――AT89C51单片机简介
89C51是一种带4K字节闪存可编程可擦除(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称。
AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除1000次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
AT89C51单片机为40引脚双列直插芯片,有4个I/O口:
P0、P1、P2、P3,单片机的最小系统如图所示,18引脚和19引脚接时钟脉冲电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器反相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器反相放大器的输出端,第9引脚为复位输入端,接上电容,电阻及开关后构成上电复位电路,20引脚为接地端,40引脚为电源端。
如图所示:
图晶振与单片机的连接
AT89C51的内部结构功能
·中央处理器:
中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。
·数据存储器(内部RAM):
数据存储器用于存放变化的数据。
AT89C51中数据存储器的地址空间为256个RAM单元,但其中能作为数据存储器供用户使用的仅有前面128个,后128个被专用寄存器占用。
·程序存储器(内部ROM):
程序存储器用于存放程序和固定不变的常数等。
通常采用只读存储器,且其有种类型,在89系列单片机中全部采用闪存。
AT89C51内部配置了4KB闪存。
·定时/计数器(T0):
定时/计数器用于实现定时和计数功能。
AT89C51共有2个16位定时/计数器。
·并行输入输出(I/O)口:
8051共有4组8位I/O口(P0、P1、P2、P3),用于对外部数据的传输。
每个口都由1个锁存器和一个驱动器组成。
它们主要用于实现与外部设备中数据的并行输入与输出,有些I/O口还有其他功能。
·全双工串行口:
A89C51内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。
·时钟电路:
时钟电路的作用是产生单片机工作所需要的时钟脉冲序列。
·中断系统:
中断系统的作用主要是对外部或内部的终端请求进行管AT89C51共有5个中断源,其中有2个外部中断源和3个内部中断源。
51单片机的串行接口工作方式
51单片机的串行接口有四种工作方式。
方式0是将SBUF作为8位同步移位寄存器使用(固定波特率);方式1是10位异步通信方式(可变波特率);方式2是11位异步通信方式(固定波特率);方式3是11位异步通信方式(可变波特率)。
图串行接口与单片机的连接
其它器件
LED数码管显示器
根据本设计的特点,采用LED数码管显示器,它是由发光二极管按一定的结构组合起来的显示器件,在单片机应用系统中通常使用的是8段式LED数码管显示器,它有共阴极和共阳极两种结构。
本系统设计采用的是共阴极结构,如下图所示。
图LED数码管显示器
十秒秒表系统原理图
本系统以单片机为核心,系统硬件电路由单片机、排阻、LED数码管显示器、按钮等组成。
如下图所示:
图系统原理
设计的连线图
图实物图
硬件资源及其分配
主要用到的硬件:
P0口、P2口、LED数码管显示器、按钮、定时器T0。
硬件分配:
(1)P0口、P2口:
各连接一个LED数码管显示器。
(2)定时/计数器T0:
用来产生50毫秒的定时。
(3)按钮:
用来对秒表器开始、暂停、清零。
运行步骤
1、按硬件图接线,为了确保LED数码管显示器能够正确显示,P0口和P2口和两个数码管显示器连接应该注意。
按钮接引脚。
2、开始运行,点击按钮观察两个LED数码管显示器显示是否与程序设计思路对应,如果有偏差,则单步运行或断点运行,进行调试,直至满足设计要求。
3、整体运行,点击按钮观察两个LED数码管显示器显示是否都符合要求,如果不符合,则再调试,直至满足要求。
检测与调试
硬件调试
硬件调试是利用开发系统、基本测试仪器(万用表、示波器等),检查用户系统硬件中存在的故障。
硬件调试可分为静态调试与动态调试两步进行。
◆静态调试
静态调试是在用户系统未工作时的一种硬件检测。
第一步:
目测。
检查外部的各种元件或者是电路是否有断点。
第二步:
用万用表测试。
先用万用表复核目测中有疑问的连接点,再检测各种电源线与地线之间是否有短路现象。
第三步:
加电检测。
给电路板加电,检测所有的插座或是器件的电源端是否符合要求的值
第四步:
是联机检查。
因为只有用单片机开发系统才能完成对用户系统的调试。
◆动态调试
动态调试是在用户系统工作的情况下发现和排除用户系统硬件中存在的器件内部故障、器件连接逻辑错误等的一种硬件检查。
动态调试的一般方法是由近及远、由分到合。
由分到合是指首先按逻辑功能将用户系统硬件电路分为若干块,当调试电路时,与该元件无关的器件全部从用户系统中去掉,这样可以将故障范围限定在某个局部的电路上。
当各块电路无故障后,将各电路逐块加入系统中,在对各块电路功能及各电路间可能存在的相互联系进行调试,由分到合的调试就完成。
由近及远是将信号流经的各器件按照距离单片机的逻辑距离进行由近及远的分层,然后分层调试。
调试时,仍采用去掉无关元件的方法,逐层调试下去,就会定位故障元件。
软件调试
软件调试是通过对用户程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。
编辑程序后,查看程序是否有逻辑错误。
4系统软件程序的简单设计
程序框图
图程序框图
程序
#include<>
#defineucharunsignedchar
#defineuintunsignedint
sbitK1=P3^7;
【2】余锡存,曹国华著,单片机原理及接口技术,西安电子科技大学出版社,2011.
【3】雷丽文,等著,微机原理与接口技术,电子工业出版社,1997.
【4】吴黎明,王桂棠,洪添胜等著,单片机原理及应用技术,科学出版社,2005.
【5】韩克,柳秀山等著,电子技能与EDA技术,暨南大学出版社,2004.
【6】张毅坤著,单片微型计算机原理及应用,西安电子科技大学出版社,1998.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课程设计 秒表