已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
淮阴师范学院毕业论文(设计)38摘 要:该论文设计是采用单片机at89c51作为本设计的核心元件。利用8段共阳led作为显示器件。在此设计中共接入了10个8段共阳led显示器,其中计分器使用4个led显示器记录甲队、乙队的分数,每队2个led显示器显示范围可达到099分;计时器使用4个led显示器则用来记录赛程时间,其中2个用于显示分钟,2个用于显示秒钟。赛程计时采用倒计时方式,即比赛前将时间设置为12:00,比赛开始时启动计时,直至计时到00:00为止;最后2个led显示器则是用来显示24秒倒计时。关键词:at89c51,篮球,计时器,计分器abstract:the design is designed by single chip microcomputer at89c51 as the core component.using 8 with yang led as a display device.in the design of the communist party of china access to 10 8 with yang led display,one timer uses 4 led display record team a and b team scores,each team 2 led display shows the range can reach 0 99 points;timer with four led display is used to record the race time, among them 2 is used to display minutes, 2 is used to display seconds.schedule timing using the countdown, namely before the game set time to 12:00, game start timing at the beginning, until time to 00:00;the last two led display is used to display the countdown 24 seconds.keywords:at89c51,basketball, timer,score indicator目 录第一章 绪论 41.1 设计背景及意义41.2 设计的目的41.3 设计要求5第二章 系统硬件介绍 62.1 单片机概述 62.2 at89c51性能介绍6 2.3 led显示器介绍 8第三章 硬件电路设计 123.1 系统构成框图设计 18 3.2 振荡电路设计 183.3 计时计分led显示器设计 193.4 控制键盘设计 22 第四章 软件电路设计方案 224.1 系统软件总流程图 23 4.2 篮球计时器流程图 234.2 篮球计分器流程图 235 仿真与调试 255.1 软件介绍 25 5.2 功能仿真 25结论 30 参考文献31 致谢32 附录a 硬件电路整体图 33 附录b 软件程序 34 基于at89c51的篮球计时、计分器设计1 绪论1.1设计背景在日常生活中单片机将我们的生活变的更加智能,许多繁琐的系统如果改由单片机进行设计,便能使系统更简洁、更智能。给人们的生活带来更大的便捷。随着现在技术哥发展,智能化越来越普遍,越来越给人们的生活带来改变。单片机与串口通信的结合更多地应用到各种系统中已成一种趋势。此次设计就是单片机和篮球的完美结合。现如今篮球是一项风靡全球运动,特别是美国职业篮球的球星们更是众多篮球迷所喜爱的与动员。很多人很熟悉篮球,也对篮球的计时计分有一点的了解。篮球是两个队在规定的时间内得分多少来决定胜负的,这就需要有计时计分器记录下每队的得分以及所花时间。因此篮球计时计分器就应运而生。或许许多人有着用翻牌器计分的记忆,但是根据目前高水平的篮球要求,需要更精确更及时的计时计分。以便于观众能更好的欣赏比赛,能更好的感受比赛紧张的气氛。于是就有了应用at89c51设计的篮球计时计分器。1.2设计目的当今社会随着单片机在各个领域的广泛应用,许许多多用单片机做核心的球赛计时计分系统也随之而产生,例如用at89c51单片机控制lcd液晶显示器计时计分器,还有使用单片机控制led七段显示器计时计分器等。本次设计采用的是由at89c51控制led七段数码管作显示的篮球比赛计时计分器。该系统具有比赛时间设置,比赛时间暂停,甲乙双方比分累加,24秒倒计时等功能。它具有价格低廉,性能稳定,操作方便并且易于携带等特点。广泛适合各类学校或者小型团体作为赛程计时计分 1通过本次基于c51系列篮球计时计分器的设计,可以了解、熟悉有关单片机开发设计的过程,并加深对单片机的理解和应用以及掌握单片机与外接设备的一些方法和技巧,这主要表现在以下一些方面:(1) 篮球赛计时计分系统包含了8051系列单片机的最小系统的构成,同时在此基础上扩展了一些外接设备。(2) 可以了解到led显示器的结构、工作原理以及这种显示器的接口实例与具体连接与编程方法。(3) 怎样对并行i/o接口进行扩展。1.3设计要求(1)篮球计时计分器功能a. 记录比赛双方比分,可进行加减分b. 交换场地时比分交换c. 倒计时形式记录比赛时间d. 倒计时记录单次进攻时间(2)设计硬件电路图。(3)画出程序流程图、编写程序、完成编译。(4)硬件电路进行连接、调试、并完成proteus仿真。第二章 系统硬件介绍2.1单片机概述单片机是把一个计算机系统集成在一块半导体芯片上,其目的在于计算机微型化和提高系统的可靠性。单片机的内部硬件结构和指令系统主要是针对自动控制应用而设计的,所以单片机又称微控制器mcu(micro controller unit)。单片机由运算器,控制器,存储器,输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。单片机是通过内部的总线把计算机的各个主要部分连接到一个机构,其内部包括三种总线:地址总线、控制总线和数据总线2。单片机的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择32.2 at89c51性能介绍mcs-51是指由美国intel公司生产的一系列单片机的总称,这一系列单片机包括了很多品种,如8031,8051,8751等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼mcs51系列单片机。at89c51是一个低电压,高性能cmos 8位单片机,片内含4k 字节的可反复擦写的只读程序存储器和128 bytes的随机存取数据存储器(ram),器件采用atmel公司的高密度、非易失性存储技术生产,兼容标准mcs-51指令系统,内置功能强大的微型计算机的at89c51提供了高性价比的解决方案。at89c51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(i/o)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口;它主要由中央处理器,控制器,存储器,i/o接口,定时器/计数器, 中断控制系统,内部总线等部分组成。如图2-1所示 2-1 at89c51引脚图 主要特性:兼容mcs-51的相关指令系统4k字节可擦写存储器32个i/o接口8*128bit位内部ram2个16位定时/计数器工作时钟频率0-24mhz5个中断源可供编程使用的串行口管脚说明:vcc:供电电压。gnd:接地。p0口:p0口为一个8位漏级开路双向i/o口,每脚可吸收8ttl门电流。当p1口的管脚第一次写1时,被定义为高阻输入。p0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在fiash编程时,p0 口作为原码输入口,当fiash进行校验时,p0输出原码,此时p0外部必须被拉高。p1口:p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出4ttl门电流。p1口管脚写入1后,被内部上拉为高,可用作输入,p1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在flash编程和校验时,p1口作为第八位地址接收。 p2口:p2口是一个8位双向输入/输出端口,拥有内部上拉电阻。p2端口输出的缓冲器能够驱动4个ttl逻辑电平。当p2端口写“1”时,内部上拉电阻拉高端口,这种状态下p2端口可以作为输入端口使用。在被作为输入端口使用时,被外部拉低的引脚因为内部电阻的原因,从而输出电流。当访问外部程序存储器或使用16位地址的外部数据存储器(例如执行movx dptr)时,p2口送出高8位地址数据。在此应用中,p2口运用很强的内部上拉发送“1”。当使用8位地址(如movx ri)来访问外部数据存储器时,p2端口输出p2锁存器的内容。因此,当flash编程和校验时,p2口也会同时接收高8位地址字节和大量的控制信号5。p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。当p3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,p3口将输出电流(ill)这是由于上拉的缘故。 p3口也可作为at89c51的一些特殊功能口,如下表所示:口管脚 备选功能 p3.0 rxd(串行输入口) p3.1 txd(串行输出口) p3.2 /int0(外部中断0) p3.3 /int1(外部中断1) p3.4 t0(记时器0外部输入) p3.5 t1(记时器1外部输入)p3.6 /wr(外部数据存储器写选通)p3.7 /rd(外部数据存储器读选通) p3口同时为闪烁编程和编程校验接收一些控制信号。rst:复位输入。当振荡器复位器件时,要保持rst脚两个机器周期的高电平时间。ale/:地址锁存控制信号(ale)在访问外部程序存储器和数据存储器时,锁存地址的低8位输出脉冲。当flash编程时,引脚也被用来作为编程输入脉冲。在一般情况下,ale是以时钟振荡频率的六分之一输出固定的脉冲信号,能够用来作为外部定时器或时钟进行使用6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ale脉冲。如想禁止ale的输出可在sfr8eh地址上置0。此时, ale只有在执行movx,movc指令是ale才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ale禁止,置位无效。psen:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/psen有效。但在访问外部数据存储器时,这两次有效的/psen信号将不出现。 ea/vpp:当/ea保持低电平时,则在此期间外部程序存储器(0000h-ffffh),不管是否有内部程序存储器。注意加密方式1时,/ea将内部锁定为reset;当/ea端保持高电平时,此间内部程序存储器。在flash编程期间,此引脚也用于施加12v编程电源(vpp)。xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。xtal2:来自反向振荡器的输出。3 振荡器特性:xtal1和xtal2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,xtal2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4 芯片擦除整个perom阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ale管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,at89c51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,cpu停止工作。但ram,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存ram的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止 6。5.掉电模式在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内ram和特殊功能寄存器的内容在终止掉电模式前被冻结。推出掉电模式的唯一方法是硬件复位。复位后将重新定义全部特殊功能寄存器但不改变ram中的内容,在vcc恢复到正常工作电平前,复位应无效,且必须保持一定时间以使振荡器重新启动并且稳定的工作 5。表2-3 外部引脚状态表模式空闲模式空闲模式掉电模式掉电模式程序存储器内部外部内部外部ale1100/prog1100p0数据浮空数据浮空p1数据数据数据数据p2数据数据数据数据p3浮空浮空数据数据6.程序储存器的加密at89c51可使用对芯片上的三个加密位lb1、lb2、lb32进行编程(p)或者不进行编程(u)。当加密位lb1被编程时,在复位期间,ea断的逻辑电平被采样并锁存,如果单片机上电后一直没有服位,则锁存起的初始值是一个随机数,这个随机数会保存到真正复位为止 5。2.3显示器介绍显示器是最常用的输出设备,其种类繁多,但在单片机系统设计中最常用的是发光二极管显示器(led)和液晶显示器(lcd)两种。由于这两种显示器结构简单,价格便宜,接口容易实现,因而得到广泛的应用。液晶显示器分很多种类,按显示方式可分为段式,行点阵式和全点阵式。段式与数码管类似,行点阵式一般是英文字符,全点阵式可显示任何信息, 如汉字、图形、图表等 。两者之间的区别:(1)二极本身发光, 液晶本身不发光,只是透射光。 (2)二极管体积大,图像质量一般,适合作室外大屏幕,价格较低。液晶成本较高,面积无法做得很大,但图像质量很好,适合做显示器。 (3)二极管耗电大,液晶耗电小。(4)二极管图像刷新率低,液晶的高 led显示器又称为数码管,led显示器由8个发光二极管组成。中7个长条形的发光管排列成“日”字形,另一个点形的发光管在显示器的右下角作为显示小数点用,它能显示各种数字及部份英文字母。led显示器有两种不同的形式:共阳极led显示器和共阴极led显示器如图2-2所示 。本次设计使用的是共阴极led显示器。图2-2 共阴与共阳极led显示器结构led显示器有两种方式:一是静态显示;二是动态显示。在本次设计中,采用的是静态显示。静态显示和动态显示各有各的有点;led的静态显示优点是编程容易、管理简单,但是静态显示所要占的i/o口资源很多;而动态显示所占用资源较少,因此在显示的led点较多的情况下,一般都采用动态显示方式。在本次设计中,采用的是静态显示。这种电路的优点在于:在同一时间可以显示不同的字符;但缺点就是占用端口资源较多。从下图可以看出,每位led显示器需要单独占用8根端口线,因此,在数据较多的时候,往往不采用这种设计,而是采用动态显示方式 4。led数码显示器如图2-3所示 2-3 7段led数码管第三章 硬件电路设计 3.1系统构成框图 本次设计主要基于at89c51单片机,主体的计时计分器系统框图如图3-1所示。计分显示电路晶振电路 89c51计时显示电路控制键盘 图3-1系统整体框图本系统采用单片机at89c51作为本设计的核心元件。利用7段共阴led作为显示器件。在本次设计中,共接入十七段共阴led显示器,其中4个用于记录 甲、乙两队的分数,每队2个led显示器分数范围可达到099分,足够满足赛程需要。另外4个led显示器则用于记录赛程的时间,分别用于记录分钟和秒钟。还有两个led显示器用于24秒倒计时的显示。赛程计时采用倒计时方式。即比赛前将时间设置为10分钟,比赛开始时启动计时,直至计时到零为止。其次键盘共设置了20个开关,0-7号键盘为计分键盘分别控制甲队、乙队得分,为防止出现分加错的情况,特别设置了3、7号开关为减分按钮。8、9按钮分别是比分清零和比分切换按钮。a-f按钮则是控制时间及比赛开始。复位按钮控制复位情况。24秒倒计时的三个开关分别控制24秒倒计时的开始、暂停、复位。3.2各部分设计方案3.2振荡电路本次设计要使用到at89c51单片机的时钟振荡功能。at89c51中有一个用于构成内部震荡器的高增益反相放大器,引脚xtal1和xtal2分别是该放大器的输入和输出端。这个放大器与作为反馈元件的片外石英晶体或者陶瓷谐振器一起构成自激振荡器7。at89c51的时钟主要分为两种方式:第一种是片内时钟振荡,另一种是外部时钟方式。本次设计采用的是第一种片内时钟振荡方式,通过在18和19端口外接石英晶体和振荡电容组成,这样既可产生本设计所需的时钟。振荡电路如图3-2所示 图3-2 时钟振荡电路3.3计时计分led显示器设计本次设计的核心就是采用at89c51设计出一整套计时计分器,以满足与篮球比赛的需要。本次设计的led显示器采用的是静态驱动方式。静态驱动,就是每一个显示器都要占用单独的具有锁存功能的i/o接口用于笔划段字形代码。这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码。这种电路的优点在于:在同一时间可以显示不同的字符;但缺点就是占用端口资源较多 。要使led数码管要能够正常显示,需要用驱动电路驱动数码管的各个段码,由此显示需要的数字和字母,所以按照led不同的驱动方式,可以将其分为静态模式和动态模式两种。(1)动态显示驱动:使用数码管动态显示界面的显示方式,已成为在单片机的应用中最广泛的一种,动态驱动就是将每个数码管的8个显示的笔划“a,b,c,d,e,f,g,dp”这几个引脚的同名端相连接,同时给数码管公共极com增加了位元件选通控制电路,该位元件选通通过各自的独立输入/输出线控制。若单片机依次输出了字形码,则所有的数码管必会接收到同样的字形码。但是,单片机对于位元件选通电路的控制则决定了最终是哪个数码管能够显示出字形。因此,我们若想所需的数码管灯亮,则只要打开所需对应的数码管的选通控制,而不打开相应选通控制的数码管就不会发光。动态驱动就是通过分时方法轮流控制各个led数码管的com端口,从而促使每个数码管轮流的接受控制并显示。数码管在依次显示的过程当中,会产生1ms2ms的点亮时间,因为每个人都存在视觉暂留的现象,加之受到发光二极管余辉效应的影响和信号的扫描达到一定足够的速度,所以,人会接收到稳定的显示信息。(2)静态显示驱动:直流驱动被称为静态驱动。所谓的静态驱动就是其每一个的段码都必须要有一个单片机的输入/输出端口完成驱动。编程简单是静态驱动的优点,它的显示亮度非常高,占用i/o口多是它的缺点,假设想要驱动5个数码管都进行静态显示,那么就需要根i/o口来驱动数码管,因为一个89c52单片机只有32个i/o口,所以,在实际应用时则需要用利用译码器进行驱动,因而对于硬件电路来说则提高了它的复杂度。计时计分器电路分别如图3-3、3-4所示 图3-3计时显示器电路 图3-4计分显示器电路3.4控制键盘器控制键盘由16个按钮组成,主要分为两个部分,第一部分是比分控制键盘,另一部分是时间控制键盘。比分控制键盘由0-7号按钮组成,分别按下02号按钮甲队分别加一分、两分和三分,3号按钮为减分按钮,防止分数加错,每按下一次甲队减一分。4-6号按钮控制的是乙队的加一分、两分和三分,7号按钮同样是减分按钮每按下一次,乙队减一分。按下8号键,双方比分清零;中场结束后开始下半场比赛时需要交换比赛双方比分,此时按下9号按钮即可。a-f按钮则是比赛控制按钮及时间控制按钮。按钮a和按钮b分别控制时间的加一和减一,时间的加减只能再时间停止时进行。按下按钮c整个计时计分器启动,时间显示器显示10:00的单节比赛倒计时,比分显示器显示甲乙两队初始比分0:0。当比赛需要暂停时按下d按钮,单节比赛结束后按下e按钮则时间恢复为10:00。键盘控制电路如图3-5所示 3-5控制键盘图第四章 软件设计方案在单片机应用系统的开发过程中,主要采用的有汇编语言和c语言。汇编语言比c语言繁琐,但是汇编语言能更充分的发挥指令系统的功能和效率,可以获得最简练的目标程序。而c语言的应用最为广泛,c语言能直接对计算机的硬件进行操作,而且语言灵活、程序结构良好、数据类型及运算符丰富、代码效率高、可移植性好。篮球计时计分器总流程如图开始i/o初始化比赛开始计时器显示记分器显示n时间归零y报警器报警比赛结束 4-1 系统整体流程图接通电源后,系统进行初始化处理,系统开始运行,检测比赛开始按钮是否按下,比赛开始后,时间倒计时随即进行。双方比分增加,时间结束后报警器报警,比赛结束。计时器示流程图开始比赛开始计分器显示倒计时开始n时间为0y 报警器报警 结束比赛开始后,计时器则显示单节比赛时间10:00,倒计时开始,当比赛时间减到0时,报警器发出报警声。部分倒计时主要程序如下:th0=0x4c; /50ms延时初值tl0=0x00;t+;if(t=20) /50ms走20次刚好1s,1s时间到减1操作t=0;miao-;if(miao=-1)fen-; /当59s减完,分减1miao=59;if(fen=-1)fen=0; /分清零miao=0; /秒清零beep=0; /时间停止,蜂鸣器响计分器显示流程图 开始 计分显示nnn乙队加分乙队加分甲队减分甲队加分 n甲队加分 yyyy乙队减分显示乙队加分显示甲队减分显示甲队加分显示n 比分切换y 比分切换显示n比分清零y 比分清零显示 结束比赛开始后,比分显示器显示00:00,此后甲队和乙队比分增加,中场休息后,两队交换场地,比分显示也随之交换,比赛结束后,双方比分清零。部分加分清零程序如下:加分程序(部分):dalay(5);if(temp=0xde)a=a+ /甲队比分加1if(a=100)a=99;diapaly1(a);比分交换程序:delay(5);if(temp=0xdb)e=a;f=c;a=f;dispaly1(a);c=e;dispaly2(c); /两队比分切换第五章 仿真与调试单片机应用的仿真和调试主要从硬件及软件方面进行,在本次设计的篮球计时计分器中我主要使用的是keil和proteus isis软件。5.1 软件简介5.1.1 keil软件简介keilc51是基于80c51单片机内核,由德国keil software公司研制的一款实用、智能的c语言软件开发系统。与汇编相比,c语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。keilc51已被完全集成到uvision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uvision2 ide可为它们提供单一而灵活的开发环境。5.1.2 proteus 简介proteus是世界上著名的eda工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到pcb设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、pcb设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、avr、arm、8086和msp430等,并持续增加其他系列处理器模型。在编译方面,它也支持iar、keil和mplab等多种编译器。proteus软件具有其它eda工具软件的功能:原理布图、pcb自动或人工布线、spice电路仿真等proteus又具有互动的电路仿真、仿真处理器及其外围电路的革命性特点。5.2 仿真结果完成硬件电路设计后,检查线路连接,确认连线没有错误。双击单片机at89c51,用单击出现的对话框中的program file按钮,在之前保存的位置找到经过keil软件编译而生成的hex文件,载入后点击“ok”按钮。然后单击开始仿真按钮进行仿真。proteus仿真总图如图5.1所示 图5-1 系统仿真总图篮球计时计分的具体操作:(1) 计时显示功能计时功能的实现是通过键盘控制器中的ae按钮分别控制时间加1、时间减1、比赛开始倒计时、比赛时间暂停和比赛时间复位。各按钮对应得到的数码管显示如图5-1、5-2、5-3、5-4、5-5。图5-1 单节比赛开始总时间效果图图5-2 比赛时间暂停效果图图5-3 在暂停情况下时间加1效果图图5-4 在暂停情况下时间减1效果图图5-5 时间复位效果图(2) 计分显示功能计分功能的实现是通过键盘控制器中的09按钮分别控制。03分别控制控制甲队比分加1、比分加2、比分加3、比分减1;47分别控制乙队比分加1、比分加2、比分加3、比分减1;8、9分别控制比分清零和中场比分交换。各按钮对应得到的数码管显示如图5-6、5-7、5-8、5-9、5-10、5-11、5-12、5-13、5-14、5-15、5-16。 5-6甲队加1分 5-7甲队加2分 5-8甲队加3分 5-9 甲队减1分 5-10乙队加1分 5-11乙队加2分 5-12 乙队加3分 5-13 乙队减1分 5-14上半场甲乙两队得分 5-15 下半场交换场地比分交换 5-16比赛结束比分清零结论通过本次基于at89c51的篮球计时、计分器的毕业设计,实现了篮球比赛的计时以及计分,能应用于学校中的篮球比赛的计时计分。此次设计也使我对于单片机工作原理,功能有了宏观的了解,并对单片机汇编程序的应用有了新的、进一步的认识。在没有做毕业设计以前,觉得毕业设计只是对知识的单纯总结,但是通过这次毕业设计发现自己的观点有点太片面,毕业设计不仅是对前面所学知识的一种检验,也是对自己能力的一种提高,通过这次毕业设计使我明白了,自己掌握的知识是非常欠缺的,要学习的东西还很多。在本次设计的过程中,我发现很多的问题,给我的感觉就是下手很难,很不顺手,看似很简单的电路,要动手把它给设计出来,是很难的一件事,主要原因是我们没有经常动手设计过电路。另外单片机系统的知识似懂非懂,而且很多知识当时弄明白了,现在要用的时候又不记得,造成我用了大量的时间去查阅各种资料和程序命令,因此整个过程时间安排不合理。由于设计的计划没有安排好,设计的时间极为仓促,尤其是在硬件调试的过程中出现了很大的问题。另外资料的查找也是一大难题,这就要求我们在以后的学习中,应该注意到这一点,更重要的是我们要学会把从书本中学到的知识和实际的电路联系起来,这不论是对我们以后的就业还是学习,都会起到很大的促进和帮助。对于基于at89c51的篮球计时、计分器的毕业设计,还有一些改进之处。如在时间小于1:00时,可以对毫秒进行显示,这样可以更直观的看到比赛最后阶段的时间变化,也能使比赛别的更激烈,分秒必争。 参 考 文 献1彭为.黄科,雷道仲.单片机典型系统设计实例精讲.北京:电子工业出版社.20062 李广弟. 单片机基础m. 北京:北京航空航天大学出版社,1996.3胡汉才.单片机原理及其接口技术m.北京:清华大学出版社.1996.4诸昌钤.led显示屏系统原理及工程技术m.成都:电子科技大学出版社.2000.5 唐俊杰,高秦生. 微型计算机原理及应用m. 高等教育出版社,1998.6 陈梓城. 电子技术实训m. 机械工业出版社,2002.7梁纯等.基于mcs-51 单片机的led点阵图文显示屏设计.工矿自动化.2005 年第6 期附录a 硬件电路整体图附录b#include #define uchar unsigned char#define uint unsigned intuchar code tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff; /0,1,2,3,4,5,6,7,8,9关显示uchar b,d,t; /定义变量uchar fen=10,miao=0; /定时初始时间变量uchar flag; /标志位uchar temp; /矩阵键盘键值sbit beep=p17; /蜂鸣器void delay(uint z) /延时子函数uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);void dispaly() /定时时间显示uchar miaoge,fenge,miaoshi,fenshi;miaoge=miao%10;p2=0x80;p0=tabmiaoge;delay(1);miaoshi =miao/10;p2=0x40;p0=tabmiaoshi;delay(1);fenge=fen%10;p2=0x10;p0=tabfenshi;delay(1);p2=0x00;void dispaly1(char a) /甲队比分显示uchar ge1,shi1;b=a;ge1=b%10;p2=0x02;p0=tabge1;delay(1);shi1=b/10;p2=0x01;p0=tabshi1;delay(1);p2=0x00;void dispaly2(char c) 乙队比分显示uchar ge2,shi2;d=c;ge2=b%10;p2=0x08;p0=tabge2;delay(1);shi2=d/10;p2=0x04;p0=tabshi2;delay(1);p2=0x80;void keyscan() /矩阵键盘扫描控制char a,c,e,f;dispaly1(a);dispaly2(c);p3=0xfe;temp=p3;temp=temp&0xf0;while (temp!=0xf0)delay(5);temp=p3;temp=temp&0xf0;while (temp!=0xf0);)temp=p3;if(temp=0xee)delay(5);if(temp=0xee)a+; /甲队比分加1if(a=100)a=99;dispaly1(a);if(temp=0xde)dalay(5);if(temp=0xde)a=a+2; /甲队比分加2if(a=100)a=99;diapaly1(a);if(temp=0xbe)dalay(5);if(temp=0xbe)a=a+3; /甲队比分加3if(a=100)a=99;diapaly1(a);if(temp=0x7e)dalay(5);if(temp=0x7e)a=a-;if(a=100)c=99;dispaly2(c);if(temp=0xdd)dalay(5);if(temp=0xdd)c=c+2; /乙队
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年上海交通大学医学院附属新华医院医护人员招聘笔试备考试题及答案详解
- 2026年怀化市中医院医护人员招聘笔试备考试题及答案详解
- (2026版)度医院内科科室工作计划
- 2026年佳木斯大学附属第一医院医护人员招聘考试备考试题及答案详解
- 2026年广发银行(潍坊分行)人员招聘考试备考题库及答案详解
- 2026年绥化市第一医院医护人员招聘考试参考试题及答案详解
- 2026年洛阳市中心医院医护人员招聘笔试备考试题及答案详解
- 2026年民生银行(大连分行)校园招聘笔试参考题库及答案详解
- 2026年长治医学院附属和济医院医护人员招聘考试备考试题及答案详解
- 2026年海城市正骨医院医护人员招聘笔试备考试题及答案详解
- 2026山东济南南美城乡发展有限公司及其权属子公司招聘7人笔试参考题库及答案详解
- 财产申报表-被执行人用
- 初中生物会考模拟试卷及答案
- 普通外科胆囊炎课件
- 内蒙古地区历年中考作文题与审题指导(2002-2024)
- 2025年广西壮族自治区三支一扶考试真题
- 2024年重庆市中考生物试卷(含答案与解析)
- 施工现场临建施工方案
- 2024年宁夏盐池县就业创业和人才服务局事业单位招聘历年(高频重点复习提升训练)共500题附带答案详解
- 水电站闸门和启闭机运行维护技术规程
- 中国矿业权评估准则(2011年)
评论
0/150
提交评论