短跑计时器的课程设计.docx
- 文档编号:6009197
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:21
- 大小:460.73KB
短跑计时器的课程设计.docx
《短跑计时器的课程设计.docx》由会员分享,可在线阅读,更多相关《短跑计时器的课程设计.docx(21页珍藏版)》请在冰豆网上搜索。
短跑计时器的课程设计
摘要:
本文介绍了用AT89C51单片机和LM016L液晶显示系统组成短跑计时器的电路组成。
其中5V直流电源为自行设计的220V交流转5V直流电路;键控电路,主要由开始、暂停、复位三个功能键组成。
此外,当计时超出时间限制时可通过报警电路及时报警。
本系统用C语言进行软件编程。
用单片机做该系统电路连接简单、体积小、成本低,且抗干扰能力强。
关键字:
单片机;计时器;液晶;门控;报警
一、概述
随着社会的发展,人们对于计时器的要求也在不断的提高,尤其是短跑计时器。
用单片机作为计时器体积小,成本低,抗干扰能力强。
最重要的是它的精准度较高。
适合短跑、辩论赛等很多类的比赛计时。
设计一个短跑计时器的技术性能指标如下:
1.短跑计时器数码显示分、秒、毫秒;
2.最大计时限值为1分59秒99,超限值时应可视或可闻报警;
3.设计本电路所用的直流电源。
4.“键控”应为计时开始/继续(A)、计时停止/暂停(B)和复位/清零(C)等三个按键开关;
开关键控流程:
计时开始/继续(A)
计时停止/暂停(B)
计时复位/清零(C)
二、工作原理说明
首先设计一个交流转直流的电路,将220V交流电转换成5V直流电。
该电路是通过桥式整流电路和滤波和稳压电路将整流输出的波形变成稳定的5V直流输出。
该直流电源作为AT89C51单片机的输入电源。
单片机的另一端与LM016L液晶显示器相连接,用来显示计时数字。
另一个电路为门控电路,主要执行键控功能。
采用C语言作为源代码,通过C语言编程来实现对AT89C51单片机的控制。
C语言中包括对AT89C51单片机的初始化程序,LM016L液晶显示器的初始化程序,还有的就是计时程序,实现最大计时限值为1分59秒99计时部分。
液晶显示器比数码管显示要复杂的多,但它可显示的数字范围较广,还可对文字进行显示。
门控电路主要利用了一个三与非门,P3.4,P3.5,P3.6作为输入,外部中断1作为输出,通过对高低电平的控制来实现开始、暂停、复位的功能。
以上为短跑计时器的简单原理说明,其原理框图如图1所示。
图1短跑计时器电路原理框图
三.电路设计
1、直流稳压电源电路
直流稳压电源一般由电源变压器T、整流滤波电路及稳压电路所组成,原理框图如图2所示。
图2直流稳压电源电路原理框图
(1)变压器和整流电路部分
220V交流电源借一个保护电阻然后与变压器相连接,完成降压。
整流部分由桥式整流电路组成,完成整流作用。
这部分的组成电路如图3所示。
图3变压器和整流电路部分电路
桥式整流电路由四个二极管组成,因为二极管的单向导通能力,使电流变为单向流通,输出的电流如图4所示。
图4整流后输出的电流
输出的电压
,URM是指整流后输出的电压有效值,U2是指降压后的电压有效值。
(2)滤波和稳压电路部分
这部分滤波电路由电容滤波电路组成,稳压部分由三端集成稳压器及其他组件组成,作用是将整流输出的波形变成稳定的直流输出。
组成电路如图5所示。
图5滤波和稳压电路部分
经过电容滤波电路处理后,输出的电压为
,稳压电路作用就是稳定前面输出的电压,使输出的直流电压不受输入电压波动的影响输出范围可调:
Uo的范围是3v~40v。
2、AT89C51芯片
AT89C51芯片是本次设计的控制部分,它是把那些作为控制应用所必须的基本内容都集成在一个尺寸有限的集成电路芯片上,集成度很高,体积很小。
芯片本身是按工业测控环境要求设计的,内部布线很短,其抗工业噪音性能优于一般的CPU。
AT89C51芯片控制能力强,为了满足对象的控制要求,单片机的指令系统均有极其丰富的条件:
分之转移能力、I/O口的逻辑控制能力及位处理能力,适用于专门的控制功能。
由于其结构功能优化、易扩展、可靠性高、功耗低,在许多领域都得到了广泛的应用,其功能特点如下:
(1)一个8位CPU;
(2)内含4KB的程序存储器与128B的数据存储器;
(3)一组全双工串行口;
(4)二组16位计时、计数器;
(5)5个中断源;
(6)32条I/O引线;
AT89C51单片机按功能可分为8个部分,即微处理器(CPU)、程序存储器(ROM或EPROM)、数据存储器(RAM)、定时器、/计数器、特殊功能寄存器(SFR)、中断系统、I/O口(P0口、P1口、P2口、P3口)和串行口等。
这八个部分由片内总线有机连接起来,形成一个功能强大的单片微型计算机系统。
①微处理器AT89C51系列单片机内部有一个8位的微处理器(CPU),其中含一个位处理器,不仅可处理字节数据,还可以进行位处理。
②程序处理器用以存放程序、一些原始数据和表格。
对于AT89S51系列单片机内部有4KB的ROM,片外均可扩展至64KB的ROM。
③数据存储器用以存放可以读/写的数据。
片内为128B,片外可扩展至64KB。
④定时器/计数器两个16位的定时器/计数器,具有四种工作方式,可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,利用内部时钟定时,并可以根据计数或定时的结果实现单片机控制。
⑤特殊功能寄存器21个特殊功能寄存器(SFR)离散地分布在高128B的数据存储器RAM中,用于对片内各功能部件进行管理、控制。
⑥中断控制系统具有5个中断源,两个优先级。
⑦并行I/O口有四个可编程的8位并行I/O口,即P0口、P1口、P2口、P3口,每个I/O口既可以用作输入,也可以用作输出。
⑧串行口有一个全双工串行口,具有四种工作方式,用以实现单片机之间或单片机与外部设备之间的串行通信。
单片机控制系统如图6所示。
图6单片机控制系统
3、LM016L液晶显示器
(1)液晶显示原理
液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。
液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。
(2)液晶显示器各种图形的显示原理:
①线段的显示
点阵图形式液晶由M×N个显示单元组成,假设LCD显示屏有64行,每行有128列,每8列对应1字节的8位,即每行由16字节,共16×8=128个点组成,屏上64×16个显示单元与显示RAM区1024字节相对应,每一字节的内容和显示屏上相应位置的亮暗对应。
例如屏的第一行的亮暗由RAM区的000H——00FH的16字节的内容决定,当(000H)=FFH时,则屏幕的左上角显示一条短亮线,长度为8个点;当(3FFH)=FFH时,则屏幕的右下角显示一条短亮线;当(000H)=FFH,(001H)=00H,(002H)=00H,……(00EH)=00H,(00FH)=00H时,则在屏幕的顶部显示一条由8段亮线和8条暗线组成的虚线。
这就是LCD显示的基本原理。
②字符的显示
用LCD显示一个字符时比较复杂,因为一个字符由6×8或8×8点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。
这样一来就组成某个字符。
但由于内带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。
LM016L液晶显示器如图7所示。
图7液晶显示系统
4、键控与报警系统
根据要求需要设计一个具有开始、暂停、复位三功能的键控系统,本设计用了一个三与门,通过该与门与输入电平的高低组成一定的逻辑关系,进而来实现以上三功能。
另外配合一个发光二极管的使用,又可实现报警功能。
键控与报警系统如图8所示。
图8键控与报警系统
报警系统中是先将P34置0,当计时数据到达1分59秒99毫秒时将P34倒置,则P34为高电平,使得LED发光,达到报警效果。
键控部分当P35为0时,同时按下START键,输入低电平使TR0也为0。
此时将TR0置为1,实现开始计时。
按下STOP键,输入低电平使P36为0。
此时将TR0置为0,达到暂停效果。
当按下CLEAR键时,输入低电平使P37为0。
此时TR0为0,并将分、秒、毫秒位同时置0。
达到了复位的效果。
四、软件设计
本系统为短跑计时器,用单片机进行设计电路,用C语言来进行编程。
主要实现计时功能,计时最大的限度为1分59秒99毫秒。
当电路计时到规定的限度时报警电路及时报警。
另一部分的电路设计为键控系统,利用一个三与门和输入的高低电平组合的逻辑关系来实现开始、暂停、复位功能。
(1)主程序设计中主要实现单片机初始化,LCD初始化调用。
主程序流程框图如图9所示。
(2)该系统设计用到了LCD液晶显示器,显示程序设计中需要有两个步骤,分别是写指令和写数据。
在写指令时先要将指令数据写入到LCD中。
在写数据中也要先将字符显示数据写入到LCD中,然后再将所有的数据依次写入到LCD显示器中。
显示子程序的流程框图如图10所示。
(3)该程序利用单片机的定时器中断0来控制程序设计中的计时部分,每1毫秒来一次中断。
程序中定义了非字符变量h表示分,m表示秒,s表示毫秒。
单片机P34口高电平为计时结束。
计时子程序流程框图如图11所示。
(4)键控子程序的设计主要用到外部中断1来控制。
利用一个三与门和单片机的P35、P36和P37口的高低电平来实现开始、暂停和复位功能。
键控子程序的流程框图如图12所示。
五、性能的测试
1、直流稳压电源电路
用电压表测量输出电压,电路及输出电压如图13所示。
图13直流稳压电源电路的测量
2、电路工作情况的测试
首先打开protues中的电路总图,然后将C语言源代码输入到kell软件中,经过编译正确无误后生成.hex文件。
在protues中双击AT89C51单片机,把C语言源代码在kell中生成的.hex文件下载到单片机上。
(1)开始运行电路,按下START键开始计时,正常计时电路如图14所示。
图14计时电路显示
(2)按下STOP键后,电路停止计时,并保留当前计时。
暂停计时电路如图15所示。
图15暂停计时电路显示
(3)按下CLEAR键后,电路停止计时,并将时间清零。
计时清零电路如图16所示。
图16计时清零电路显示
(4)计时到1分59秒99毫秒停止计时,并LED发光报警。
仿真报警电路如图17所示。
图17仿真报警电路显示
六、结论、性价比
结论:
经过测试,可以看到电路能够正常工作,该电路完成了课程设计的基本要求。
实现了如下的设计目的:
①短跑计时器数码显示分、秒、毫秒;
②最大计时限值为1分59秒99,超限值时应可视或可闻报警;
③设计本电路所用的直流电源。
④“键控”应为计时开始/继续(A)、计时停止/暂停(B)和复位/清零(C)
性价比:
整个电路用的芯片和电阻电容都是用了一些在平时做实验中用过的。
电路所用器件价格都比较便宜,在市面上也比较容易买的到,性能基本符合技术要求。
该短跑计时器用单片机作为计时器体积小,成本低,抗干扰能力强,而且计时精准度较高。
在同类产品中性价比也较高。
七.课设体会及合理化建议
体会:
本次课程设计主要是针对以前学过的单片机和C语言编程知识,还有一些液晶显示方面的知识。
通过这次课程设计使我对以前学过的一些知识又重新的复习了一遍,从新复习了很多相关知识,并且对protues软件和kell软件有了比较深入的学习和了解,掌握了AT89C51单片机和LM016L液晶显示器的工作原理,对于我们以后的学习和实践有很大的指导意义。
刚开始做这个课程设计的时候我对这个题目的了解不是很详细,通过查阅书籍收集了一些资料,确定了最初的设计方案,在实际设计过程中,也遇到了许多的问题,但是通过查阅资料后一一解决,有的是自己从中悟出来的经验,最终的结果基本上可以完成题目的要求。
这次课程设计使我真的了解并学到了许多自己在理论课上学不到的东西,尤其是对液晶显示器的学习,完全是一个新的知识,我通过查阅有关书籍,经过三天多的时间终于明白了液晶显示器的动态显示和计数功能的编程。
综合课设使我明白光学习理论知识是不够的,我们还要与实际联系起来才能对知识有更好的了解。
在实际设计过程中,我还意识到了还有一些地方掌握得不是很好,还需在以后的学习和实验中多加练习。
作为电子信息类专业的大学生,学习并掌握单片机知识是很必要的,对以后的学习和工作也有很大帮助。
合理化建议:
(1)希望学校多增加一些单片机的实际应用知识和软件应用方面的书籍,多给与我们学习的机会。
(2)希望实验室能多给我们实际动手的机会,多锻炼自己连接电路的能力,让我们多多提高实际的操作能力。
参考文献
[1]石著.数字电子技术基础[M].北京:
高等教育出版社,2005,93-335。
[2]戴伏生主编.基础电子电路设计与实践[M].北京:
国防工业出版社,2002,102-105。
[3]孙肖子,邓建国主编.电子设计指南[M].北京:
高等教育出版社,2006,98-120。
[4]李银华主编.电子线路设计指导[M].北京:
航空航天大学出版社2005,78-132。
[5]谢嘉奎.电子线路(非线性)[M].北京:
高等教育出版社,2000,120-200。
[6]陈光明等主编.电子技术课程设计与综合实训[M].北京:
北京航空航天大学出版社,2007,158-160。
附录I:
总电路图
附录II:
元器件清单
序号
编号
名称
型号
数量
1
U1
单片机
AT89C51
1
2
LCD1
液晶显示器
LM016L
1
3
V0
交流电流源
220V
1
4
T1
变压器
TRANS
1
5
D2
单向桥式整流
1B4B42
1
6
RP1
排阻
CD4514
1
7
U3A
三输入与门
AND_3
1
8
START、STOP、CLEAR
开关
按钮开关
3
9
U2
三端稳压器
LM7850
1
10
R5
滑动变阻器
10kΩ
1
11
C1、C2、C3
电容
2uF
3
12
C4
电容
470uF
1
13
C5
电容
0.1uF
1
14
Y1
晶振
11MHz
1
15
R1
电阻
0.5KΩ
1
16
R2、R3、R4、
电阻
10KΩ
3
17
D1
二极管
1BH62
1
18
D3
发光二极管
LED
1
源代码:
#include
#include
#defineucharunsignedchar
#defineuintunsignedint
sbitrs=P3^0;//
sbitrw=P3^1;
sbitep=P3^2;
sbitp34=P3^4;
sbitp35=P3^5;
sbitp36=P3^6;
sbitp37=P3^7;
ucharcode
word[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x20};
uchardispbuf[8],h,m,s,counter;
delay(ucharms)
{//延时子程序
uchari;
while(ms--)
{
for(i=0;i<250;i++)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
}
}
lcd_wcmd(ucharcmd)
{//写入指令数据到LCD
while(lcd_bz());
rs=0;
rw=0;
ep=0;
_nop_();
_nop_();
P2=cmd;
_nop_();
_nop_();
_nop_();
_nop_();
ep=1;
_nop_();
_nop_();
_nop_();
_nop_();
ep=0;
}
lcd_wdat(uchardat)
{//写入字符显示数据到LCD
while(lcd_bz());
rs=1;
rw=0;
ep=0;
P2=dat;
_nop_();
_nop_();
_nop_();
_nop_();
ep=1;
_nop_();
_nop_();
_nop_();
_nop_();
ep=0;
}
voidlcd_init()
{//LCD初始化设定
lcd_wcmd(0x38);//
delay
(1);
lcd_wcmd(0x0c);//
delay
(1);
lcd_wcmd(0x06);//
delay
(1);
lcd_wcmd(0x01);//清除LCD的显示内容
delay
(1);
}
voiddisp(uchardispadd)
{
uchartmp;
lcd_wcmd(dispadd);//写命令
tmp=dispbuf[7];
tmp=word[tmp];
lcd_wdat(tmp);//写数据
tmp=dispbuf[6];
tmp=word[tmp];
lcd_wdat(tmp);
tmp=dispbuf[5];
tmp=word[tmp];
lcd_wdat(tmp);
tmp=dispbuf[4];
tmp=word[tmp];
lcd_wdat(tmp);
tmp=dispbuf[3];
tmp=word[tmp];
lcd_wdat(tmp);
tmp=dispbuf[2];
tmp=word[tmp];
lcd_wdat(tmp);
tmp=dispbuf[1];
tmp=word[tmp];
lcd_wdat(tmp);
tmp=dispbuf[0];
tmp=word[tmp];
lcd_wdat(tmp);
}
voidinit()
{
TMOD=0x01;//定时器0工作在方式1
EA=1;
ET0=1;
EX1=1;
TR0=0;
counter=0;
h=0;m=0;s=0;
dispbuf[2]=10;
dispbuf[5]=10;
p34=0;
}
voidnewbuf()
{
dispbuf[0]=s%10;
dispbuf[1]=s/10;
dispbuf[3]=m%10;
dispbuf[4]=m/10;
dispbuf[6]=h%10;
dispbuf[7]=h/10;
}
voidmain(void)
{
init();
lcd_init();
while
(1)
{
newbuf();
disp(0xc0);//11000000
}
}
voidTime0()interrupt1using2//再次强调中断子程序执行时间越短越好
{
TH0=(65536-10000)/256;//定时1ms
TL0=(65536-10000)%256;
s++;
if(s==100)
{
m++;
s=0;
if(m==60)
{
h++;
m=0;
if(h==2)
{
TR0=0;
p34=1;
delay(5000);
}
}
}
}
voidextern1(void)interrupt2
{
if(p35==0&TR0==0)
{
TR0=1;
}//start
if(p36==0&TR0==1)TR0=0;//stop
if(p37==0)
{TR0=0;
s=0;h=0;m=0;
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 短跑 计时器 课程设计