微机原理及应用课程设计NBA倒计时牌设计

上传人:1666****666 文档编号:37338062 上传时间:2021-11-02 格式:DOC 页数:22 大小:580KB
收藏 版权申诉 举报 下载
微机原理及应用课程设计NBA倒计时牌设计_第1页
第1页 / 共22页
微机原理及应用课程设计NBA倒计时牌设计_第2页
第2页 / 共22页
微机原理及应用课程设计NBA倒计时牌设计_第3页
第3页 / 共22页
资源描述:

《微机原理及应用课程设计NBA倒计时牌设计》由会员分享,可在线阅读,更多相关《微机原理及应用课程设计NBA倒计时牌设计(22页珍藏版)》请在装配图网上搜索。

1、 微机原理及应用课程设计说明书PCB图,仿真 语言程序 原理图等,联系153893706课程设计说明书课 程 名 称: 微机原理及应用课程设计 课 程 代 码: 题 目: NBA倒计时牌设计 年级/专业/班: 2009级汽电2班 学 生 姓 名: 学 号: 开 始 时 间: 2012 年 月 日完 成 时 间: 2012 年 月 日课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书(计算书、图纸、分析报告)撰写质量(45)总 分(100)指导教师签名: 年 月 日目 录摘要 31 引言 41.1 目的和意义 4 1.2 任务与分析 42 方案设计 62.1 数码

2、管驱动方案论证 62.2 最终设计方案总体设计框图 63 系统硬件设计 73.1 80C51单片机83.2数码管 103.3 放大电路 103.4 时钟电路 103.5 复位电路 104 系统软件设计 114.1 主程序框图 124.2 中断服务子程序框图 135 系统调试过程 135.1 Keil程序调试 145.2 Proteus仿真调试 15结论 16致谢 17参考文献 18附录A 程序源代码19附录C Proteus仿真和倒计时 20 摘 要 篮球场上我们经常看见倒计时牌,来提醒运动员的进攻时间,以及很多比赛都有倒计时牌,来提醒参赛人员时间,以方便人们合理的安排时间。本设计就是基于这个

3、出发,设计了一个篮球场上得倒计时牌。设计一89C51为核心,采用了共阳的LED数码管构成了显示模块,用三极管来驱动数码管显示数字。同时使用扫描来实现数码管得动态显示。本设计说明书对该系统的硬件电路,工作原理进行了详细的介绍。同时给出了软件设计的流程图和主要源代码。关键词: 89C51单片机 数码管 电阻1 引 言 1.1 问题的提出 随着人类科技文明的发展,人们对倒计时牌的运用越来越多。倒计时牌已成为人们不可或缺的工具,在很多实际应用中它还需要能够实现更多其它的功能。由于篮球这项运动越来越流行,倒计时牌被在篮球中用的越来越多。在这种趋势下,精确的设置倒计时牌越来越重要。本文正是基于这种设计方向

4、,以单片机为控制核心,设计制作一个NBA倒计时牌。 本设计基于单片机技术原理,以单片机芯片AT89C51作为核心控制器,通过硬件电路的制作以及软件程序的编制,设计制作出一个NBA倒计时牌的系统。该时钟系统主要由时钟模块、数码管显示模块、复位模块以及三极管模块组成。系统具有简单清晰的操作界面,可随时进行倒计时。同时,该系统还具有功耗小、成本低的特点,具有很强的实用性。由于系统所用元器件较少,单片机所被占用的I/O口不多,因此系统具有一定的可扩展性。1.2任务与分析 本次设计的系统的控制中心是89C51单片机。首先,在Proteus软件环境中进行硬件电路图的设计。然后在keil软件环境中进行系统的

5、软件编程,并进行程序源文件的编译和调试,最后生成.hex文件。此.hex文件是硬件电路运行实现的源代码来源。把.hex文件加载到AT89C51单片机芯片,然后在Proteus软件环境中运行硬件电路,NBA计时作用就显现出来了。本设计的系统主要由:AT89C51为中央处理芯片,用于数据处理,初值设定。用汇编语言进行编程。本系统可以分为以下3大模块:1、AT89C51模块:用于数据处理,和外围的时钟芯片通信,并控制时钟传输过程,采集时间信息并予以处理。2、数码管显示模块:显示模块采用普通的共阳LED数码管,此模块用于实时的显示时间信息,通过人们视觉的暂留效应,通过数码管扫描,实现动态显示。3、程序

6、:包括单片机控制时钟芯片的接口程序和数码管显示程序。2 系统方案设计2.1 系统设计方案通过查阅相关资料,设计初期共有3个方案供我选择,分别是:(1)采用89C51单片机和74HC164来驱动数码管实现动态显示(2)采用89C51单片机,和电阻来驱动数码管实现动态显示;(3)用共阴极的数码管,通过P0口的上拉电阻来驱动数码管。(1)采用89C51单片机和74HC164来驱动数码管实现动态显示此系统的硬件部分主要是由89C51单片机,74LS48芯片,数码管所组成。该系统相对于第二种方案,电路图要复杂一些,而且程序也相对要复杂些(2)采用89C51单片机,电阻组成的系统 这个方案采用89C51单

7、片机,电阻,数码管等硬件。该系统主要是用电阻来讲相对第一种要简单一些,不光电路图而且程序也相对简单.(3)采用三极管驱动数码管此系统硬件线路比较复杂,相对来说,电路更简单。所以选择第二种。2.2 系统总体框图复位电路时钟电路AT89C51单片机LED显示电路电源电路图1 系统总体框图 当程序启动后,程序进入初始化程序阶段。单片机中断打开,以及将temp赋值。然后程序运行显示temp初值,送入到数码管进行显示,然后一定时器1秒后,temp减一,然后又送入数码管显示,同时定时器又重新装初值,这样往返的间隔一秒实现跳动就完成了NBA的计时牌动态显示进入行显示。当temp减到-1时又将24赋给它,这样

8、就避免了显示其他数。同时将P3.0,和P3.1口送高低电平,来改变位选 ,来控制哪个数码管亮,每个数码管亮一毫秒来实现扫描,利用人眼的暂留效应,就可以将数字动态的显示出来。3 系统硬件设计3.1 80C51单片机3.1.1 80C51单片机介绍80C51是INTEL公司MCS-51系列单片机中最基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它继承和扩展了MCS-48单片机的体系结构和指令系统。 80C51内置中央处理单元、128字节内部数据存储器RAM、32个双

9、向输入/输出(I/O)口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。 此外,80C51还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。80C51有PDIP(40pin)和PLCC(44pin)两种封装形式。其引脚图如图3-1所示:P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST/VPD9RXD P3.010TXD P3.111INT0 P3.212INT1 P3.313T0 P3

10、.414T1 P3.515WR P3.616RD P3.717XTAL218XTAL119VSS20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE/PROG30EA/VPP31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039VCC4080C51 图3-1 80C51单片机引脚图80C51系列单片机都是以8031为核心发展起来的,具有和51系列单片机及基本结构和软件特征,其内部结构如图3-2所示:振荡器及定时电路80C51CPU4K字节ROM128字节RAM2个16位定时器/计数器

11、64K总线扩展控制可编程I/O可编程串行口 图3-2 80C51单片机框图80C51单片机的引脚功能:1、主电源引脚Vss和Vcc。 Vss接地。 Vcc正常操作时为+5伏电源。2、外接晶振引脚XTAL1和XTAL2。 XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。当采用外部振荡器时,此引脚接地。 XTAL2内部振荡电路反相放大器的输出端。是外接晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。3、控制或与其它电源复用引脚RST/VPD,ALE/,和/Vpp。 RST/VPD 当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位在Vcc掉电期

12、间,此引脚可接上备用电源,由VPD向内部提供备用电源,以保持内部RAM中的数据。 ALE/ 正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE 引脚以不变的频率(振荡器频率的)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL电路。 对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(功能)。 外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,在每个机器周期内两次有效。同样可以驱动八LSTTL输入。 /V

13、pp /Vpp为内部程序存储器和外部程序存储器选择端。当/Vpp为高电平时,访问内部程序存储器,当/Vpp 为低电平时,则访问外部程序存储器。对于EPROM型单片机,在EPROM编程期间,此引脚上加21伏EPROM编程电源(Vpp)。4、输入/输出引脚P0.0 - P0.7,P1.0 - P1.7,P2.0 - P2.7,P3.0 - P3.7。 P0口(P0.0 - P0.7)是一个8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。 P1口(P1.0 - P1.7)是一个带有内部提升电阻的8位准双向I/O口。能

14、驱动(吸收或输出电流)四个LSTTL负载。 P2口(P2.0 - P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。 P3口(P3.0 - P3.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动四个LSTTL负载。且具有第二功能。3.1.2 选用80C51单片机原因在课程设计里一个I/O口就可以控制三极管的开关产生不同频率的高低电平,只需要通过单片机的一个定时器和外部中断,显示电路采用由P1口写数据,在设计里面使用的引脚较少,占用的资源也比较少。而且该芯片是以8031为核心,性能价格比高,应用成

15、熟,且对其内部结构较为熟悉,芯片功能够用而且适用,从而选用80C51单片机作为主控芯片。3.1.3 数码管数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管; 按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(

16、COM)的数码管,共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮,当某一字段的阳极为低电平时,相应字段就不亮。 数码管3.3 驱动电路由于数码管的工作电流一般比较大,以致于单片机的I/O口是无法直接驱动的,所以要利用放大电路来驱动,本设计用的上拉电阻来放大电流。电路如图所示:3.4时钟电路本设计采用内部时钟方式的电路。 80C51单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成了一个稳定的自激振荡器。电路中的电容C1和

17、C2典型值通常选择为30pF左右。晶体的振荡频率的范围通常是在1.2MHZ12MHZ之间。晶体的频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。. 时钟电路3.5 复位电路复位电路通常采用上电自动复位和按钮复位两种方式。本次设计采用上电自动复位电路。上电自动复位是通过外部复位电路的电容充电来实现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。图3-8 复位电路4 系统软件设计4.1 LED动态扫描显示方式的设计1、将要显示的数据地址送至P2口,让数码管接收信号。2、通过单片机P3.0,P3.1控制相应的LED位选线,本设计定义的位选线如下表所示:表四 位选线定义表位

18、选线数码管被选中位所代表的定义P3.0NBA计时牌的十位P3.1NBA计时牌的个位4.2 程序设计流程程序设计流程图如图4-1所示:主程序开始调用初始化变量及I/O接口进入主程序数码管开始显示初始值24定时是否达到50ms否程序运行数码管显示temp是进入中断重装定时器初值a自加一次当a达到20的时候,temp减一,然后再向数码管送值图4-1 程序设计流程图4.3 T0中断服务子程序框图开 始a加1,同时重新装初值返 回图4-2 中断服务子程序框图说明 中断服务程序,是在主程序响应中断后,转去执行程序。程序的主要功能是产生定时50ms5 系统调试过程 通过上面的设计,设计已经基本完成。下面主要

19、实现对Keil进行相应的检查和调试,并用Proteus对所设计系统进行仿真用以验证设计的正确性及可行性。5.1 Keil程序调试程序调试结果如图:5.2 Proteus仿真调试在Proteus中建立仿真图:NBA计时牌设计计时牌显示 结 论此次设计过程中,我查阅了一些相关资料,使得我更深入的了解单片机芯片的工作原理以及相关软件、硬件的使用方法。在这一周的时间里,我不仅完成设计所要求的内容,也掌握了AT89C51芯片的具体功能。此外,设计中所涉及到的元器件还有:上拉电阻、数码管等,我通过查阅相关元器件的作用及工作原理。在整个设计过程中,我们不仅能将书本上学到的关于单片机相关的知识与实践相结合,而

20、且还培养了团队合作精神并提高了自学能力。这将对我们今后的实践提供很大的帮助。设计中还让我意识到:理论和实践相结合的重要性。虽然电路看上去比较简单,但实际行动起来将会遇到许多困难。因此,设计过程中要保持一种持之以恒、严谨的学习态度,这样才会在设计过程中及时的发现问题、解决问题。致 谢在彭忆强老师的指导下,我完成了本次课程设计。彭忆强老师是一个拥有专业知识,严谨治学态度,精益求精作风的老师,他的严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。在课程设计里面,他让我重新认识到了专业知识学习的重要性,还使我明白了许多为人处世的道理。本课程设计从选题到完成,都是老师指导下完成。另

21、外,本次设计的完成也离不开各位同学给我的建议和帮助,是他们让我懂得了团队合作的重要性,也让我明白了团队精神的内涵。在此,我谨向彭忆强老师和帮助过我的老师和同学们,表示崇高的敬意和衷心的感谢!参考文献1张毅刚. 新编MCS-51单片机应用设计M. 哈尔滨:哈尔滨工业大学出版社.20042倪志莲,张怡典. 单片机应用技术M.北京:北京理工大学出版社.20073张靖武.单片机系统的protues设计与仿真M.北京:电子工业出版社.2007附录A 程序源代码- 18 -#include#define uint unsigned int#define uchar unsigned charuchar t

22、emp,aa,shi,ge,i,a;sbit dula=P20;sbit wela=P21;uchar code table= 0x3f,0x06,0x5b,0x4f,0x66,0x6D,0x7D,0x07,0x7f,0x6f;void display(uchar shi,uchar ge);void delay(uint z);void init();void main()init();/初始化子程序while(1) if(aa=20) aa=0;temp-;if(temp=-1) temp=24; shi=temp/10;ge=temp%10; display(shi,ge);void d

23、elay(uint z)uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void display(uchar shi,uchar ge)dula=0;P0=tableshi; delay(1); dula=1; wela=0;P0=tablege;delay(1);wela=1; void init() temp=25;TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;void timer0() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;aa+;附录C:proteus图20

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