(原创 51单片机+SPI TFT彩屏+按键=贪吃蛇游戏机; 代码、电路图、资料、免费送大家 10
以前玩51单片机玩就玩流水灯啊,按键 18B20什么的, 该发飙了。SHOW一下我最新作品!既然AT89S52 也能玩彩屏、玩贪吃蛇!代码 RAM<6K RAM<100B你可以放心的用AT89S52 玩。
这里的代码很简单。不过游戏规则很多 所有用了好多的ifelse 大家要看清楚咯!
理解代码后可以移植到8*8点阵,或者其他液晶上玩。只要你会点单片机相信你不会错过这个挑战的机会吧!
这个非常适合DIY,对程序水平和有提高,特别是指针和结构体的思想。
其中还有些BUG 我可能没有发现,希望广大同志们,指导检查。
作品中SPI接口彩屏模块 由本站网友(luckroll)提供 :http://item.taobao.com/auction/item_detail-0db2-c758ee4e9c3078cddf95b19fc3e5404f.htm
/*****************觉好玩就顶一下啊**************下次写些更好玩的传上来啊****************/
游戏进行中。。。。。。。。。
http://cache.amobbs.com/bbs_upload782111/files_19/ourdev_490361.JPG
(原文件名:DSC00921.JPG)
玩挂了。。。
http://cache.amobbs.com/bbs_upload782111/files_19/ourdev_490362.JPG
(原文件名:DSC00922.JPG)
蛇好长了哈哈、、、、、、、
http://cache.amobbs.com/bbs_upload782111/files_19/ourdev_490363.JPG
(原文件名:DSC00923.JPG)
终于过关了。。。。。。
http://cache.amobbs.com/bbs_upload782111/files_19/ourdev_490364.JPG
(原文件名:DSC00924.JPG)
点击此处下载 原程序ourdev_490354.rar(文件大小:84K) (原文件名:51单片机贪吃蛇程序.rar)
点击此处下载 演示视频ourdev_490355.rar(文件大小:1.03M) (原文件名:Snake视屏.rar)
点击此处下载 图片ourdev_490356.rar(文件大小:1.26M) (原文件名:照片.rar)
点击此处下载 ourdev_490393.rar(文件大小:5K) (原文件名:贪吃蛇protel 99se格式.rar)
点击此处下载 ourdev_490394.rar(文件大小:36K) (原文件名:贪吃蛇原理图 PDF格式.rar) 沙发一次。 板凳 真好玩 哈哈 顶上去 酷啊 做的这么辛苦,怎么没有几个人回复啊,哎~~~~~~~~~ 顶一下,看能不能移植 顶一下,看能不能移植 100%能够移植,要是移植到 12864 那一定非常好办,
要是8*8点阵的画那 要删掉很多代码咯! 有问题问我
包好! 【9楼】 yong_s 张先永
100%能够移植,要是移植到 12864 那一定非常好办,
--------------------------------------------------
我试试,过两天有好几块液晶屏邮到,我都试试。
先仔细研究一下你的代码,这么小的资源消耗量,值得好好学习一下 以前也在仙林 顶下 既然是彩屏,我觉得可以加上漂亮的背景,用大一点的ram 既然是彩屏,我觉得可以加上漂亮的背景,用大一点的ram 顶 既然是彩屏,我觉得可以加上漂亮的背景,用大一点的ram 嗯!不错! MARK! 强帖要顶 留个记号。 【10楼】 lukeunderwood 潜水的熊猫
移植程序注意:
1、LCD 显示部分需要和我的 LCDxxx.H 统一; 比如 如何点亮一个点,如何熄灭一个点。
画线呢要是还不会你可以照着我代码看看在移植。
2、按键记得照着 我的解法,(用二极管线与)接成中断形式,记得要不然那蛇会很不灵敏。
3、只要 100B的RAM 6K代码很小,完全可以在51上跑起来,不信自己下载来编译一下咯。
【11楼】 stefgq
呵呵你仙林那个学校的呵呵,“南信息” 的不会是我的学长吧!
【13楼】 akong
做成静态的好像是可以,要是做成背景是动态的,一个黑白像素 1 Bit的RAM,彩色的要1 byte,不得了,要好多RAM。
估计要ARM 以K为单位才行啊。 太好了正在研究把贪吃蛇弄到那个27元的彩屏上,没成功。 研究下你的程序。
谢啦! 【21楼】 elecfun 熊
那里出现问题弄不出来呢?我可以给你免费指导一下。
大概过程可以给你讲一下。你可以按着步骤慢慢的写出程序来,我写了3天,每天都像个思考者。因为好多时间都在修正BUG。
我的程序思路:
1、初始化用液晶画出贪吃蛇的活动边框和界面。
2、实现上面功能在,画出条3个点的小蛇,那个蛇是用数组装起来的。
struct
{uchar X;
uchar Y;}
3、开始实现右变行走的程序, 实现方法是 把Snake.X,Snake.Y清零就是 把蛇尾给灭了要不蛇怎么跑呢是把,
然后在开始数组 每个元素 替换为前一个 值这样蛇就跑前一个格子了对吧,
4、蛇运动的方向在 步骤3没结束的时候根据按键的状态,把蛇头移动到相应的位置,那么蛇就能根据按键状态跑了。
5、蛇能跑了,那是漫无天际的跑哦,只要你按键控制它 他就不停的跑咯,那你现在就要给他设定怎么死亡怎么过关
怎么加速等一系列,优美的方案。
6、还有是一个 果子 怎么随机放置,我以前看了论坛有人发了贴用,Keil C51自带的随机数产生函数,不过我发现那个函数
随机性很大,但是每次调用产生的随机数值的顺序都是 一定的晕啊。后来我想就用 定时器的低 4位就好了,果然定时不停的跑
取得值果然很随机,牛B 代码如右:Food.Y=TL1&0X1B;//获得随机数
7、OK了多看看前人牛人的代码,对自己有很大的提高。既然我们都是学生,学习能力还是胜过一切的,因为那能量非常大。./emotion/em097.gif
最后
祝:学习愉快!工作顺利!贪吃蛇成功编写,水平直线提升。多分享多提高!!!!!
送大家一本书那里也有贪吃蛇的代码,还有好多优秀代码,有LCD菜单,飞机游戏。。。。。同志们多顶一下啊./emotion/em059.gif!!!!
点击此处下载 ourdev_490835.pdf(文件大小:5.08M) (原文件名:单片机语言C51应用实战集锦.pdf) 楼主是信息学院的?想不到在这也能碰到校友啊 MARK 好 顶一下.. "you are win!" 这句不符合语法吧?是不是应该为"you win!" or "you are winner!" 路过! 强烈mark 顶起来!! Mark 【27楼】 jn229
呵呵,写程序写晕了,英语不太好呵呵!
改为:YOU HAVE WON!
这样彻底没有问题咯 好东西 哥们 你还在吗? 我现在毕业设计就是这个,我有很多问题想问问你,能家我QQ吗?279345545等待 喜欢~~好玩儿 哈哈 谢谢lz的讲解了。觉得lz还是很热心的一个人。 好东西 我顶 额,是stc的芯片,不过都一样啦,楼主好样的 好样, 不能不顶啊 这个很好,过两天液晶回来试试 顶一个 Mark! 那个TFT屏有资料吗,可否共享? 【43楼】 guochengqiang
积分:152
派别:
等级:------
来自:
那个TFT屏有资料吗,可否共享?
看这里 有屏和模块的资料
http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=3283973&bbs_page_no=1&search_mode=3&search_text=luckroll&bbs_id=9999 呵呵,不错 顶,谢谢分享 这个岂不是拿彩屏当黑白屏用了,浪费啊 You are win!是错误的 应该是 You win!没有中间的系动词,细节,注意细节 mark... 谢谢啊 ding............................. 好东西 标记 如果我想用计算机操作,该怎么样实现呢? 楼主好啊,谢谢 很不错啊楼主 楼主还在吗?我现在课程设计要做这个 有很多的问题要请教你! 能加我QQ吗365488823 谢谢啦! 好啊 proteus找不到那个LCD 挺不错的, 楼主还在不?能加我QQ吗有问题想请教你一下365488823 LZ
在做的时候 TFT模块直接焊接就可以吗
TFT驱动程序有吗 拜倒 帮顶! 顶一下.. 送大家一本书那里也有贪吃蛇的代码,还有好多优秀代码,有LCD菜单,飞机游戏。。。。。单片机语言C51应用实战集锦.pdf
记号,帮顶上去。 支持,准备自己写一个 MARK Mark 好东东. bucuo 牛人!!!! 建议下载看看 MARK 顶起,很好的资料,正需要! 顶 不错不错,顶一下! 呵呵资源很不错,谢谢楼主! 牛人. 感谢楼主!!先收下了!! 牛人,不顶不行 顶,标记一下 mark 回复【楼主位】yong_s 张先永
-----------------------------------------------------------------------
Mark mark 顶一个,好玩又能学东西 好东西 强,顶一个~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 回复【9楼】yong_s 张先永
-----------------------------------------------------------------------
老大这个怎么用12864玩啊能不能给个电路图和需要改的程序 lz能加我qq 823942720 LZ很热心啊,顶
不过貌似此贴后就很少来本坛了,窝居了 赞一个 太牛啦 学习学习 我有个并口的TFT彩屏不知道能否帮忙写一个 MARK 不错,mark 强人! 求救,这个程序移植到ILI9325控制的,8位并行TFT屏幕,行不行? 回复【20楼】yong_s 张先永
-----------------------------------------------------------------------
你好,这个程序移植到ILI9325控制的8位并行TFT屏幕应该如何修改?
可否指导下,谢谢。
^_^ 不错 有时间时间一下 UART_Com 这个包的使用说明 能否提供 好