单片机应用与接口技术课程设计指导书.doc
《单片机应用与接口技术课程设计指导书.doc》由会员分享,可在线阅读,更多相关《单片机应用与接口技术课程设计指导书.doc(38页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 引言篮球比赛计时计分器是为了解决篮球比赛时计分与计时准确的问题。此装置利用单片机AT89C51完成了计时和计分的功能。该设计将介绍系统硬件与软件的设计过程,采用该装置可根据实际情况进行比分修改和时间的准确显示,具有低功耗,可靠性,安全性以及低成本等特点。1.1背景知识介绍单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。单片机自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以
2、应用很广,发展很快。单片机的优点是体积小、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。例如,80C51系列单片机已有十多年的生命期,如今仍保持着上升的趋势,就充分证明了这一点。单片机以其一系列优点,近几年得到迅猛发展和大范围推广,广泛应用于工业控制系统,数据采集系统、智能化仪器仪表,及通讯设备、日常消费类产品、玩具等。并且已经深入到工业生产的各个环节以及人民生活的各层次中,如车间流水线控制、自动化系统等、智能型家用电器等。而美国ATMEL公司开发生产了新型的8位单片机AT89系列单片机。他不但具有一般MCS-51单片机的所有特性,而且还拥有一些独特的优点,
3、此次设计中所用到的AT89C51就是其中典型的代表。单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,用它来做一些控制电器一类不是很复杂的工作足矣了。我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影。单片机是靠程序实现功能的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件的话,电路一定是一块大PCB板。但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别。只因为单片机的通过你编写的程序可
4、以实现高智能,高效率,以及高可靠性。 1.2 设计目的随着单片机在各个领域的广泛应用,许多用单片机做控制的球赛计时计分系统也应运而产生,如用单片机控制LCD液晶显示器计时计分器,用单片机控制LED七段显示器计时计分器等。本设计用由AT89C51编程控制LED七段数码管作显示的球赛计时计分系统。该系统具有赛程定时设置,赛程时间暂停,及时刷新甲、乙双方的成绩以及赛后成绩暂存等功能。它具有价格低廉,性能稳定,操作方便并且易于携带等特点。广泛适合各类学校或者小型团体作为赛程计时计分。通过本次基于C51系列篮球计时计分器的设计,可以了解、熟悉有关单片机开发设计的过程,并加深对单片机的理解和应用以及掌握单
5、片机与外围接口的一些方法和技巧,这主要表现在以下一些方面:(1) 篮球赛计时计分系统包含了8051系列单片机的最小应用系统的构成,同时在此基础上扩展了一些使用性强的外围接口。(2) 可以了解到LED显示器的结构、工作原理以及这种显示器的接口实例与具体连接与编程方法。(3) 怎样利用串行口来扩展显示接口等。1.3功能要求(1)能记录整个赛程的比赛时间,并能在比赛开始前设定比赛时间,在比赛过程中能暂停比赛时间。(2)能随时刷新甲、乙两队在真个赛程中的比分,即对甲乙两队的分数进行加分和减分。(3)中场交换比赛场地时,能交换甲、乙两队比分的位置。(4)比赛结束时能发出报警提示。(5)在每次交换球权后2
6、4秒能手动赋初值,进攻超过24秒计时暂停知道按下继续开始计时。1.4硬件系统方案设计基于单片机系统的篮球记时记分器的系统结构如图1.1AT89C51计时显示计分显示CD4511CD4094复位晶振赛程时间设置键盘赛程分数调整时间图1.1 篮球记时记分器的系统结构系统硬件由以下三个部分组成:(1)处理器:单片机 AT89C51(2)显示部分(3)按键开关处理器:本系统采用单片机AT89C51作为本设计的核心元件,兼容MCS51指令系统,32个双向I/O口,两个16位可编程定时/计数器,1个串行中断,两个外部中断源,低功耗空闲和掉电模式,4k可反复擦写(1000次)Flash ROM,全静态操作0
7、-24MHz,128x8bit内部RAM,共6个中断源,足以满足本次设计的要求。显示部分:在本次设计中,共接入12个七段共阴LED显示器,其中6个用于计录甲、乙两队的分数,每队3个LED显示器分数范围可达到0999分,足够满足赛程需要。另外的6个LED显示器则用于计录赛程的时间。分、秒、进攻时间,各用2个用LED显示。其中显示分钟的两位数字和显示进攻时间的四个LED可以通过按键进行调整设定。当把时间设置好后,按下开始计时按键比赛开始时启动计时。分钟和进攻时间可以设置的范围为099。根据设计,计时范围可达099分钟,进攻时间最大为99秒也完全满足赛程的需要。按键部分:本次设计共用了10各按键。其
8、中4各来调整甲乙两队的分数,每个队用两个按键,分别对分数进行加1分和减1分;2各按键用来设定比赛时间的分钟,其中这两个按键分别控制分钟的十位和个位;同样两个按键来设定进攻时间的十位和个位;剩下的两个按键一个用来控制比赛时间的开始与暂停,另外一个用来控制进攻时间,当按下比赛开始暂停按键时,比赛的时间有原来的状态变为另一种状态,进攻调整按键则是在交换球权的时候,手动来赋予进攻时间初值。当一场比赛结束的时候,暂停/开始按键还能完成交换两队分数的功能。1.5软件设计要求一、在上电点时,先对系统初始化。等待时间设定。二、当时间设定完成之后,按下开始键,系统显示分值和比赛时间。三、进攻时间由设定值减到0时
9、。整个体统暂停计时,直到开始键重新按下。进攻时间重新赋值,开始继续计时。四、当按下暂停按键时,进攻时间赋初值,停止计时,等待继续计时键按下。五、倒计时结束时,发出10秒警报。六、在整个计时过程中,都可以对甲乙两队分数进行修改。2 系统硬件设计2.1单片机AT89C51介绍MCS-51是指由美国INTEL公司生产的一系列单片机的总称,这一系列单片机包括了很多品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,而8031是前些年在
10、我国最流行的单片机,所以很多场合会看到8031的名称。AT89C51是一个低电压,高性能CMOS 8位单片机,片内含4k bytes的可反复擦写的Flash只读程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,内置功能强大的微型计算机的AT89C51提供了高性价比的解决方案。AT89C51具有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。AT89C51也是一个低功耗高性能单片机,有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程
11、定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。如图所示,图2.1为AT89C51单片机基本构造,其基本性能介绍如下:图2.1 AT89C51引脚图2.1.1管脚说明VCC:供电电压GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输
12、出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址
13、的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:表2.1 AT89C51特殊功能表端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2/INT0(外部中断0)P3
14、.3/INT1(外部中断1)P3.4T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一
15、个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也
16、用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来MCS-51系列单片机片内有一个串行IO端口,通过引脚 RXD(P30)和TXD(P31)可与外设电路进行全双工的 串行异步通信。 8051单片机的串行端口有4种基本工作方式,通过编程设置,可以使其工作在任一方式,以满足不同应用场合的需要。其中,方式0主要用于外接移位寄存器,以扩展单片机的IO电路;方式1多用于双机之间或与外设电路的通信;方式2,3除有方式l的功能外,还可用作多机通信,以构成分布式多微机系统。串行端口有两个控制寄存器(SCON和PCON),用来设置工作方式、发送或接收的状态
17、、特征位、数据传送的波特率(每秒传送的位数)以及作为中断标志等。串行端口有一个数据寄存器SBUF(在特殊功能寄存器中的字节地址为99H),该寄存器为发送和接收所共同。发送时,只写不读;接收时,只读不写。在一定条件下,向SBUF写入数据就启动了发送过程;读SBUF就启动了接收过程。串行通信的波特率可以程控设定。在不同工作方式中,由时钟振荡频率的分频值或由定时器T1的溢出率确定,使用十分方便灵活自反向振荡器的输出。2.1.2 芯片擦除特性整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字
18、节被重复编程以前,该操作必须被执行。2.1.3 AT89C51省电模式 AT89C51有两种可用软件编程的省电模式,它们是空闲模式和掉电工作模式。这两种方式是控制专用寄存器PCON(电源控制寄存器)中的PD(PCON.1)和IDL(PCON.0)位来实现的。PD是掉电模式,当PD=1时,激活掉电工作模式,单片机进入掉电工作状态,IDL是空闲等待状态,当IDL=1时,激活空闲工作模式,单片机进入睡眠状态,如需同时进入两种工作模式,即PD和IDL同时为1,则先激活掉电工作模式。 空闲模式:在空闲工作模式状态,CPU保持睡眠状态而所有片内的外设仍保持激活状态,这种方式由软件产生。此时,片内RAM和所
19、有特殊功能寄存器的内容保持不变。空闲模式可由任何允许的中断请求或者硬件复位终止。终止空闲工作模式的方法有两种其一是任何一条被允许中断的事件被激活,IDL(PCON.0)被硬件清除,即刻终止空闲工作模式。程序会首先响应中断,进入中断服务程序,执行完中断服务程序并紧随RETI(中断返回)指令后,下一条要执行的指令就是使单片机进入空闲模式那条指令后面的一条指令。其二是通过硬件复位也可以将空闲工作模式终止。需要注意的是,当由硬件复位来终止空闲工作模式时,CPU通常是从激活模式那条指令的下一条指令开始继续执行程序的,要完成内部复位操作,硬件复位脉冲要保持两个机器周期(24个时钟周期)有效,在这种情况下,
20、内部禁止CPU访问片内RAM,而允许访问其他端口。为了避免对端口产生意外写入,激活空闲模式的那条指令的后一条指令不应是一条对端口或者外部存储器的写入指令。掉电模式:在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内RAM和特殊功能寄存器的内容在终止掉电模式前被冻结。推出掉电模式的唯一方法是硬件复位。复位后将重新定义全部特殊功能寄存器但不改变RAM中的内容,在VCC恢复到正常工作电平前,复位应无效,且必须保持一定时间以使振荡器重新启动并且稳定的工作。空闲和掉电模式外部引脚状态如表2.3所示表2.2 外部引脚状态表模式空闲模式空闲模式掉电模式掉电模式程序存储器内部外部内部
21、外部ALE1100/PROG1100P0数据浮空数据浮空P1数据数据数据数据P2数据数据数据数据P3浮空浮空数据数据2.1.4最小系统设计通过上面对单片机的介绍,我们已经对单片的功能有了充分的了解。下面就以AT89C51单片机来设计该设计中的核心部分最小系统。单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路。下面给出一个51单片机的最小系统电路图。图2.2 单片机最小系统复位电路:由电容串联电阻构成。由图并结合电容电压不能突变的性质,可以知道,当系统一上电,RST脚将会出现高电平,并且,这个
22、高电平持续的时间由电路的RC值来决定。典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位。所以,适当组合RC的取值就可以保证可靠的复位。在电路图中,电容的的大小是22uF,电阻的大小是10k。所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10K*10UF=0.1S。也就是说在开机的0.1S内,电容两端的电压时在03.5V增加。这个时候10K电阻两端的电压为从51.5V减少(串联电路各处电压之和为总电压)。所以在0.1S内,RST引脚所接收到的电压是5V1.5V。在5V正常工作的51单片机中小于1.5V的电压信号
23、为低电平信号,而大于1.5V的电压信号为高电平信号。所以在开机0.1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为0.1S左右)。当然也有其他取法的,原则就是要让RC组合可以在RST脚上产生不少于2个机周期的高电平。51单片机最小系统复位电路的极性电容C1的大小直接影响单片机的复位时间,一般采用1030uF,51单片机最小系统容值越大需要的复位时间越短。除上电复位外,还可以通过手动来复位,单片机手动复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。单片机也一样,当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下手动复位按钮内部的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 应用 接口 技术 课程设计 指导书
限制150内