基于8086贪吃蛇游戏系统方恨设计

news/2024/6/20 11:16:43/文章来源:https://blog.csdn.net/2201_75940997/article/details/137235074

**单片机设计介绍,基于8086贪吃蛇游戏系统方恨设计

文章目录

  • 一 概要
  • 二、功能设计
  • 三、 软件设计
    • 原理图
  • 五、 程序
  • 六、 文章目录

一 概要

  基于8086的贪吃蛇游戏系统设计是一个结合了微处理器控制、游戏逻辑以及图形显示技术的综合性项目。该系统旨在通过8086微处理器实现贪吃蛇游戏的基本功能和玩法,让玩家能够在计算机上体验到经典游戏的乐趣。以下是对该设计的概要描述:

一、设计目标与要求

设计一个基于8086微处理器的贪吃蛇游戏系统,实现贪吃蛇游戏的核心功能。
游戏界面应简洁明了,贪吃蛇的移动、食物的生成以及碰撞检测等应准确无误。
游戏应具备良好的用户体验,包括合理的按键控制、流畅的游戏流程以及适中的游戏难度。
二、系统构成与工作流程

硬件构成:系统主要由8086微处理器、显示器、键盘输入模块以及可能的音频输出模块组成。显示器用于显示游戏界面,键盘输入模块用于接收玩家的控制指令,音频输出模块用于播放游戏音效(如果有的话)。
工作流程:
系统上电后,8086微处理器初始化游戏界面,包括设置游戏边界、生成初始的贪吃蛇和食物等。
玩家通过键盘输入模块控制贪吃蛇的移动方向。
8086微处理器根据玩家的指令更新贪吃蛇的位置,并检测是否吃到食物或撞到边界/自身。
如果贪吃蛇吃到食物,则食物消失并生成新的食物,同时贪吃蛇变长;如果撞到边界或自身,则游戏结束。
游戏过程中,8086微处理器实时更新显示器上的游戏界面,以反映贪吃蛇的移动和食物的变化。
三、软件设计

游戏界面设计:设计一个简洁明了的游戏界面,包括贪吃蛇、食物以及游戏边界等元素。可以使用简单的图形和颜色来表示这些元素。
游戏逻辑设计:编写游戏逻辑代码,实现贪吃蛇的移动、食物的生成以及碰撞检测等功能。确保游戏逻辑的准确性和稳定性。
按键控制设计:设计合理的按键控制方案,使玩家能够方便地控制贪吃蛇的移动方向。可以选择常见的键盘按键作为控制键。
四、优化与扩展

性能优化:对游戏代码进行优化,提高游戏的运行速度和响应速度,确保玩家获得流畅的游戏体验。
功能扩展:可以考虑添加一些扩展功能,如增加游戏难度级别、添加音效和背景音乐、实现多人对战等,以增加游戏的趣味性和可玩性。
综上所述,基于8086的贪吃蛇游戏系统设计是一个结合了微处理器控制、游戏逻辑以及图形显示技术的综合性项目。通过合理的设计和实现,我们可以得到一个既经典又有趣的游戏系统,让玩家在8086微处理器上重温贪吃蛇游戏的乐趣。

二、功能设计

微机原理-基于8086贪吃蛇游戏系统方恨设计-protues仿真设计资料,通过lcd12864做显示,通过四个按键上下左右来控制贪吃蛇。

三、 软件设计

本系统原理图设计采用Altium Designer19,具体如图。在本科单片机设计中,设计电路使用的软件一般是Altium Designer或proteus,由于Altium Designer功能强大,可以设计硬件电路的原理图、PCB图,且界面简单,易操作,上手快。Altium Designer19是一款专业的整的端到端电子印刷电路板设计环境,用于电子印刷电路板设计。它结合了原理图设计、PCB设计、多种管理及仿真技术,能够很好的满足本次设计需求。

————————————————

仿真实现
本设计利用protues8.7软件实现仿真设计,具体如图。

Protues也是在单片机仿真设计中常用的设计软件之一,通过设计出硬件电路图,及写入驱动程序,就能在不实现硬件的情况进行电路调试。另外,protues还能实现PCB的设计,在仿真中也可以与KEIL实现联调,便于程序的调试,且支持多种平台,使用简单便捷。
————————————————

原理图

在这里插入图片描述

五、 程序

本设计利用KEIL5软件实现程序设计,具体如图。作为本科期间学习的第一门编程语言,C语言是我们最熟悉的编程语言之一。当然,由于其功能强大,C语言是当前世界上使用最广泛、最受欢迎的编程语言。在单片机设计中,C语言已经逐步完全取代汇编语言,因为相比于汇编语言,C语言编译与运行、调试十分方便,且可移植性高,可读性好,便于烧录与写入硬件系统,因此C语言被广泛应用在单片机设计中。keil软件由于其兼容单片机的设计,能够实现快速调试,并生成烧录文件,被广泛应用于C语言的编写和单片机的设计。
在这里插入图片描述

————————————————

在这里插入图片描述

六、 文章目录

目 录

摘 要 I
Abstract II
引 言 1
1 控制系统设计 2
1.1 主控系统方案设计 2
1.2 传感器方案设计 3
1.3 系统工作原理 5
2 硬件设计 6
2.1 主电路 6
2.1.1 单片机的选择 6
2.2 驱动电路 8
2.2.1 比较器的介绍 8
2.3放大电路 8
2.4最小系统 11
3 软件设计 13
3.1编程语言的选择 13
4 系统调试 16
4.1 系统硬件调试 16
4.2 系统软件调试 16
结 论 17
参考文献 18
附录1 总体原理图设计 20
附录2 源程序清单 21
致 谢 25

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1033871.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

了解一下npm i的流程与原理

流程 执行npm install,先判断有无lock文件。 1、没有lock文件。会先根据依赖构建出扁平的依赖关系决定下哪些包。新版本的依赖关系是扁平化的,老版本是树结构,可能会出现依赖重复安装的问题,老版本示意图如下: 作为前…

Ps:颜色查找

颜色查找 Color Lookup命令通过应用预设的 LUT 来改变图像的色彩和调性,从而为摄影师和设计师提供了一种快速实现复杂色彩调整的方法,广泛应用于颜色分级、视觉风格的统一和创意色彩效果的制作。 Ps菜单:图像/调整/颜色查找 Adjustments/Colo…

文心一言 VS 讯飞星火 VS chatgpt (225)-- 算法导论16.3 7题

七、推广赫夫曼算法,使之能生成三进制的码字(即码字由符号0、1、2组成),并证明你的算法能生成最优三进制码。如果要写代码,请用go语言。 文心一言: 推广赫夫曼算法以生成三进制码字需要对算法进行一定的修改,确保在每…

关于v114之后的chromedriver及存放路径

使用selenium调用浏览器时,我一直调用谷歌浏览器,可浏览器升级后,就会再次遇到以前遇到过的各种问题,诸如:1、怎么关闭浏览器更新;2、去哪儿下载chromedriver;3、114版本之后的驱动去哪儿下载&a…

《Python之路:系统自学指南》

引言 在当今信息时代,编程已经成为一项越来越重要的技能。而Python作为一门功能强大、易学易用的编程语言,受到了越来越多人的青睐。然而,学习Python并不是一蹴而就的事情,尤其是对于没有编程基础的初学者来说,往往需…

yolov5+pyside6+登录+用户管理目标检测可视化源码

一、软件简介 这是基于yolov5目标检测实现的源码,提供了用户登录功能界面; 用户需要输入正确的用户名和密码才可以登录。如果是超级管理员,可以修改普通用户的信息,并且在检测界面的右上角显示【管理用户】按钮。 支持图片、视频、…

<网络> 网络Socket 编程基于UDP协议模拟简易网络通信

目录 前言: 一、预备知识 (一)IP地址 (二)端口号 (三)端口号与进程PID (四)传输层协议 (五)网络字节序 二、socket 套接字 (…

手机扫码看文件怎么实现?文件二维码的生成技巧及步骤

通过手机扫码查看word、pdf、excel等文件是现在很常见的一种内容获取方式,这种方式能够让文件在较短的时间内实现快速分享,提高了用户获取文件的便利性,为用户带来更好的体验效果。 那么不同格式的文件该如何制作二维码呢?相信有…

【漏洞复现】用友分析云druid存在未授权访问漏洞

Nx01 阅读须知 如棠安全的技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的…

Java八股文(设计模式)

Java八股文の设计模式 设计模式 设计模式 什么是设计模式?请列举一些常见的设计模式。 设计模式是软件设计中常用的一种思维模式,它描述了一类具有相似特征和解决思路的问题。 常见的设计模式包括单例模式、工厂模式、观察者模式、装饰器模式等。 请解释…

Python 代码混淆工具概述

在保护Python代码安全方面,有多种混淆工具可供选择,包括 Cython, Nuitka, Pyminifier 和 IPA guard。本文将介绍这些工具的特点和适用情况,以及在实际应用中的注意事项。 📝 摘要 本文探讨了几种常见的 Python 代码混淆工具&am…

Hive3.0.0出库库表中timestamp字段读取为null

在利用sqoop1.99.7做数据迁移的时候,从mysql导出表格到hive建立对应的表格,字段中使用了timestamp类型,在读取数据的时候,发现数据为null。查找问题方法如下: 1、查询库表字段类型 命令:desc tablen…

03-MySQl数据库的-用户管理

一、创建新用户 mysql> create user xjzw10.0.0.% identified by 1; Query OK, 0 rows affected (0.01 sec) 二、查看当前数据库正在登录的用户 mysql> select user(); ---------------- | user() | ---------------- | rootlocalhost | ---------------- 1 row …

【C语言】strncpy、strncat、strncmp函数的使用

strncpy、strncat、strncmp函数的使用 strncpy 函数的使用 strncpy函数定义 char * strncpy ( char * destination, const char * source, size_t num ); 将源文件的数个字符复制到目标文件。如果在复制num字符之前找到源C字符串的结尾(由空字符表示的信号&…

RESTful规范总结

概念:RESTful(Representational State Transfer 的缩写)是一种广泛使用的API架构风格。 1.资源:在REST API的设计中,首先需要面向资源建模,其中每个节点是是一个简单资源或集合资源。 1.1一个集合包含相同…

中国Shokz韶音 小小耳机中的大国创新

近日下午,太空出差三人组直播课上新了!全球的学生们通过网络收看了“天宫课堂”第二课,航天员翟志刚、王亚平、叶光富相互配合,在微重力环境下做了大量演示,并进行了天地互动问答。 眼尖的朋友应该看出来了&#xff0c…

如何使用Docker打包构建Java项目然后部署发布?

前言 今天我们来讲下如何使用Docker打包构建Java项目并且完成部署发布。 前期准备,需要安装好docker。 以及一个需要安装好Maven的镜像,可以参考下面的文章。 构建一个包含mvn命令的Java 17基础镜像-CSDN博客 一、打包构建Java项目镜像 1、创建Jav…

简单而复杂的Python

Python是一种简单&复杂的编程语言。简单的时候可以到极致: print(hello world!)另一方面,Python 也具有许多复杂的语法特性,例如面向对象编程、装饰器、迭代器、生成器等等。这些特性使得 Python 适用于各种不同的编程任务和项目。 当我…

vscode shadertoy插件,非常方便的glsl着色器编写工具

很著名的shadertoy网站,集合了非常多大神利用数学写出美妙的shader效果。像shadertoy创始人之一的IQ大神它在这方面有很多的建树。他的利用光线步进和躁声可以创建很多不可思议的3D场景。 vscode有一件shadertoy的插件,安装后可以新建一个*.glsl文件&am…

vscode调试Unity

文章目录 vscode调试UnityC#环境需求开始调试 Lua添加Debugger环境配置联系.txt文件配置Java环境 添加调试代码断点不生效的问题 vscode调试Unity C# 现在使用vscode调试Unity的C#代码很简单,直接在vscode的EXTENSIONS里面搜索“Unity”,第一个就是&am…