湖南农业大学课程论文
学 院:***班 级:*** 姓 名:***学 号:*** 姓 名:***学 号:***
课程论文题目:单片机技术课程设计之2048游戏开发 课程名称:单片机技术 评阅成绩: 评阅意见:
成绩评定教师签名: 日期: 年 月 日
1
单片机技术课程设计 ——2048游戏开发
摘要:嵌入式系统已经有了近40年的发展历史,它是硬件和软件交替双螺旋式发展的。随着信
息化、智能化、网络化的发展,嵌入式系统技术也将获得广阔的发展空间。本课程设计是以一款高性能的三星芯片s5pv210ah为核心,在Linux环境下生成可执行文件,通过LCD显示屏触摸操作,完成2048游戏开发。通过本课程设计,可以体现嵌入式技术的优越性。
关键词:嵌入式;LCD屏;Linux;游戏开发;
一. 总设计流程
2
打开LCD游戏初始化判断游戏是否结束N判断是否有触摸操作Y进行触摸屏操作图片变换游戏结束3
二、设计要求及内容
(一)c语言源代码编写
经过分析,该游戏的开发主要以下分为五大部分: 1、linux文件IO
通过如下代码,我们将实现linux文件的输入与输出:
fd = open(\if (fd == -1) {
perror(\打开失败 return -1; }
以及在程序结束时,我们使用完该文件关闭文件代码: close(fd);
2、bmp图片格式解析
为实现2048游戏的开发,对图片进行操作是必不可少的,通过找寻一些带数字的BMP格式的图片,将这些图片按照游戏规则显示显示在屏幕上。如下的代码即为如何将一张BMP格式的图片显示在LCD屏幕上。
voidLCD_Draw_Bmp(int x0, int y0, char *bmpname) { intfd; inti = 0; int x, y;
unsigned char pixels[100*100*3];
fd = open(bmpname, O_RDONLY);
lseek(fd, 54, SEEK_SET); read(fd, pixels, 100*100*3); close(fd);
//??ê?í???
for (y = 0; y < 100; y++) {
for (x = 0; x < 100; x++) {
unsigned char r, g, b; int color;
4
相关推荐: