毕业设计(论文)基于51单片机贪吃蛇游戏设计.doc

上传人:仙人指路1688 文档编号:3978395 上传时间:2023-03-30 格式:DOC 页数:73 大小:1.28MB
返回 下载 相关 举报
毕业设计(论文)基于51单片机贪吃蛇游戏设计.doc_第1页
第1页 / 共73页
毕业设计(论文)基于51单片机贪吃蛇游戏设计.doc_第2页
第2页 / 共73页
毕业设计(论文)基于51单片机贪吃蛇游戏设计.doc_第3页
第3页 / 共73页
毕业设计(论文)基于51单片机贪吃蛇游戏设计.doc_第4页
第4页 / 共73页
毕业设计(论文)基于51单片机贪吃蛇游戏设计.doc_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《毕业设计(论文)基于51单片机贪吃蛇游戏设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于51单片机贪吃蛇游戏设计.doc(73页珍藏版)》请在三一办公上搜索。

1、摘 要本文设计了一款新颖的以单片机为控制核心的贪食蛇游戏系统。所设计的贪食蛇能完成移动、吃食物和摆放游戏自动输出的食物、使之默认出现3节蛇身、吃到每个随机点数而得分等功能。硬件设计包括LED模块、键盘模块、供电模块驱动模块和下载模块。软件采用C语言编程,方便灵活,大大加快了软件开发速度,缩短了开发周期,并且便于移植。为提高开发效率和硬件稳定性,采用了功能强大的硬件仿真软件Proteus,依托该软件提供的仿真环境搭配Keil作为软件开发调试环境进行仿真调试成功。所设计的贪食蛇游戏系统轻巧便携、老少皆宜,且成本较低,具有一定的市场前景。关键词:贪吃蛇;单片机;游戏AbstractThis pape

2、r designs a novel single-chip microcomputer as the snake game control system. The snake can complete mobile, food and put the game automatically output of food, which appears by default 3 snake, eat each random points and scoring functions. The hardware design includes LED module, keyboard module, p

3、ower supply module and driving module and download module. The software is programmed with C language, convenient and flexible, greatly accelerate the speed of software development, shorten the development cycle, and easy to transplant. In order to improve the development efficiency and stability of

4、 the hardware, the powerful hardware simulation software Proteus, based on the simulation environment of the software provided with Keil as the software development environment for debugging simulation debugging success. Snake game system design of the light and portable, suitable for all ages, and

5、the cost is low, has a certain market prospects.KeyWords:Greedy Snake;51MCU;Game目录第一章 绪论11.1课题设计的背景与意义11.2 贪食蛇游戏的发展及现状21.2.1贪食蛇游戏发展历史21.2.2我国单机游戏的现状21.3 课题设计的内容与要求31.3.1课题设计的内容31.3.2课题设计的要求41.4设计方案41.4.1硬件设计41.4.2软件设计4第二章 系统总体设计52.1 系统基本组成及工作原理52.2 系统的主要元器件介绍72.2.1 74HC13872.2.2 74HC15492.2.3 74HC59

6、5112.3 主控芯片单片机132.3.1单片机的介绍132.3.2单片机的应用142.4 单片机红外无线152.4.1红外遥控152.4.2红外遥控发射162.4.5红外遥控接收172.4.6红外编码标准17第三章 系统硬件的设计213.1单片机控制模块的设计213.1.1 单片机的选择213.1.2 时钟电路243.1.3 复位电路263.1.4 最小系统263.2 供电电路设计273.3 显示模块设计283.3.1 点阵模块283.3.2 驱动电路设计 303.3.3 行驱动电路323.3.4 列驱动电路323.3.5 扫描显示过程333.3.6 显示模块原理图343.4下载模块设计35

7、第四章 系统软件的设计374.1软件的整体设计思想374.2 软件开发环境374.2.1 keil软件的介绍374.2.2 软件功能384.2.3 软件应用流程384.3系统主函数的设计404.3.1按键检测模块414.3.2 显示模块424.3.3分数模块43第五章 系统调试455.1软件调试455.2硬件调试455.3作品展示47总结49参考文献51致 谢53附录一:原理图54附录二:原程序LVI第一章 绪论 “贪食蛇”又称为“贪吃蛇”,是一种益智小游戏。其游戏规则比较简单,就是一条小蛇,不停地在屏 即毙命并结束游戏。本设计以51系列单片机AT89C51为控制核心,以点阵液晶显示模块、按键

8、为人机接口,实现了一个贪食蛇游戏机。1.1课题设计的背景与意义 随着社会的发展,人们生活的步调日益加快,越来越多的人加入了全球化的世界。人们不再拘束一块天地,加班,出差成了现代人不可避免的公务。而此时一款可以随时随地娱乐的游戏成了必需品。贪吃蛇这一游戏简单易行,操作方便,娱乐性较强,吸引了不少人。这一款游戏紧紧地抓住了人们的心理,虽然简单,却其乐无穷,在人们不断追求更多的欲望下,该游戏给人们带来了追逐的快感,以及成功后的满足感,对于一直处于高压下的现代人是很好的放松工具。当前科学技术飞速发展,特别是微电子技术,计算机软件与应用技术的发展,使得人们的日常生活丰富多彩。单片微型计算机(简称单片机)

9、作为微型计算机家族的一员,以其独特的结构,良好的稳定性,便宜的价格在嵌入式领域广泛应用。与传统的PC上设计的贪吃蛇游戏不同,本次作者利用Proteus硬件仿真软件,采用单片机、液晶显示屏、扬声器、按键等搭建硬件平台,C语言编程,实现便携地贪吃蛇游戏。传统的贪吃蛇游戏只有单纯的吃豆子,得分,升级以后蛇运动的速度加快等功能。本次作者对贪吃蛇游戏进行了升级,出上述基本功能外,针对现有硬件条件,加入地图选择,游戏中途暂停与退出,各种背景音的播放(包括吃豆子背景音、错误提示背景音、升级背景音、游戏结束背景音、游戏通关背景音等),背景音静音与否的选择等,使玩家的游戏体验更上一层楼。LED显示屏是八十年代后

10、期在全球迅速发展起来的新型信息显示媒体,显示屏由几万甚至几十万个半导体发光二极管像素点均匀排列组成。利用不同的材料可以制造不同色彩的LED像素点。目前应用最广的是红色、绿色、黄色。而蓝色和纯绿色LED的开发已经达到了实用阶段。LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点。在短短的十来年中,LED点阵显示屏就以亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定的优点迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度

11、、更高的发光均匀性、可靠性、全色化方向发展。LED显示屏的应用涉及社会经济的许多领域,主要包括:(1)证券交易、金融信息显示。(2)机场航班动态信息显示。(3)港口、车站旅客引导信息显示。(4)体育场馆信息显示。(5)道路交通信息显示。(6)调度指挥中心信息显示。(7)邮政、电信、商场购物中心等服务领域的业务宣传及信息显示。(8)广告媒体新产品等。通过本次设计可以使我更加了解我国LED显示屏的发展前景,以及更好的了解了LED显示屏的主要功能和适用范围,并且通过自己不懈的努力,对其工作原理和安装过程更为了解,利用点阵屏幕设计游戏的一些思路,对一些电子电路知识更为精通。我想通过本次设计所取得成果是

12、巨大的而深远的,首先对我以后的工作会有很大的帮助,其次是通过我自己的亲身制作很的提高了我的动手能力。1.2 贪食蛇游戏的发展及现状1.2.1贪食蛇游戏发展历史贪吃蛇发明者是Jeremy 蛇引诱夏娃吃了苹果之后,就被贬为毒虫,阴险的象征。 而蛇吃东西是整只动物吞进去的,更加显得贪婪的样子.大概在文艺复兴的时候就有人发明的一种游戏,是现在贪吃蛇的前身。后来慢慢的发展就变成了今天的贪吃蛇了。 蛇引诱夏娃吃了苹果之后,就被贬为毒虫,阴险的象征。贪吃蛇是个悲剧游戏,无论玩家如何技术高超,最终结果都是小蛇挂了.貌似还含有哲理意义给人警示戒贪.贪吃蛇产生于1970年代中后期的计算机游戏。此类游戏在1990年

13、代由于一些小屏幕设备引入而再度流行起來,在现在的手机上基本都可安装此小游戏。贪吃蛇游戏是一种简单的大众的游戏,自从计算机实现以来,深受广大电脑玩家的喜爱,做一个简单的贪吃蛇小游戏。贪吃蛇的核心算法时如何实现移动和吃掉食物,没有碰到食物的时候,把当前运动方向上的下个节点入队,并以蛇节点的颜色绘制这个节点,然后把头指针所指的节点出队,并以游戏框架内部背景色重绘出队的节点,这样就可以达到移动的效果。而在吃到食物的时候,则只需把食物入队即可。实现贪吃蛇的基本的蛇身移动、吃到食物身体增长、和碰到墙壁或自身死亡,能够暂停和开始。本次设计我将主要运用C语言来完成。C语言是一种跨平台,适合于分布式计算环境的面

14、向对象编程语言,用C写的应用程序可移植性强、可靠性好、执行型强等。1.2.2我国单机游戏的现状近年来,因特网在国内迅速普及,导致了游戏的高速发展。同样手机的普及,导致了手机游戏市场呈现爆炸式的发展。尤其是国内外巨大的手机拥有量,更是让商家看到了商机,手机游戏市场利润将会十分丰厚。面对潜力如此巨大的手机游戏市场,各游戏开发商、运营商、服务商以及手机终端厂商等都纷纷开始了各自的应战准备,以便抢占商机。各大手机以及游戏厂商开始不断的提升手持设备在游戏方面的性能,同时还在操作系统方面采用开放式的平台,方便用户享受不同的游戏业务。而国内游戏开发商,如盛大、网易等公司,纷纷跻身手机游戏开发商行列。新浪、搜

15、狐等著名的门户网站,也纷纷涉足手机游戏领域,相继开辟了各自的手机游戏频道和栏目,其他一些游戏网站也都全面加快了手机游戏开发的步伐。目前SUN公司的J2ME CLDC/MIDP环境和高通公司的BREW(Binary Runtime Environment for Wireless)客户端程序是国内外游戏开发的两大主要平台。中国电信业巨头中国移动建立了无线Java增值服务体系,推出了基于SUN公司的J2ME 环境的“百宝箱”业务,包括游戏类、商务类、生活类等丰富的数据服务。中国移动用户只要使用支持Java的手机,通过GPRS的无线上网方式,访问移动梦网门户的“百宝箱”服务菜单,就能方便地下载各种由

16、Java语言编写的应用程序。而中国联通与高通公司合作,采用高通公司的BREW平台技术,推出了“神奇宝典”业务,中国联通用户可以从联通公司的应用下载服务器上以无线方式下载应用程序。手机游戏成了电信增值业务中一项主要的应用,在公交车等公共场合不时会看到拿着手机玩游戏的人。相比较早开发的“贪吃蛇”、“俄罗斯方块”等手机游戏,如今的手机游戏,无论是从视觉效果、听觉效果还是游戏的可玩性来说,都要精彩的多。在全球,移动电话数量巨大,除美国之外,其他各个发达国家拥有手机的人数比拥有计算机的人数还多。在我国,手机拥有量甚至超过了美国的人口数量,而且每个月手机数量还正以惊人的速度递增着。手机市场的高速增加带动了

17、手机游戏市场的急速膨胀,基于JAVA、C等技术平台的手机游戏市场规模纷纷呈现几何增长态势。1.3 课题设计的内容与要求1.3.1课题设计的内容本设计涉及到硬件部分和软件部分,硬件部分采用主控芯片为STC89C51、2片74HC595、2片74HC138译码器,单片机P2口设置4个触点按键,软件设计程序关键在于表示蛇的图形及蛇的移动。用一个小矩形快表示蛇的一节身体,身体每长一节,增加一个矩形块,蛇头用俩节表示。移动时必须从蛇头开始,所以蛇不能向相反的方向移动,如果不按任意键,蛇自行在当前方向上前移,但按下有效方向键后,蛇头朝着该方向移动,一步移动一节身体,所以按下有效方向键后,先确定蛇头的位置,

18、而后蛇的身体随蛇头移动,图形的实现是从蛇头新位置开始画出蛇,这时,由于未清屏的原因,原来的蛇的位置和新蛇的位置差一个单位,所以看起来蛇多一节身体,所以将蛇的最后一节用背景色覆盖。食物的出现与消失也是画矩形块和覆盖矩形块。为了便于理解,定义两个结构体:食物与蛇。1.3.2课题设计的要求1、电路要求 通过使用单片机和点阵完成电路的各部分,并实现贪食蛇所需要的功能,通过仿真软件实现对电路和软件的测试与检查。2、软件要求 通过使用KEIL软件,使用C语言并结合硬件电路,实现硬件所需的功能,要求程序简单易懂,移植性好,执行型强,代码效率高,无错误,生成HEX文件并写入芯片。1.4设计方案1.4.1硬件设

19、计运用单片机技术和C程序设计及其模拟电子技术,通过点阵显示屏显示。需要使用的电路分为以下模块,单片机最小系统图、阵显示屏电路、方向控制电路,三个部分组成。使用单片机作为控制核心,可以简化硬件电路。1.4.2软件设计采用软件编程控制单片机实现硬件电路的功能,降低能耗,降低成本。软件采用C语言编程,方便灵活,大大加快了软件开发速度,并且便于移植。为提高开发效率和硬件稳定性,依托该软件提供的仿真环境搭配Keil作为软件开发调试环境进行仿真调试成功。贪吃蛇的制作思路及原理。通过点阵屏点亮一个点,然后再点亮旁边的另一个点,形成“蛇”,然后,再在点阵屏上面选一个点为蛇的食物,通过手动按键使蛇移动,并判断是

20、否撞墙。并找到食物,并吞下食物,然后蛇变长,直到蛇咬住尾巴或者撞墙死亡,重新开始。第二章 系统总体设计2.1 系统基本组成及工作原理系统的大体结构图如如图2-1所示,图文显示屏的硬件模块基本结构可以分为屏体和控制器和驱动器三大部分:图2-1系统框图 屏体部分主要是4个88的LED点阵组成的1616的LED点阵和行列驱动电路构成。不论是图形还是文字,都是控制与组成这些图形或文字的各个点所在的位置相对应的LED器件发光。根据屏幕所需的平面面积大小,选择一定数量的LED。用点阵方式构成图形或文字,是非常灵活的,可以根据需要任意组合和变化,只要设计好合适的数据文件,每个LED发光器件占据数据中的一位,

21、通过对点阵上全部的LED进行控制,在需要该LED器件发光时,数据中相应的位填1,否则填0,这样依照所需显示的图形文字,按显示屏的各行各列逐点填写显示数据,就可以构成一个显示数据文件,得到比较满意的显示效果。由于文字的显示点阵格式比较规范,可以采用现行计算机通用的字库字模,如汉字的宋体、楷体和黑体等多种可供选择的方案;其大小也可以有 1616、2424、3232、4848 等不同规格。因为本次毕业设计使用的四个88的LED点阵组成一个1616得LED点阵,然后通过级联,把两个1616的LED连在一起组成了1632的LED点整 ,分别显示汉字,所以仍然可以使用1616的字模。字体选择了在1616规

22、格下,显示的比较清晰、容易识别的宋体。从理论上说,不论显示图形还是文字,只要控制与组成这些图形或文字的各个点所在的位置相对应的LED器件发光,就可以得到我们想要的显示结果,这种同时控制各个发光点亮灭的方法称为静态驱动显示方式。1616的点阵共有256个发光二极管,显然单片机没有这么多的端口,如果我采用锁存器来扩展端口,按8位的锁存器来计算,1616的点阵需要256/8=32个锁存器。这个数字很庞大,因为我们仅仅是1616的点阵,在实际应用中的显示屏往往要大得多,这样在锁存器上花的成本将是一个很庞大的数字。因此在实际应用中的显示屏几乎都不采用这种设计,而采用另外一种称为动态扫描的显示方法。动态扫

23、描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套驱动器。具体就1616的点阵来说,把所有同1行的发光管的阳极连在一起,把所有同1列的发光管的阴极连在一起(共阳极的接法),先送出对应第一行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定时间,然后熄灭;再送出第二行的数据并锁存,然后选通第2行使其燃亮相同的时间,然后熄灭;以此类推,第16行之后,又重新燃亮第1行,反复轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能够看到显示屏上稳定的图形了。采用扫描方式进行显示时,每一行有一个行驱动器,各行的同名列共用一个驱动器。显示数据

24、通常存储在单片机的存储器中,按8位一个字节的形式顺序排放。显示时要把一行中各列的数据都传送到相应的列驱动器上去,这就存在一个显示数据传输的问题。从控制电路到列驱动器的数据传输可以采用并列方式或串行方式。显然,采用并行方式时,从控制电路到列驱动器的线路数量大,相应的硬件数目多。当列数很多时,并列传输的方案是不可取的。采用串行传输的方法,控制电路可以只用一根信号线,将列数据一位一位传往列驱动器,在硬件方面无疑是十分经济的。但是,串行传输过程较长,数据按顺序一位一位地输出给列驱动器,只有当一行的各列数据都以传输到位之后,这一行的各列才能并行地进行显示。这样,对于一行的显示过程就可以分解成列数据准备(

25、传输)和列数据显示两部分。对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下留给行显示的时间就太少了,以致影响到LED的亮度。解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。即在显示本行各列数据的同时,传送下一列数据。为了达到重叠处理的目的,列数据的显示就需要具有所存功能。经过上述分析,就可以归纳出列驱动器电路应具有的功能。对于列数据准备来说,它应能实现串入并处的移位功能,对于列数据显示来说,应具有并行锁存的功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示。控制器部分主要是单片

26、机及其外围电路。由16行16列组成的1616显示屏其 LED 发光器件数量相当大,不宜使用静态显示驱动电路,而采用多行的同名列共用一套列驱动器。控制电路负责有序的选通各行,在选通每一列之前还要把该列各行的数据准备好。这样,这一行上的LED发光器件就可以根据列数据进行显示。这种时序控制电路,一般都采用单片机实现。控制电路采用单片机,主要负责控制存储显示数据模块、安排控制信号的定时与顺序、控制驱动LED显示点阵的电路等。驱动电路,则分为行驱动电路和列驱动电路,用来驱动LED显示点阵。综上所述,系统逻辑结构如图2-2所示。图2-2 系统逻辑结构2.2 系统的主要元器件介绍2.2.1 74HC1387

27、4HC138是一款高速COMS器件,74HC138引脚兼容低功耗肖特基TTL(LSTTL)系列。74HC138译码器可接受3位二进制加权地址输入(A0, A1和A2),并当使能时,提供8个互斥的低有效输出(Y0至Y7)。74HC138特有3个使能输入端:两个低有效(E1和E2)和一个高有效(E3)。除非E1和E2置低且E3置高,否则74HC138将保持所有输出为高。利用这种复合使能特性,仅需4片74HC138芯片和1个反相器,即可轻松实现并行扩展,组合成为一个1-32(5线到32线)译码器。任选一个低有效使能输入端作为数据输入,而把其余的使能输入端作为选通端,则74HC138亦可充当一个8输出

28、多路分配器,未使用的使能输入端必须保持绑定在各自合适的高有效或低有效状态。译码过程实际上是一种翻译过程,即编码的逆过程。译码器的输入是n位二值代码,输出是m个表征代码原意的状态信号(或另一种代码)。小于等于2的n次方,即译码器输入线比输出线要少。译码器按其功能可分为三大类:(1)变量译码器:将输入的二进制代码还原为原始输入信号。例如有两位二进制代码(0 ,1),可经译码器还原为四个信号状态(0,0)(0,1)(1,0) (1,1)(2)代码变换译码器:用于将一个数据的不同代码之间的相互转换。例如二十进制译码器可将8421码转换为十个状态。(3)显示译码器:将数字、文字或符号的代码还原成相应的数

29、字、文字、符号并显示出来的电路74HC138 3-8线译码器/CD74HC138 ,CD74HC238和CD74HCT138 ,CD74HCT238是高速硅栅CMOS解码器,适合内存地址解码或数据路由应用。74HC138 作用原理于高性能的存贮译码或要求传输延迟时间短的数据传输系统,在高性能存贮器系统中,用这种译码器可以提高译码系统的效率。将快速赋能电路用于高速存贮器时,译码器的延迟时间和存贮器的赋能时间通常小于存贮器的典型存取时间,这就是说由肖特基钳位的系统译码器所引起的有效系统延迟可以忽略不计。74HC138 按照三位二进制输入码和赋能输入条件,从8 个输出端中译出一个低电平输出。两个低电

30、平有效的赋能输入端和一个高电平有效的赋能输入端减少了扩展所需要的外接门或倒相器,扩展成24 线译码器不需外接门;扩展成32 线译码器,只需要接一个外接倒相器。在解调器应用中,赋能输入端可用作数据输入端功能表如表2-1所示。1 、 低静态电流:80 mA最大2 、 低输入电流:1 mA最大 3 、 8位串行,并行输出移位寄存器 与存储 4 、 宽工作电压范围:为2V到6V 5 、 级联 6 、 移位寄存器具有直接清除 7 、 保证移频:DC至30兆赫正常使用时的典型参数:1 、电源电压(Vcc): 26 V2 、直流输入/输出电压: 0Vcc V3 、工作环境温度 : 40854 、输入上升/下

31、降延时:VCC = 2.0 V 1000 nsVCC = 4.5 V 500 nsVCC = 6.0 V 400 ns 表2-1 74HC138功能表74HC138 74HCT138 T1TRUTH TABLE真值功能表INPUTS 输入Outputs输出ENABLE 使能ADDRESS地址E3E2E1A2A1A0Y0Y1Y2Y3Y4Y5Y6Y7XXHXXXHHHHHHHHLXXXXXHHHHHHHHXHXXXXHHHHHHHHHLLLLLLHHHHHHHHLLLLHHLHHHHHHHLLLHLHHLHHHHHHLLLHHHHHLHHHHHLLHLLHHHHLHHHHLLHLHHHHHHLHH

32、HLLHHLHHHHHHLHHLLHHHHHHHHHHL2.2.2 74HC1544 线16线译码器简要说明: 74HC154 为4 线16线译码器,其主要电特性的典型值如下:当选通端(G1、G2)均为低电平时,可将地址端(ABCD)的二进制编码在一个对应的输出端,以低电平译出。若将G1和G2中的一个作为数据输入端,由ABCD对输出寻址, 74HC154 还可作1线16线数据分配器。74HC154,其中最外面的那些数字和字母是外部功能引脚。靠近内部的数字,为管脚的分部情况,功能表如表2-2。74HC154是一款高速CMOS器件,74HC154引脚兼容低功耗肖特基TTL(LSTTL)系列。74H

33、C154译码器可接受4位高有效二进制地址输入,并提供16个互斥的低有效输出。74HC154的两个输入使能门电路可用于译码器选通,以消除输出端上的通常译码“假信号”,也可用于译码器扩展。该使能门电路包含两个“逻辑与”输入,必须置为低以便使能输出端。任选一个使能输入端作为数据输入,74HC154可充当一个1-16的多路分配器。当其余的使能输入端置低时,地址输出将会跟随应用的状态。引出端符号:A、B、C、D 译码地址输入端(低电平有效) G1、G2 选通端(低电平有效) 015 输出端(低电平有效) 1 、电源静态电流:80毫安(74HC)2 、低输入电流:1 mA最大3 、三宽电源电压范围:2 -

34、 6V的正常使用时的典型参数:1 、电源电压(Vcc): 26 V 2 、直流输入/输出电压: 0Vcc V3 、工作环境温度: 4085 4 、输入上升/下降延时:VCC = 2.0 V 1000 nsVCC = 4.5 V 500 nsVCC = 6.0 V 400 ns 输入 低电平 输出 控制 译码值 G1 G2 D C B ALLLLLL0LLLLLH1LLLLHL2LLLLHH3LLLHLL4LLLHLH5LLLHHL6LLLHHH7LLHLLL8LLHLLH9LLHLHL10LLLLHH11LLHHLL12LLHHLH13LLHHHL14LLHHHH15LHHHLL-表2-2 7

35、4HC154真值表2.2.3 74HC59574HC595是硅结构的CMOS器件,兼容低电压TTL电路,遵守JEDEC标准。74HC595是具有8位移位寄存器和一个存储器,三态输出功能。 移位寄存器和存储器是分别的时钟。数据在SHcp(移位寄存器时钟输入)的上升沿输入到移位寄存器中,在STcp(存储器时钟输入)的上升沿输入到存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。8位串行

36、输入/输出或者并行输出移位寄存器,具有高阻关断状态,三态。特点简述:1 、 低静态电流:80 mA最大2 、 低输入电流:1 mA最大 3 、 8位串行,并行输出移位寄存器 与存储 4 、 宽工作电压范围:为2V到6V 5 、 级联 6 、 移位寄存器具有直接清除 7 、 保证移频:DC至30兆赫正常使用时的典型参数:1 、电源电压(Vcc): 26 V2 、直流输入/输出电压: 0Vcc V3 、工作环境温度 : 40854 、输入上升/下降延时:VCC = 2.0 V 1000 nsVCC = 4.5 V 500 nsVCC = 6.0 V 400 ns74HC595有3层结构:第一层为移

37、位D触发器;第二层为锁存D触发器;第三层为输出态门;当复位信号为0时,移位D触发器清0;当移位脉冲从L-H时,第一个移位D触发器的Q=D;其它的Qn=Qn-1; 当锁存脉冲从0-1时,第二层为锁存D触发器的输出=/输入; 当OE=1时,595的输出为高阻态; 当OE=0时,595的输出为第二层为锁存D触发器的输出的反相; 74HC595的数据端: QA-QH: 八位并行输出端,可以接点阵的8列。QH: 级联输出端。将它接下一个595的SI端。SI: 串行数据输入端。 74HC595的控制端说明: RESET: 复位信号 。shitf clock:移位时钟。serial data input:串

38、行数据输入。output enable:输出使能。latch clock:锁存时钟 。/SCLR(10脚):低电平时将移位寄存器的数据清零。通常将它接Vcc。 SCK(11脚):上升沿时数据寄存器的数据移位。QA-QB-QC-.-QH;下降沿移位存器数据不变。(脉冲宽度:5V时,大于几十纳秒就行了。通常都选微秒级) RCK(12脚):上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。通常将RCK置为低电平,当移位结束后,在RCK端产生一个正脉冲(5V时,大于几十纳秒就行了。通常都选微秒级),更新显示数据。 /G(13脚): 高电平时禁止输出(高阻态)。如果单片机的引脚不紧

39、张,用一个引脚控制它,可以方便地产生闪烁和熄灭效果。比通过数据端移位控制要省时省力。 注:74HC164和74HC595功能相仿,都是8位串行输入转并行输出移位寄存器。74HC164的驱动电流(25mA)比74HC595(35mA)的要小,14脚封装,体积也小一些。 74HC595的主要优点是具有数据存储寄存器,在移位的过程中,输出端的数据可以保持不变。这在串行速度慢的场合很有用处,数码管没有闪烁感。与164只有数据清零端相比,595还多有输出端时能/禁止控制端,可以使输出为高阻态。功能表如表2-3。表2-3 74HC595真值表 输入 输出 功能SHCPSTCPOEMRDSQ7QNLLLNC

40、MR为低电平时影响仅移位寄存器LLLL空移位寄存器输出寄存器HLLZ清空移位寄存器 并行输出高组态LHHQ6NC逻辑高电平移入寄存器0LHNCON寄存器内容到达并保持输出LHQ6ON内容移入 先前寄存器内容保持输出2.3 主控芯片单片机2.3.1单片机的介绍单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由

41、当时的4位、8位单片机,发展到现在的300M的高速单片机单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),单片机芯片常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。概括的讲,一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。由于

42、单片机在工业控制领域的广泛应用,单片机由仅有CPU的专用处理器芯片发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的8080是最早按照这种思想设计出的处理器,当时的单片机都是8位或4位的。其中最成功的是INTEL的8051,此后在8051上发展出了MCS51系列单片机系统。因为简单可靠而性能不错获得了很大的好评。尽管2000年以后ARM已经发展出了32位的主频超过300M的高端单片机,直到现在,基于8051的单片机还在广泛的使用。在很多方面单片机比专用处理器更适合应用于嵌入式系统,因此它得到了广

43、泛的应用。事实上单片机是世界上数量最多处理器,随着单片机家族的发展壮大,单片机和专用处理器的发展便分道扬镳。现代人类生活中所用的几乎每件有电子器件的产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电子产品中都含有单片机。 汽车上一般配备40多片单片机,复杂的工业控制系统上甚至可能有数百片单片机在同时工作,单片机的数量远远超过PC机和其他计算机的总和。2.3.2单片机的应用单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能I

44、C卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:1、智能控制单片机体积小耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应于仪器仪表中,结合不同类型的传感器,可实现诸如电压、电流、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量

45、的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采电子或数字电路更加强大。例如精密的测量设备(电压表、功率计,示波器,各种分析仪)。单片机具有体积小、控制功能强、功耗低、环境适应能力强、扩展灵活和使用方便等优点,用单片机可以构成形式多样的控制系统、数据采集系统、通信系统、信号检测系统、无线感知系统、测控系统、机器人等应用控制系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。2、家电电器家用电器广泛采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备和白色家电等。3、网络和通信现代的单片机普遍具备通信接口

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号