找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 9939|回复: 7
打印 上一主题 下一主题
收起左侧

arduino贪吃蛇详细版

  [复制链接]
跳转到指定楼层
楼主
3月底就得专升本了,天天看书,女票天天在家闲着,哎,生活有点累啊(心累,别多想)。乏的时候就逛逛论坛,前几天看见这个51hei社区有人做了个贪吃蛇的游戏,,还有一堆评论说没接线图,按键没反应等等,我这整理的都比较详细,看完记得点点我,各位老铁。
这是按键部分
  1. #define UP 5//定义方向键上为Arduino上的D5号引脚
  2. #define DOWN 4//定义方向键上为Arduino上的D4号引脚
  3. #define LEFT 3//定义方向键上为Arduino上的D3号引脚
  4. #define RIGHT 2//定义方向键上为Arduino上的D2号引脚
  5. #define A 8//定义方向键上为Arduino上的D8号引脚
  6. #define B 9//定义方向键上为Arduino上的D9号引脚(暂时不用)

  7. 用的arduino nano
  8. 开机显示的界面文字需要的大佬自己改吧,我反正是为了装逼改的自己网名Formatmemory,哈哈
  9. /***********************************************/
  10. void welcome()
  11. {
  12.    u8g.firstPage();//第一页显示
  13.    do
  14.    {
  15.      u8g.setFont(u8g_font_gdr14r);//坐标函数    gdr14r是字体,这个也可以自己改
  16.      u8g.setPrintPos(0, 20);
  17.      u8g.print("Snake Game");//这里可以自己下载程序后根据自己需要改
  18.      u8g.setPrintPos(0, 38);
  19.      u8g.print("             v2.0");//这里可以自己下载程序后根据自己需要改
  20.      u8g.setFont(u8g_font_9x18);
  21.      u8g.setPrintPos(0, 55);
  22.      u8g.print("Formatmemory");//这里可以自己下载程序后根据自己需要改
  23.    } while (u8g.nextPage());
  24. }
  25. /***********************************************/
复制代码
我已经解决了按键没反应的问题,原来社区里的那个同学函数不完整,但是能编译通过。。。。坑
这个游戏速度开始稍微快的,碰到界限会挂掉,吃完一个豆会加5分
原作者中D9接口(B游戏键)没有定义,可以自己开发(我的想法是改成一个返回键或者开机键)有会改的大神改完能发给我一下吗。。嘿嘿
这里是选择player后显示的信息
//使用说明(player)主函数
void tetrs()
{
   int flag = 1;
   while (flag)
   {
       u8g.firstPage();
       do
       {
            u8g.setFont(u8g_font_9x18);
            u8g.setPrintPos(1, 20);
            u8g.print("1.UP:chose1");//这里可以自己下载程序后自己改 尽量字符别太长
            u8g.setPrintPos(1, 35);
            u8g.print("2:start is:A");  //这里可以自己下载程序后自己改
            u8g.setPrintPos(1, 50);
            u8g.print("3.enjoy it");//这里可以自己下载程序后自己改

==接线方式==
OLED显示屏                       Arduino
VCC                                       5V
GND                                     GND
SDA                                        A4
SCL                                         A5

———————————————-
按键                                   Arduino
上                                         D5
下                                         D4
左                                         D3
右                                         D2
A(开始/确定键)                 D8
B(暂无,可不接)               D9

按键一边接开发板输出口,另一边接Gnd,这几个键可以共地,方便。
编译时可能没下载过U8glib库的会提示错误,在IDE里的"添加库”里下载这个库,装完重新烧录就OK了,有问题留言

psb (1).jpg (125.42 KB, 下载次数: 151)

psb (1).jpg

psb (2).jpg (105.83 KB, 下载次数: 154)

psb (2).jpg

psb.jpg (173.16 KB, 下载次数: 159)

psb.jpg

QQ图片20180119181808.png (70.1 KB, 下载次数: 137)

QQ图片20180119181808.png

tanshishe.zip

2.59 KB, 下载次数: 100, 下载积分: 黑币 -5

评分

参与人数 2黑币 +115 收起 理由
xljxlj + 15 很给力!
admin + 100 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏6 分享淘帖 顶2 踩
回复

使用道具 举报

沙发
ID:277903 发表于 2018-1-30 10:50 | 只看该作者
你好,我玩的时候发现几个问题
1.食物有概率在蛇的身体内生成
2.菜单有BUG
3.速度通过分数的变化,可是我看不出速度0和速度30的区别(目前我最多玩到速度30)
回复

使用道具 举报

板凳
ID:330315 发表于 2018-5-15 16:09 | 只看该作者
很有意思的制作
回复

使用道具 举报

地板
ID:343057 发表于 2018-6-1 18:25 | 只看该作者
请问下除了Arduino还需要哪些具体的硬件呢
回复

使用道具 举报

5#
ID:352884 发表于 2018-6-16 17:45 来自手机 | 只看该作者
除了主板,还需要什么?
回复

使用道具 举报

6#
ID:235954 发表于 2021-1-20 09:08 | 只看该作者
createskyblue 发表于 2018-1-30 10:50
你好,我玩的时候发现几个问题
1.食物有概率在蛇的身体内生成
2.菜单有BUG

     food_x = random(0,(box_x_length-2)/3);//x轴随机生成
     food_y = random(0,(box_y_length-2)/3);//y轴随机生成

对于随机生成的点,应该进行筛选的
回复

使用道具 举报

7#
ID:880277 发表于 2021-1-25 00:52 | 只看该作者
请问一下,使用的是摇杆还是按钮?
回复

使用道具 举报

8#
ID:53978 发表于 2021-3-3 18:35 | 只看该作者
感谢分享 下载学习一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表