完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
2个回答
|
|
偶然一天突发奇想想在MCU上实现一个小游戏,综合现有硬件开发资源和开发能力,想来想去贪吃蛇最为合适。
有之前朋友留给我的一块四轴飞行器遥控器的电路板,上面有摇杆按键和OLED瓶。STM32F103R8T6。于是决定在这块板子上开发。 移植UCOS-II 这个就说了,参考正点原子移植的例程,然后拷贝UCOS代码过来,没有什么难度。 写OLED,LED,摇杆按键RCT,24L01驱动 这个也不想多说。没意思。博文后面我会留下我写的工程,也就用了SPI,和ADC。 原理 首先需要OLED屏是一次写八个数据进去,也就是一次在屏幕上显示竖着的八个点,也就是说OLED屏幕,X范围在0-132。Y的范围在0-7,那么我就想了一下,食物的大小和蛇的单位长度在OLED上显示出来就是8x8的点。所以在屏幕蛇的移动范围就是10x8的屏幕空间。 蛇移动的实现原理 我用的是一个大的数组来便是蛇身体的各个位置,一个8位的数据,高四位表示X,低四位表示Y,0号元素是蛇头,然后它根据按键上一次输入的方向来移动,200ms移动一个单位距离。蛇头移动方向的相应的XY坐标运算,然后1号元素等于0号元素,2号等于1号。。。依次类推。最后蛇尾的坐标被丢弃。 当然如果判断吃到食物那么就在数组里面加一个元素,这个元素就是如果没吃到食物就要被丢弃的蛇尾坐标。 操作方法,右摇杆,左右摇选择功能,左摇杆按下进入应用,右摇杆按下退出应用,玩贪吃蛇游戏的时候是左摇杆上下左右来操作,右摇杆移动一下则暂停游戏。按下去退出游戏。 那么下面贴上我的工程和PCB原理图的链接,如果有想法,可以自己找个板子实现一下,不移动要OLED屏,其他的也可以。重点只是原理而已,因为是OLED屏所以显示方面只能这么简单。 https://download.csdn.net/download/weixin_42783751/11226152 |
|
|
|
优秀,可以提供威廉希尔官方网站
支持,微信同
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
2000 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1782 浏览 1 评论
1248 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
825 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1800 浏览 2 评论
2032浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
942浏览 4评论
stm32f4下spi+dma读取数据不对是什么原因导致的?
340浏览 3评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
684浏览 3评论
668浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-3-7 02:52 , Processed in 0.929885 second(s), Total 78, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191