【单片机开发】基于stm32的掌上游戏机设计(终章)
发布日期:2021-05-08 05:11:13 浏览次数:20 分类:精选文章

本文共 2833 字,大约阅读时间需要 9 分钟。

(一)背景介绍

OK到目前位置这个掌机的代码算是,写完了,美中不足的是在玩俄罗斯方块的时候得把其他任务注释掉,不然空间不够。

(二)软件设计

最后就是main函数了

#include "delay.h"#include "key.h"#include "sys.h"#include "usart.h"#include "lcd.h"#include "gui.h"#include "Picture.h"#include  "music.h"#include "24cxx.h"#include "FILE.h"#include  "SNAKE.h"#include "BOX.h"int main(void){       u8 key,ps2value;    uart_init(9600);    delay_init();//Delay init.	OnUart_GPIO();	     KEY_Init();	LCD_Init();	   //液晶屏初始化    LCD_Clear(BLACK); //清屏低功耗 /**************************************************************************	功能:初始化界面,按下一键自动进入	作者:杨越    时间:2019/5/14	***************************************************************/		  while(1){   	        		key=0;	while(key!=1)	{   		key=KEY_Scan();		}	    music1();					delay_ms(10);    Fullscreen_showimage(gImage_WHU);	delay_ms(300);	LCD_Clear(WHITE); 	 	GUI_DrawFont32(30, 30,BLACK, WHITE, "自",0);	GUI_DrawFont32(62, 30,BLACK, WHITE, "强",0);    delay_ms(100);    LCD_Clear(WHITE);		GUI_DrawFont32(30, 30,BLACK, WHITE, "弘",0);	GUI_DrawFont32(62, 30,BLACK, WHITE, "毅",0);    delay_ms(100);	LCD_Clear(WHITE);	GUI_DrawFont32(30, 30,BLACK, WHITE, "求",0);	GUI_DrawFont32(62, 30,BLACK, WHITE, "是",0);    delay_ms(100);	LCD_Clear(WHITE);    GUI_DrawFont32(30, 30,BLACK, WHITE, "拓",0);	GUI_DrawFont32(62, 30,BLACK, WHITE, "新",0);	delay_ms(100);    LCD_Clear(WHITE);		Gui_StrCenter(0, 0,RED, WHITE, "终有一天",16,0);	Gui_StrCenter(0, 16,RED, WHITE, "我们都会成为",16,0);	Gui_StrCenter(0, 32,RED, WHITE, "那个最好的自己",16,0);	delay_ms(100);    LCD_Clear(WHITE);	Gui_StrCenter(0, 0,YELLOW, WHITE, "欢迎使用",16,0);	Gui_StrCenter(0, 18,YELLOW, WHITE, "傻妞牌手机",16,0);    delay_ms(500);    /**************************************************************************	功能:菜单显示界面	作者:杨越    时间:2019/5/14	***************************************************************/	LCD_Clear(WHITE);	LCD_ShowNum(0,0,1,1,16);	LCD_ShowNum(0,16,2,1,16);	LCD_ShowNum(0,32,3,1,16);	LCD_ShowNum(0,48,4,1,16);	LCD_ShowNum(0,64,5,1,16);	LCD_ShowNum(0,80,6,1,16);	LCD_ShowNum(0,96,7,1,16);	LCD_ShowNum(0,108,8,1,16);			Show_Str(8, 0, BLACK,WHITE,"拨号",16,0);	Show_Str(8, 16, BLACK,WHITE,"文件管理",16,0);	Show_Str(8, 32, BLACK,WHITE,"发送短信",16,0);    Show_Str(8, 48, BLACK,WHITE,"查看短信",16,0);	Show_Str(8, 64, BLACK,WHITE,"音乐播放",16,0);	Show_Str(8, 80, BLACK,WHITE,"贪吃蛇" ,16,0);    Show_Str(8, 96, BLACK,WHITE,"俄罗斯方块" ,16,0);	Show_Str(8, 108, BLACK,WHITE,"体感游戏" ,16,0);	key=0;while(key==0){   	key=KEY_Scan();} 	switch(key)  {   	  case 1: printf("尚未开发");break;//	  case 2: FILE_TASK();break;	  case 3: printf("尚未开发");break;	  case 4: printf("尚未开发");break;	  	  case 5: MUSIC_TASK();break;//	  case 6: SNAKE_TASK();break;	  case 7: BOX_TASK();break;      case 8: printf("尚未开发");break;	  case 9: printf("尚未开发");break;	 	 default : printf("瞎搞");break;}		}}

(三).掌上游戏机使用说明

1)打开电源

2)在矩阵键盘按1开机
3)开机完成后在用矩阵键盘选择
4)开始愉快的玩耍吧

如果想要源码,我已经打包好放在我的资源

上一篇:【单片机开发】emwin莫名奇妙死机的原因总结以及解决方案
下一篇:【单片机开发】基于stm32的掌上游戏机设计 (俄罗斯方块)

发表评论

最新留言

很好
[***.229.124.182]2025年04月06日 23时31分13秒