UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验

文章目录

  • 实验箱型号
  • 实验内容和材料准备
  • 环境准备
  • 程序逻辑实现
  • 编写游戏程序
        • data.h
        • Tetris.c
  • 交叉编译
  • 移植和演示程序

实验箱型号



名称 移动互联网教学科研平台Ⅱ型
型号 UP-MOBNET-Ⅱ
编号 03019024
批号 32017040520

实验内容和材料准备



实验内容:
      实验熟悉试验箱开发环境和烧写流程、交叉编译原理和程序移植。
硬件:
      UP-MobNet-II 型平台、12V 电源线、串口线、USB 数据线
软件:
      Xshell、fastboot.exe、fastboot.bat、WinImage.exe





环境准备

这里的环境准备,主要还是交叉编译环境和实验箱环境的烧写;
这里就不再赘述,之前已经写过
连接在下面

环境准备



程序逻辑实现

俄罗斯方块
游戏操作:
左右方向键控制方向
上方向键改变方块形状
下方向键加速下落
字母Q键退出游戏
空格键暂停游戏
对应函数与枚举类型:
获取用户操作:

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第1张图片

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第2张图片

在主函数中获取用户操作的部分:

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第3张图片

方块下落的位置:

在这里插入图片描述

这两个变量会随着用户的移动操作而改变

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第4张图片

方块的类型:

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第5张图片

函数drawBlock用于构建当前方块和下一个方块

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第6张图片

决定方块的类型:
主函数中:

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第7张图片

可变化的样式(即改变方向): 例如:

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第8张图片

用于实现的函数:当方块当前位置改变方向后不越界即可

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第9张图片

方块的移动:
通过左,右,下方向键控制
相关函数:

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第10张图片

用到的一些知识点:

定时器:
struct itimerval{
struct timerval it_value;
//从设定定时器开始计算,到第一次定时器生效的时间
struct timerval it_interval;
//每两次定时器生效的时间间隔
}
struct itimerval timer{ {x},{y}}
//本次闹钟为x秒后,下一次闹钟为y秒后
setitimer(定时器类型,指定定时器,旧定时器)
用于方块下落的时间间隔

信号:
signal(要处理的信号类型,对信号的处理方法)

随机数:
strand(time(null))
//初始化随机数发生器
使用rand()来创建随机数
0<=rand()%7<7
所以可以用于方块种类的随机变换

初始化游戏区域:
void initalGameArea():



编写游戏程序

data.h

Tetris.c

小游戏



交叉编译

在安装Gcc的redHat上新建一个目录:Tetris.c、data.h在同一目录下
arm-none-linux-gnueabi-gcc -o tetris Tetris.c

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第11张图片

交叉编译生成tetris



移植和演示程序

这里也使用U盘挂载方式来移植程序
1、把main拷贝到U盘
2、把U盘插入实验箱对应的插口
插入以后实验箱打印如下信息:

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第12张图片

3、查看U盘信息
命令: fdisk -l

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第13张图片

4、挂载U盘
命令:mount -t vfat /dev/sda4 /mnt

在这里插入图片描述

5、运行程序

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第14张图片

命令:./tetris

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第15张图片

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第16张图片
UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第17张图片

GAMEOVER

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第18张图片

6、卸载U盘
U盘大的可能时间长一点十多秒

UP-MOBNET-Ⅱ型实验箱移植俄罗斯方块游戏实验_第19张图片

你可能感兴趣的:(实验,嵌入式,linux)