投篮游戏机设计报告版.docx
《投篮游戏机设计报告版.docx》由会员分享,可在线阅读,更多相关《投篮游戏机设计报告版.docx(57页珍藏版)》请在冰豆网上搜索。
投篮游戏机设计报告版
投篮游戏机
设计报告
20110318
第一章投篮游戏机的整体设计
1.1系统总体结构
基于单片机的投篮游戏机是以单片机为核心,一些模块化的外接电路为内部硬件,主要包括:
投球传感器,投币器,显示模块,电机驱动模块,语音模块,电源电路,复位电路,晶振电路,开始按键,以及两个机器设置按键。
一些可以直观看到的设备为外部硬件,主要包括:
喇叭,两个慢速电机(篮筐和挡板),篮筐以及外部的大框架。
这些构成一个市场上被广泛接受的娱乐项目:
投篮游戏机。
该文章主要描述单片机和内部硬件的设计。
图1-1投篮游戏机整体硬件结构框图
(1)电源部分
电源采用桥式整流、滤波电路和三端稳压管获得所需的直流稳定信号。
这里采用双电源,防止模拟信号,数字信号的互相干扰。
桥式整流滤波电路在无滤波情况下,UO=0.9U2;有滤波情况下,UO=1.2U2。
(2)复位
复位采用按键电平复位方式,只要RST端高电平保持两个机器周期就可以实现复位功能。
(3)CPU部分、晶振
选用stc89c52单片机,晶振采用12MHz,为单片机提供时钟,其机器周期为1us。
(4)红外壁障传感器
当有障碍物通过红外壁障传感器的感应范围时,壁障就会产生一个低电平信号,信号通过外部中断进入单片机内部,被单片机记录。
(5)投币识别
当有游戏币经过投币器时,就会产生一个低电平信号,信号通过外部中断进入单片机内部,被单片机记录。
(6)显示模块
采用74LS138进行位选,两个三极管串联放大再驱动串联后的放光二极管。
(7)电机驱动模块
通过对继电器线圈通断电的控制,进一步控制220V交流电机的通断。
由于单片机的输出只能驱动4个TTL门,驱动能力有限,所以采用三极管放大电路提升其驱动能力。
(8)语音模块
语音芯片选用ap8942a,采用TDA2030音响功放集成电路实现对声音的放大功能。
(9)开始按钮
将单片机的一个引脚通过一个开关接地。
投币结束后,通过程序检测该管脚的电平,作为启动游戏的条件。
(10)参数设定按钮
设定两个管脚,分别接上按钮,一个按钮用于选择要调节的参数,另一个用于给定参数值。
这里选用两个中端口作为关数各参数的设定。
1.2单片机选择
投篮游戏机电路板向着小型化、低功耗、抗干扰、低成本、实用功能方向发展。
因此在对单片机的选择趋向于容量适中、功能丰富、性能可靠、价格低的元件。
尤其是考虑到投篮游戏机功能比较多,需要单片机的支持多,也就是说必须要一个I/O多的单片机。
因此本设计中应用最为广泛的MCS-51系列8位单片机stc89c52(也可以用AVR单片机)。
1.3投篮游戏机原理图
1.投篮游戏机主板原理图
2.投篮游戏机显示数数码管1,2,3原理图
3.投篮游戏机显示数数码管4,5原理图
4.投篮游戏机显示数数码管6,7,8原理图
第二章单片机概述
2.18051单片机结构和原理
1.8051单片机的内部组成
8051内部有4KBROM,基本组成如图3-1所示。
图3-18051单片机结构框图
1)中央处理器(CPU)
中央处理器是单片机的核心,完成运算和控制功能。
8051的CPU能处理8位二进制数或代码。
2)内部数据存储器(内部RAM)
8051芯片中共有256个RAM单元,但其中后128单元被专用寄存器占用,能作为寄存器供用户使用的只是前128单元,用于存放可读写的数据。
因此通常所说的内部数据存储器就是指前128单元,简称内部RAM。
3)内部程序存储器(内部ROM)
8051共有4KB掩膜ROM,用于存放程序、原始数据或表格,因此,称之为程序存储器,简称内部ROM。
4)定时/计数器
8051共有两个16位的定时/计数器,以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。
5)并行I/O口
MCS-51共有4个8位的I/O口(P0、P1、P2、P3),以实现数据的并行输入/输出。
6)串行口
8051单片机有一个全双工的串行口,以实现单片机和其它设备之间的串行数据传送。
该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为同步移位器使用。
7)中断控制系统
8051单片机的中断功能较强,以满足控制应用的需要。
8051共有5个中断源,即外中断两个,定时/计数中断两个,串行中断一个。
全部中断分为高级和低级共两个优先级别。
8)时钟电路
8051芯片的内部有时钟电路,但石英晶体和微调电容需外接。
时钟电路为单片机产生时钟脉冲序列。
系统允许的晶振频率一般为6MHz和12MHz。
从上述内容可以看出,MCS-51虽然是一个单片机芯片,但作为计算机应该具有的基本部件它都包括,因此,实际上它已是一个简单的微型计算机系统了。
2.8051的信号引脚
8051是标准的40引脚双列直插式集成电路芯片,引脚如图3-2所示。
图3-2
1)信号引脚介绍
(1)主电源引脚
◇VCC:
+5V电源
◇VSS:
地线。
(2)时钟电路引脚
◇XTAL1和XTAL2:
外接晶体引线端。
当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。
(3)控制信号引脚
◇RST/VPD:
复位信号。
当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作;当单片机掉电时,此引脚上可接备用电源,由VPD向片内RAM提供备用电源,一保持片内RAM中的数据不丢失。
◇ALE/PROG:
地址锁存控制信号。
在系统扩展时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离。
此外,由于ALE是以晶振1/6的固定频率输出的正脉冲,因此,可作为外部时钟或外部定时脉冲使用。
对于EPROM型单片机,在EPRAM编程期间,此引脚接收编程脉冲。
◇PSEN:
片外程序存储器读选通信号输出端。
◇EA/VPP:
访问程序存储控制信号。
当EA信号为低电平时,对ROM的读操作限定在外部程序存储器;当EA信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。
对于EPROM型单片机,在EPRAM编程期间,此引脚接上加21VEPROM编程电源VPP。
(4)I/O引脚
P0.0~P0.7:
P0口8位双向口线。
P1.0~P1.7:
P1口8位双向口线。
P2.0~P2.7:
P2口8位双向口线。
P3.0~P3.7:
P3口8位双向口线。
2)P3口线的第二功能。
P3的8条口线都定义有第二功能,详见表3-1。
表3-1P3口各引脚与第二功能表
引脚
第二功能
信号名称
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
外部RAM写选通
P3.7
RD
外部RAM读选通
以上把8051单片机的全部信号引脚分别以第一功能和第二功能的形式列出。
对于各种型号的芯片,其引脚的第一功能信号是相同的,所不同的只在引脚的第二功能信号。
对于9、30和31三个引脚,由于第一功能信号与第二功能信号是单片机在不同工作方式下的信号,因此不会发生使用上的矛盾。
但是P3口的情况却有所不同,它的第二功能信号都是单片机的重要控制信号。
因此,在实际使用时,都是先按需要选用第二功能信号,剩下的才以第一功能的身份作数据位的输入/输出使用。
3.并行输入/输出口电路结构
单片机芯片内还有一项主要内容就是并行I/O口。
8051共有4个8位的并行I/O口,分别记作P0、P1、P2、P3。
每个口都包含一个锁存器、一个输出驱动器和输入缓冲器。
实际上,它们已被归入专用寄存器之列,并且具有字节寻址和位寻址功能。
在访问片外扩展存储器时,低8位地址和数据由P0口分时传送,高8位地址由P2口传送。
在无片外扩展存储器的系统中,这4个口的每一位均可作为双向的I/O端口使用。
8051单片机的4个I/O口都是8位双向口,这些口在结构和特性上是基本相同的,但又各具特点。
4.时钟电路
(1)内部方式时钟电路
在8051芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。
而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时钟电路,如图3-3所示。
时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。
请读者特别注意时钟脉冲与振荡脉冲之间的二分频关系,否则会造成概念上的错误。
一般地,电容C1和C2取30pF左右,晶体的振荡频率范围是1.2~12MHz。
晶体振荡频率高,则系统的时钟频率也高,单片机运行速度也就快。
8051在通常应用情况下,使用振荡频率为6MHz或12MHz。
图3-3时钟振荡电路
(2)外部方式时钟电路
在由多片单片机组成的系统中,为了各单片机之间时钟信号的同步,应当引入惟一的公用外部脉冲信号作为各单片机的振荡脉冲。
这时,外部的脉冲信号是经XTAL2引脚注入,其连接如图3-4所示。
图3-4外部时钟源接法
(3)时序
时序是用定时单位来说明的。
8051的时序定时单位共有4个,从小到大依次是:
节拍、状态、机器周期和指令周期。
它们之间的关系如下:
(1)一个振荡脉冲的周期为节拍;
(2)一个状态就包含两个节拍;
(3)一个机器周期的宽度为6个状态;
(4)一条指令周期由若干个机器周期组成。
5.单片机的复位电路
单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,复位后PC=0000H,使单片机从第一个单元取指令。
单片机复位的条件是:
必须使RST/VPD或RST引脚加上持续两个机器周期(即24个振荡周期)的高电平。
若时钟频率为12MHz,每机器周期为1 μs,则只需2μs以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。
单片机复位期间不产生ALE和PSEN信号,即ALE=1和PSEN=1。
这表明单片机复位期间不会有任何取指操作。
复位后,内部各专用寄存器状态如下:
PC:
0000HTMOD:
00H
ACC:
00HTCON:
00H
B:
00HTH0:
00H
PSW:
00HTL0:
00H
SP:
07HTH1:
00H
DPTR:
0000HTL1:
00H
P0~P3:
FFHSCON:
00H
IP:
***00000BSBUF:
不定
IE:
0**00000BPCON:
0***0000
其中,*表示无关位。
注意:
(1)复位后PC值为0000H,表明复位后程序从0000H
开始执行,这一点在实训中已介绍。
(2)SP值为07H,表明堆栈底部在07H。
一般需重新设置SP值。
(3)P0~P3口值为FFH。
P0~P3口用作输入口时,必须先写入“1”。
单片机在复位后,已使P0~P3口每一端线为“1”,为这些端线用作输入口做好了准备。
2.2存储器
1.8051内部数据存储器
8051单片机的芯片内部有RAM和ROM两类存储器,即所谓的内部RAM和内部ROM,首先分析内部RAM。
1)内部数据存储器低128单元
8051的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分:
低128单元(单元地址00H~7FH)和高128单元(单元地址80H~FFH)。
低128单元是单片机的真正RAM存储器,按其用途划分为寄存器区、位