【JIONEY】掌控版+遥传感器 实现数字华容道小游戏

2019-12-196558
AI 快速预览详细 收起
本文介绍了如何使用掌控版和遥传感器实现数字华容道小游戏。首先,在显示屏上绘制64X64像素的3X3方格,并扩展一个方格放置第一个块的数字位置。接着,设计数字位置关系,根据3X3的方格找出位置编号与行列位置关系。最后,通过遥杆X控制左右移动,Y控制上下移动,实现数字华容道游戏的遥控控制。这个项目适合STEM教育场景,可以帮助孩子锻炼逻辑思维和问题解决能力。
数字华容道——掌控版+遥杆例程

自小就喜欢玩拼图游戏,一个小板板上通过一个缺少的方块,移动其余的方块打乱拼图,通过一定的移动方法将方块放回到位置。这次就借助掌控版,来设计一个数字华容道。

任务:
1、 设计格子布局
在显示屏上绘制64X64像素的3X3方格。同时再额外扩展一个方格出来放置第一个块的数字位置。
完成效果如下:
【JIONEY】掌控版+遥传感器   实现数字华容道小游戏图1

file:///C:/Users/JIONEY/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg

2、 设计数字位置关系
根据3X3的方格找出位置编号与行列位置关系。布局如下:

  
0
  
1
2
3

4
5
6

7
8
9
file:///C:/Users/JIONEY/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg
行列关系找到间隔21像素比较适合,同时显示位置转换成i j 行列关系。
0  è   i=0 j=0;   
1  è   i=1 j=0;      2  è   i=2  j=0;     3  è   i=3 j=0;
4  è   i=1 j=1;      5  è   i=2 j=1;     6  è   i=3  j=1;
7  è   i=1 j=2;      8  è   i=2  j=2;     9  è   i=3  j=2;
file:///C:/Users/JIONEY/AppData/Local/Temp/msohtmlclip1/01/clip_image006.jpg
推算出行列与位置编号N的关系为 N=i+j*3,建立数组Nun=[0,1,2,3,4,5,6,7,8,9]
【JIONEY】掌控版+遥传感器   实现数字华容道小游戏图3

将位置的编号对应数组中的编号。
【JIONEY】掌控版+遥传感器   实现数字华容道小游戏图2


3、 遥控控制数字的位置关系

file:///C:/Users/JIONEY/AppData/Local/Temp/msohtmlclip1/01/clip_image008.jpg
遥杆X 控制左右移动,Y控制上下移动。
读取模拟端口数据,将数据0-4095映射-100,100
当X向左,X坐标增加1,X的范围从0-3;
当Y向上,Y坐标减少1,Y的范围从0-2;
由于0的位置很特殊,所以单独处理。



4、 位置对应数组的数据转存关系:
【JIONEY】掌控版+遥传感器   实现数字华容道小游戏图4
数组有9个位置,遥杆控制位置变换,做数据的位置变换。
用0做为空位,当遥杆位置发生变换时,
将当前位置i j 和数据存储AX,AY,A,松开后,位置变化,存储下一位置的i  j 和数据,存储在BX BY,B,
利用数组位置读取和写入实现两个数据的交换。
【JIONEY】掌控版+遥传感器   实现数字华容道小游戏图5

file:///C:/Users/JIONEY/AppData/Local/Temp/msohtmlclip1/01/clip_image010.jpg

完成效果:








创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(3)
gada888
gada888
学习
Llllllambt
Llllllambt
来学习一下
鍾鐿
鍾鐿
作者
欢迎大家交流指正。。。
- 没有更多了 -