




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
说明 该程序是基于 freescale MCU 三轴加速度传感器 ili9320 LCD 所写的贪食蛇游 戏 上传代码拥有全部的设计思路以及大部分函数主体 宏定义按键 define Key Up 1 define Key Down 4 define Key Left 2 define Key Right 3 define uchar unsigned char 使用结构体定义变量 使程序的名称更加的清楚 struct uchar X uchar Y uchar Yes Food 食物结构体 define SNAKE Max Long 20 最大长度 struct uchar X SNAKE Max Long uchar Y SNAKE Max Long uchar Long uchar Life uchar Score 蛇的分数 uchar Level 蛇的等级 Snake 蛇结构体 uchar Key V temp 0 取出上次按键值 uchar Key Value 0 static int l 0 static uint16 KEY Init 3 0 0 0 static uint16 KEY BASE 3 0 0 0 score 20 0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 15 0 160 170 180 190 int level 20 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 static const byte Channels 13 14 15 Contents for the device control register static word MMA 7260 OutV 3 static byte SumChan static byte OutFlg void MMA 7260 Init 3 void OutFlg FALSE No measured value ATD0CTL4 SMP2 0 SMP1 0 SMP0 0 PRS4 0 PRS3 0 PRS2 1 PRS1 0 PRS0 1 ATD0CTL4 5 Set sample time and prescaler ATD0CTL3 DJM 0 S8C 0 S4C 0 S2C 0 S1C 1 FIFO 0 FRZ1 0 FRZ0 0 ATD0CTL3 8 Set ATD control register 3 ATD0CTL0 0 0 0 0 WRAP3 1 WRAP2 1 WRAP1 1 WRAP0 1 ATD0CTL0 15 Set wrap around ATD0CTL1 ETRIGSEL 0 SRES1 1 SRES0 0 SMP DIS 1 ETRIGCH3 1 ETRIGCH2 1 ETRIGCH1 1 ET RIGCH0 1 ATD0CTL1 95 Set resolution and discharge ATD0CTL2 0 AFFC 1 ICLKSTP 0 ETRIGLE 0 ETRIGP 0 ETRIGE 0 ASCIE 0 ACMPIE 0 ATD0CTL2 64 Set ATD control register 2 static void MMA 7260 Measure 3 void for SumChan 0 SumChan 3 SumChan ATD0CTL5 Channels SumChan Start measurement of next channel while ATD0STAT0 SCF Wait for AD conversion complete MMA 7260 OutV SumChan ATD0DR0 Save measured value OutFlg TRUE Measured values are available byte MMA 7260 GetValue16 3 word Values if OutFlg Is measured value s available return 0 If no then error Note Next 4 lines are speed optimized Values MMA 7260 OutV 0 Save measured values to the output buffer Values MMA 7260 OutV 1 Save measured values to the output buffer Values MMA 7260 OutV 2 Save measured values to the output buffer OutFlg FALSE return 1 OK 贪食蛇游戏 函数名称 Trun On Point Trun Off Point uchar x uchar y 函数功能 点亮或者熄灭 一个点 用于显示蛇身体 入口参数 无 出口参数 无 特别说明 此 Trun On 函数换成其他的就可以兼容其他的液晶 入 8 8 点阵 12864 等 void Trun On Point uchar x uchar y uchar color ili9320 Rectangle 4 x 2 4 y 2 4 x 3 4 y 3 color color Bar 4 x 2 4 y 2 4 x 3 4 y 3 color void Trun Off Point uchar x uchar y ili9320 Rectangle 4 x 2 4 y 2 4 x 3 4 y 3 0 xFFFF 0 xFFFF 函数名称 void Init SNAKE void 函数功能 绘制游戏界面 初始化游戏等级等参数 入口参数 无 出口参数 无 void Init SNAKE void uchar i 获取方向基准 MMA 7260 Init 3 MMA 7260 Measure 3 MMA 7260 GetValue16 3 以下语句可以通过串口检验三轴加速度数据 if Flag printp Get X Channel 10D KEY BASE 0 printp Get Y Channel 10D KEY BASE 1 printp Get Z Channel 10D KEY BASE 2 绘制游戏界面 ili9320 Rectangle 4 4 166 206 0 0 ili9320 Rectangle 5 5 167 207 0 0 ili9320 Rectangle 6 6 168 208 0 0 ili9320 Rectangle 5 5 169 209 0 0 ili9320 Rectangle 7 7 167 207 0 xFFFF 0 xFFFF 绘制一个矩形框 160 240 ili9320 Write multi HZ ASCII 167 10 32 32 32 少女 32 FON 少符 32 FON 07 电信一 0 xF800 ili9320 Write multi HZ ASCII 167 10 66 32 32 少女 32 FON 少符 32 FON 郑友金 0 xF800 ili9320 Write multi HZ ASCII 167 10 100 32 32 少女 32 FON 少符 32 FON 贪食蛇 0 xF800 初始化蛇参数 Snake Long 2 定义初始化蛇的长度 Snake Life 0 初始化蛇还活着 Snake Score 0 Food Yes 1 Key Value 0 for i 0 i Snake Long i 将蛇给赋值 Snake X i i 10 Snake Y i 10 for i 0 i500 Cpu Delay100US 2100 Snake Level 400 方向取值完毕 根据按键选择蛇的运动方向 if Key Value Key Right 先把蛇尾给熄灭掉 for i 0 i Snake Long 1 i 蛇身都是它前一段的蛇身的位置 Snake X i Snake X i 1 Snake Y i Snake Y i 1 Snake X Snake Long 1 Snake X Snake Long 2 1 Snake Y Snake Long 1 Snake Y Snake Long 2 0 蛇头向你要求的方向移动 for i 0 i Snake Long i 这个让蛇显示出来的函数 Trun On Point Snake X i Snake Y i 0 xffff Key Value 0 Key V temp Key Right if Key Value Key Left 先把蛇尾给熄灭掉 for i 0 i Snake Long 1 i 蛇身都是它前一段的蛇身的位置 Snake X i Snake X i 1 Snake Y i Snake Y i 1 Snake X Snake Long 1 Snake X Snake Long 2 1 Snake Y Snake Long 1 Snake Y Snake Long 2 0 蛇头向你要求的方向移动 for i 0 i Snake Long i 这个让蛇显示出来的函数 Trun On Point Snake X i Snake Y i 0 xffff Key Value 0 Key V temp Key Left if Key Value Key Up 先把蛇尾给熄灭掉 for i 0 i Snake Long 1 i 蛇身都是它前一段的蛇身的位置 Snake X i Snake X i 1 Snake Y i Snake Y i 1 Snake X Snake Long 1 Snake X Snake Long 2 0 Snake Y Snake Long 1 Snake Y Snake Long 2 1 蛇头向你要求的方向移动 for i 0 i Snake Long i 这个让蛇显示出来的函数 Trun On Point Snake X i Snake Y i 0 xffff Key Value 0 Key V temp Key Up if Key Value Key Down 先把蛇尾给熄灭掉 for i 0 i Snake Long 1 i 蛇身都是它前一段的蛇身的位置 Snake X i Snake X i 1 Snake Y i Snake Y i 1 Snake X Snake Long 1 Snake X Snake Long 2 0 Snake Y Snake Long 1 Snake Y Snake Long 2 1 蛇头向你要求的方向移动 for i 0 i 39 Snake Y Snake Long 1 49 判蛇头是否撞到墙壁 Snake Life 1 for
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人力资源社会保障部劳动合同示范文本(终稿)2篇
- 奶茶店用工协议书7篇
- 二手房协议书范本6篇
- 赡养子女协议书6篇
- 租赁物业场地合同范本
- 珍爱网婚介合同范本
- 人参采购合同范本
- 班班通维修合同范本
- 中日合资协议合同范本
- 出售农村别墅合同范本
- 建立隐患闭环管理制度
- 《多样的美术门类》教学课件-2024-2025学年赣美版(2024)初中美术七年级上册
- T/CECS 10026-2019绿色建材评价建筑门窗及配件
- 企业往来款协议书
- 2025山东中考:生物高频考点
- DB65T 4815-2024 清洗消毒中心内畜禽及其产品运输车辆消毒技术规范
- 《儿童癫痫护理指南》课件
- 数学三年级上册二 观察物体1 看一看(一)教学设计
- 2025-2030中国PEM水电解槽行业现状调查与发展前景规划研究研究报告
- 2025年中国人保财险全系统黑龙江分公司招聘笔试参考题库含答案解析
- 施工阶段全过程造价咨询管理办法
评论
0/150
提交评论