4008-443757
当前位置: 主页 > 我要项目 > 51单片机项目实战---贪吃蛇(测试版)
51单片机项目实战---贪吃蛇(测试版) 发布时间:2019-12-03

  点阵里面就是一些二极管啦,通过纵横交叉连接,横8竖8,每个交叉点都接一个二极管。这里给大家找到一个点阵的实物图

  我想大家看到这个图就应该知道如何去点亮一个点阵了。假如要点亮最左上角那个,那么9号引脚拉高,13号引脚拉低,这样既可。

  数组x,y分别存放每一个点的横纵坐标,length为蛇的长度,direction为蛇前进的方向

  2、坐标系:点阵的左下角为点(0,0),横纵坐标都是正向增长,P2控制横坐标;P0控制纵坐标。通过坐标可以找到点阵中点的位置,然后将其点亮

  假设现在有第2个点的坐标x[2] = 1, y[2] = 2,那么点亮这个点的方式为

  3、按键产生外部中断,在中断里判断按下那个方向get_direction(),并且同时设置坐标set_location()

  4、定时器每隔1s就应该更新位置,因为蛇要不停的前进。定时器不需要更新方向,因为方向只有按键才会改动,定时器用前一步的方向

  贪吃蛇要求系统能迅速响应按键,因此轮询的方式并不可取,只有靠外部中断。然而51只有2个外部中断,我们起码需要4个方向键,这样就不能一个按键配一个外部中断,通过使用4输入与门,将所有按键状态集合在一起,然后送给外部中断0。我们将4个按键都接在与门,只要有一个按下,那么与门的输出就会产生一个下降沿,从而产生外部中断。

  //蛇的结构体,x为横坐标,y为纵坐标,length为蛇的长度,direction为蛇的前进方向

【感兴趣,请留言】
姓名:
联系方式:
联系方式:

提示:感谢您的支持,提交成功后工作人员将尽快与您取得联系!

相似项目
  • 51单片机:比较2个有符号数的大小
    ,试比较它们的大小,将较小的数存放在30H单元,较大的数存放...
    融资资金:
    所属行业:
  • 51单片机项目实战---贪吃蛇(测试版
    点阵里面就是一些二极管啦,通过纵横交叉连接,横8竖8,每个...
    融资资金:
    所属行业:
您使用的浏览器版本过低,不仅存在较多的安全漏洞,也无法完美支持最新的web技术和标准,请更新高版本浏览器!!
留言上传成功 感谢您的支持
确 定