基于单片机的俄罗斯方块游戏机课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
P3 口
P3 口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对P3 口写入"1"时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能P3 口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
RST
复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节。一般情况下,ALE 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。该位置位后,只有一条MOVX 和MOVC指令才能将ALE 激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 禁止位无效。
图3.4复位电路
3.
8XX51系列单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。在引脚XTAL1和XTAL2外接晶振,就构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器,并产生振荡时钟脉冲。晶振通常选用6MHz、12MHz或24MHz。
图3.5时钟电路
3.6液晶屏显示模块
液晶显示屏是整个系统硬件的重要组成部分,担当着人机交互的重要角色。本设计采用铭正同公司生产的MzL02D-12864液晶点阵屏作为显示器件。它是一块128*64点阵的LCD显示模组,模组上的LCM采用COG技术将控制(包括显存)、驱动器集成在LCM的玻璃上,接口简单,操作方便。其特点为单电源供电,对比度编程可调,可采用并行接口为6800/8080时序或者串行SPI的MPU接口方式,整块液晶屏由3.3V的白色LED背光,美观大方。其外接部分分为电源端口、数据端口和命令端口三部分组成。本设计中LCD的数据端口连接到STC89C51单片机的P0端口,LCD命令端口连接到单片机的P2端口。具体实物如图所示:
本次设计中我们选用了12MHz的晶振,晶振与锁相环电路配合使用,以提供系统所需的时钟频率。设计中STC89C52使用12MHz晶体振荡器作为振荡源,由于单片机内部带有振荡电路,所以外部只要连接一个晶振和两个电容即可,电容容量一般在15pF到50pF之间,我们选用电容容量为33pF的电容,如图所示即为本设计的振荡电路。
P2口
P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口P2 写"1",通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16 位地数据存储器(例如执行MOVX @DPTR 指令)时,P2 口送出高8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVX@RI 指令)时,P2 口输出P2锁存器的内容。Flash编程或校验时,P2亦接收高位地址和一些控制信号。
XTAL1
振荡器反相放大器及内部时钟发生器的输入端。
XTAL2
振荡器反相放大器的输出端。
3.4
单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。单片机系统的复位方式有:手动按钮复位和上电复位。
PSEN
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP
外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000H-FFFFH),EA 端必须保持低电平(接地)。需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU 则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V 的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
手动按钮复位需要人为在复位输入端RST上加入高电平(图1)。一般采用的办法是在RST端和正电源Vcc之间接一个按钮。当人为按下按钮时,则Vcc的+5V电平就会直接加到RST端。手动按钮复位的电路如所示。由于人的动作再快也会使按钮保持接通达数十毫秒,所以,完全能够满足复位的时间要求。复位电路连接如图所示:
《单片机原理及应用》
课程设计报告
题 目:俄罗斯方块游戏机
专 业:电子信息工程技术
班 级:电子B1512班
学 号:
姓 名:
指导老师:
2017-12-01
1.设计题目、要求及分工
1.1 设计题目
本课程设计题目是基于51单片机的俄罗斯方块游戏机。
1.2 设计要求
本课程设计主要器件是STC89C52单片机和液晶12864,通过单片机发生信号控制液晶屏的显示,使用按键实现游戏的开始、暂停、移动、翻转等。
1.3 分工
在本次设计中,张荣俊同学主要负责软件的设计与分析,汤青红同学负责硬件电路的设计。
2.设计方案
本次设计采用STC89C52单片机控制模块,USB电源模块来提供电源,复位模块,12864LCD显示屏进行屏显,晶振与电容实现时钟电路,按键直接接入I/O口,这样可以简化电路。另外我们还采用了6个按键,分别是左移,右移,下移、方块变化键、确定按键与暂停按键。
3.
源自文库3.1
图3.1硬件设计框图
3.
本设计的电源系统比较简单,由USB电源输出5V电源进行供电,具体电路如下图所示:
图3.2电源电路
3.
图3.3STC89C52引脚图
P1口
P1 是一个带内部上拉电阻的8 位双向I/O 口, P1的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写"1",通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。与AT89C51 不同之处是,P1.0 和P1.1还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和(P1.1/T2EX)。
相关文档
最新文档