ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:842KB ,
资源ID:23971983      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23971983.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机控制技术课程设计基于at89s52单片机的比赛记分牌设计本科论文.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机控制技术课程设计基于at89s52单片机的比赛记分牌设计本科论文.docx

1、计算机控制技术课程设计基于at89s52单片机的比赛记分牌设计本科论文计算机控制技术课程设计论文选题名称: 基于AT89S52单片机的比赛记分牌设计 系(院): 电子电气工程学院 专 业: 自 动 化 班 级: 姓 名: 学 号: 指导教师: 学年学期: 2013 2014 学年 第 2 学期 时 间: 2014.05.122014.06.13 摘要: 单片机是把主要计算机功能部件都集成在一块芯片上的微型计算机。它是一种集计数和多接口于一体的微控制器,被广泛应用在智能产品和工业自动化上,而AT89S52单片机是单片机中较为典型和有代表性的一种。本次实习的主要任务是设计一个比赛记分牌,包括硬件设

2、计和软件设计。硬件设计的主要任务是:LED数码管显示、按键控制系统、单片机主控系统及电源模块设计。软件设计包括:实现加分、减分及复位。本文主要介绍了单片机实现记分牌的整个设计流程,采用汇编语言编写程序。本课题选择AT89S52为核心控制元件,设计了日常比赛中用到的记分牌。设计同时引用74LS06专用驱动芯片,解决了共阴码字表向共阳的转换,同时提高了数码管的亮度。本项目设计的计分牌系统,电路简单,成本较低,灵敏可靠,操作方便,具有较高的推广价值。关键词:AT89S51单片机;LED数码管;8255芯片;汇编;记分牌目 录()绪论 1(1)系统原理 11.1设计方案 11.2 系统框图 11.3

3、单片机的时钟电路原理 21.4单片机复位电路工作原理 21.5 单片机晶振电路工作原理 31.6显示数码管原理 5(2)硬件设计 72.1 按键电路的设计 72.2 键盘显示电路的设计 82.3芯片介绍 9AT89S51单片机引脚 9(3) 软件设计 123.1程序框图 12(4)设计结果 144.1软件调试 144.2设计结果 14(5)课程小结 155.1课程分析 155.2小结 15(6)附录 16 ()绪论单片机是一个单芯片形态,面向控制对象的嵌入式应用计算机系统.它的出现及发展使计算机技术从通用型数值计算领域进入到智能化的控制领域。 由于本次设计的简单篮球记分牌体积小,故要求其控制器

4、体积更小以便能嵌入其结构之中。单片机以微小的体积和编程的灵活性而产生多种控制功能,完全可以满足需求。可以适应不同规则下操作。现在大多数比赛活动中都会遇到需要向观众和选手展示选手得分的情况,需要用到比赛记分牌。在目前的市场上,普通计分牌系统都需要几百块,价钱比较高。本项目设计的记分牌系统,电路简易,灵敏可靠,具有一定的使用价值和竞争价值。(1)系统原理1.1设计方案计分牌主要用途是展示选手的得分情况,当选手得分时记分牌加上相应的分数,当选手失分时减去相应的分数。根据项目要求进行系统设计。基于AT89S52单片机比赛记分牌,采用12MHz晶振。项目具体要求如下: (1) 得分的时候加上相应的分数

5、(2)失分时减去相应的分数。 (3) 计分范围设为0F。 (4)分别记录两个队伍的分数1.2 系统框图 基于AT89S52单片机比赛计分牌由显示模块、按键模块、单片机主控模块、电源模块等组成,系统框图如图1-1所示:图1-1 基于AT89S51单片机比赛记分牌体统框图1.3 单片机的时钟电路原理 单片机本身是一个复杂的同步时序系统,为保证同步工作方式的实现,单片机必须有时钟信号,以使其系统在时钟信号的控制下按时序协调工作。单片机的时钟电路由振荡电路和分频电路组成。其中震荡电路由反相器以及并联外接的石英晶体和电容构成,用于产生振荡脉冲。而分频电路则用于把振荡脉冲分频,以得到所需要的时钟信号。如图

6、1-2图 1-2 单片机的时钟电路1.4单片机复位电路工作原理复位是单片机的初始化操作,其作用是使CPU中的各个部件都处于一个确定的初始状态,并从这个状态开始工作。当单片机的ALE及 两脚输出高电平,RST引脚高电平时,单片机复位。单片机的复位电路有上电复位和手动按钮复位两种形式,RST/VPD端的高电平直接由上电瞬间产生高电平则为上电复位;若通过按钮产生高电平复位信号称为手动按钮复位。在实际应用系统中,有些外围芯片也需要复位,如果这些复位端的复位电平要求与单片机的要求一致,则可以与之相连。复位后,P0P3四个并行接口全为高电平,其它寄存器全部清零,只有SBUF寄存器状态不确定。目前,在单片机

7、体统中共使用4种类型的复位电路,分别为:积分型电路、微分型电路、比较器型和看门狗型。其中前三种是在芯片外面用分立元件或集成电路芯片搭建的,而最后一种位于芯片内部,是单片机芯片的一部分。对于片外复位电路,无论哪种类型,加电复位和手动复位是必不可少的基本功能。如图1-3所示:图1-3复位原理电路1.5 单片机晶振电路工作原理每个单片机系统里都有晶振,全程是叫晶体震荡器,在单片机系统里晶振的作用非常大,他结合单片机内部的电路,产生单片机所必须的时钟频率,单片机的一切指令的执行都是建立在这个基础上的,晶振的提供的时钟频率越高,那单片机的运行速度也就越快。晶振用一种能把电能和机械能相互转化的晶体在共振的

8、状态下工作,以提供稳定,精确的单频振荡。在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。高级的精度更高。有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。 晶振的作用是为系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。 晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。下面具体的介绍一下晶振的作用以及原理,晶振一般采用如图1-4a的电容三端式(考毕兹) 交流等效振荡电路;实际的晶振交

9、流等效电路如图1-4b,其中Cv是用来调节振荡频率,一般用变容二极管加上不同的反偏电压来实现,这也是压控作用的机理;把晶体的等效电路代替晶体后如图1-4c。其中Co,C1,L1,RR是晶体的等效电路。图1-4 晶振电路及其等效槽路分析整个振荡槽路可知,利用Cv来改变频率是有限的:决定振荡频率的整个槽路电容C=Cbe,Cce,Cv三个电容串联后和Co并联再和C1串联。可以看出:C1越小,Co越大,Cv变化时对整个槽路电容的作用就越小。因而能“压控”的频率范围也越小。实际上,由于C1很小(1E-15量级),Co不能忽略(1E-12量级,几PF)。所以,Cv变大时,降低槽路频率的作用越来越小,Cv变

10、小时,升高槽路频率的作用却越来越大。这一方面引起压控特性的非线性,压控范围越大,非线性就越厉害;另一方面,分给振荡的反馈电压(Cbe上的电压)却越来越小,最后导致停振。通过晶振的原理图你应该大致了解了晶振的作用以及工作过程了吧。采用泛音次数越高的晶振,其等效电容C1就越小;因此频率的变化范围也就越小。微控制器的时钟源可以分为两类:基于机械谐振器件的时钟源,如晶振、陶瓷谐振槽路;RC(电阻、电容)振荡器。一种是皮尔斯振荡器配置,适用于晶振和陶瓷谐振槽路。另一种为简单的分立RC振荡器。用万用表测量晶体振荡器是否工作的方法:测量两个引脚电压是否是芯片工作电压的一半,比如工作电压是51单片机的+5V则

11、是否是2.5V左右。另外如果用镊子碰晶体另外一个脚,这个电压有明显变化,证明是起振了的。晶振的类型有SMD和DIP型,即贴片和插脚型 。其中DIP:常用尺寸有HC-49U/T,HC-49S,UM-1,UM-5,这些都是MHZ单位的。1.6显示数码管原理数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发

12、光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另

13、外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态

14、显示是一样的,能够节省大量的I/O端口,而且功耗更低。下图1-5分别为共阳极和共阴极数码管引脚图:图1-5左为共阳极 右为共阴极引脚结构(2)硬件设计2.1 按键电路的设计本次实验用了两个按键电路:加一电路和减一电路。两个按键电路都是通过手动按下按键拉低电平来分别实现相应的加减功能。按键电路接线图如图2-1所示:图2-1 按键电路连线图2.2 键盘显示电路的设计数码管采用共阳极的接法,8个发光二极管与8255芯片的B口相连,以B口控制段选。Com端与8255芯片的A口相连,以此控制位选。具体接线图如图2-2所示:图2-2 显示电路连线图2.3芯片介绍AT89S51单片机引脚功能特性:AT89S

15、51 是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非 易失性存储器技术制造,与工业80C51产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至

16、0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。8位微控制器 8K字节在系统可编程FLASH AT89S52P0口。其引脚结构如图2-3:图2-3 AT89S51引脚图8255芯片引脚8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。 其各口功能可由软件选择,使用灵活,通用性强。8255可作为单片机与多种外设连接时的中间接口电路。8

17、255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。同时必须具有与外设连接的接口A、B、C口。由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。其引脚图如图2-4所示:图2-4 8255引脚图2.4芯片接口图 根据分析设计,设计出基于AT89S51单片机的比赛计分牌电路原理图如图2-5所示。电源电路为单片机以及其他模块提供标准5V电源。晶振模块为单片机提供时钟标准,使系统各部分能协调工作。复位电路为单片机提供复位功能。单片机作为主控制器,根据输入信号对系统进行相应的控制。数码管

18、显示选手当前的得分。按键设置模块用来刷新选手的得分,当选手得分或者失分时可以通过这两个按钮对选手分数重新设置。图2-5 比赛记分牌的原理图(3) 软件设计3.1 程序框图单片机开始运行时显示选手0分,数码管显示0,主程序循环调用显示选手得分,见扫描程序循环执行,当判断有键按下时,跳转子程序程序,执行左右记分牌的加减分程序,并在数码管显示。具体如图3-1显示: 图3-1 程序流程图(4)设计结果 4.1 软件调试单片机系统的硬件调试和软件调试是不能分开的,许多硬件错误时在软件调试的过程中被发现和纠正的。但通常是先排除明显的硬件故障以后,再和软件结合起来调试以进一步排除故障。可见硬件的调试是基础,

19、如果硬件调试不通过,软件设计则无从做起。但是由于本次课程设计时使用的实验箱子内部的接线是已经接好的,所以硬件调试部分只要保证通讯口连接正常,模块地址连接无误即可。而软件调试时由于此次程序设计跳转子程序较多且按键标志FLAG的标志置位比较复杂,所以执行程序时采用单步跟踪跳转,这样才能即使发现具体的设计不合理的地方并进行修改。另外,具体调试时分模块进行,如显示模块,按键模块,加一减一模块等,各模块均调试正常后再进行总体的调试。4.2 设计结果调试完毕后,运行程序所得结果如图4-1所示:(5)课程小结5.1 课程分析此次课程设计的课题由于实验箱子内部接线电路的限制,与键盘和显示管位选脚相连的8255

20、的A口需要一直在输入输出口之间转换,所以无法保持显示灯管常亮。一开始的时候并不是很了解这个情况,所以我们尝试让显示子程序循环跳转的方式解决,但是发现这样虽然可以使灯管常亮,但是无法与键盘扫描子程序衔接。所以只能退而求其次,按键的时候显示管亮。另外一个问题是按键后加一减一的锁定,不设标志位时,按下键后会持续的加一和减一,所以我们后来想了个办法,就是给加一或减一的程序设定一个前提条件,利用FLAG的高低电平来控制。最后经过整体的调整,能够实现按一下键,加/减一个数的功能。软件设计的过程中,还碰到过一些程序跳转返回顺序的问题,但是都通过单步跟踪执行的方法成功解决了。5.2 小结通过四周的努力,本次课

21、程设计任务终于能够成功,系统部分功能能够实现。通过设计调整软件能够实现基本计分功能。该设计通过制作记分牌,将几个模块有机融合起来,对使用单片机设计记分牌进行了分析设计,并介绍了基于单片机比赛记分牌的硬件组成,功能模块清晰,编程时,根据硬件来分模块编程。当然这中间也还是有许多不足之处,一开始电路不是很稳定,尤其是数码管部分,最开始是不亮,然后是按设计要求应是每次加一或减一,有时也会出现乱码或加减混乱的情况,后来通过查找资料,不断调试,请教老师才将问题一个个解决。这次的单片机课程设计使我收益颇丰,最终完成这个简易的比赛记分牌,对整个的过程更加熟悉,对其中的原理更加清晰。课程设计是本科学习阶段很有价

22、值的理论与实践相结合的机会。这次比赛记分牌的设计提高了我运用所学的专业基础课来解决实际问题的能力,看到了单片机应用的实际价值。最后,此次单片机课程设计过程使我们认识到自身知识及能力的薄弱,更让我们知道实践的重要性。在以后的学习过程中,我们会更加努力学习单片机的相关知识和应用,真正能够运用单片机组成的微控制系统解决各种实际的问题。(6)附录程序代码C8255 EQU 0F22BH ;8255命令口地址P8255A EQU 0F228H ;8255 PA口地址P8255B EQU 0F229H ;8255 PB口地址P8255C EQU 0F22AH ;8255 PC口地址COUNT EQU 30

23、HCOUNT2 EQU 60H NUM EQU 40HFLAG EQU 50HYFLAG EQU 70H ORG 0000H LJMP START ORG 0100HSTART: MOV SP,#60H MOV FLAG,#00H MOV YFLAG,#00H MOV COUNT,#00H MOV COUNT2,#00H MOV R2,#0FEH ;位码初始值 MOV DPTR,#C8255 MOV A,#90H ;PC口输出,PA输入,PB口输出 MOVX DPTR,A MOV DPTR,#P8255C MOV A,#00H MOVX DPTR,AKB_DIS: LCALL RD_KB ;读

24、键子程序 MOV A,YFLAG JNZ YKB_XSHIKB_XSHI: MOV DPTR,#C8255 MOV A,#90H ;PC口输入,PA,PB口输出 MOVX DPTR,A MOV DPTR,#SMBIAO LCALL XSHI ;显示子程序 LCALL KB_DIS ;循环扫描 XSHI: MOV A,COUNT ANL A,#0FH MOVC A,A+DPTR MOV DPTR,#P8255B MOVX DPTR,A MOV A,R2 MOV DPTR,#P8255A MOVX DPTR,A LCALL DEL RET YKB_XSHI: MOV DPTR,#C8255 MOV

25、 A,#90H ;PC口输入,PA,PB口输出 MOVX DPTR,A MOV DPTR,#SMBIAO LCALL YXSHI ;显示子程序 LCALL KB_DIS ;循环扫描 YXSHI: MOV A,COUNT2 ANL A,#0FH MOVC A,A+DPTR MOV DPTR,#P8255B MOVX DPTR,A MOV A,R2 MOV DPTR,#P8255A MOVX DPTR,A LCALL DEL RET DEL: MOV R7,#10HDEL1: MOV R6,#200HDEL4:MOV R5,#250H DJNZ R5,$ DJNZ R6,DEL4 DJNZ R7,

26、DEL1RETRD_KB: MOV DPTR,#C8255 MOV A,#90H ;PC口输出,PA输入,PB口输出 MOVX DPTR,A MOV A,#02H ;键盘扫描第一行 MOV DPTR,#P8255C MOVX DPTR, A MOV DPTR,#P8255A MOVX A,DPTR MOV NUM,A CPL A JZ UNFLAG UFLAG: MOV A,NUM CJNE A,#0FFH,KEY_L0 RETUNFLAG: MOV FLAG,#00H JMP UFLAGKEY_L0: LCALL DELAY22 ;延时消抖 ;MOV DPTR,#P8255B ;读键值 MO

27、V DPTR,#P8255A MOVX A,DPTR CPL A MOV NUM,A ANL A,#01H JNZ JIAYI MOV A,NUM ANL A,#02H JNZ JIANYI MOV A,NUM ANL A,#40H JNZ YJIAYI MOV A,NUM ANL A,#80H JNZ YJIANYI LJMP KB_DIS JIAYI: MOV A,FLAG JZ JIA LJMP KB_XSHI JIA: INC COUNT MOV YFLAG,#00H MOV FLAG,#01H LJMP KB_XSHI JIANYI: MOV A,FLAG JZ JIAN LJMP

28、KB_XSHIJIAN: DEC COUNT MOV YFLAG,#00H MOV FLAG,#01H LJMP KB_XSHIYJIAYI: MOV A,FLAG JZ YJIA LJMP YKB_XSHI YJIA: INC COUNT2 MOV YFLAG,#01H MOV FLAG,#01H LJMP YKB_XSHI YJIANYI: MOV A,FLAG JZ YJIAN LJMP YKB_XSHIYJIAN: DEC COUNT2 MOV YFLAG,#01H MOV FLAG,#01H LJMP YKB_XSHIDELAY: MOV R0,#0H ;延时20MS子程序DELAY

29、0: MOV R1,#27H DJNZ R1,$ DJNZ R0,DELAY1 RET DELAY1: MOV R0,#0H ;延时DELAY11: MOV R1,#00H DJNZ R1,$ DJNZ R0,DELAY11 RET DELAY2: MOV R0,#0H ;延时DELAY22: MOV R1,#20H DJNZ R1,$ DJNZ R0,DELAY22 RET SMBIAO:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;0,1,2,3,4,5,6,7 DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H ;8,9,A,B,C,D,E,F END参考文献1 赵鑫,蒋亮,齐兆群等.数字电路设计.北京:机械工业出版社,20052 苏家健,曹柏荣,汪志锋.单片机原理及应用技术. 北京:高等教育出版社,20033 李朝青. 单片机原理及接口技术. 北京:北京航天航空大学出版色,20014 胡汉才. 单片机原理及其接口技术. 北京:清华大学出版社,2004.5 潭浩强.C语言程序设计.北京:清华大学出版社.20056 李华,李东.MCS51/98系列单片机原理与应用.北京:机械工业出版社.19977 谢自美等.电子线路设计、实验、测试.北京:华中科技大学出版社.2002

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1