• 大小: 3.86MB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2023-10-10
  • 语言: C/C++
  • 标签: Linux  嵌入式  

资源简介

基于GEC6818平台,处理器CPU:S5P6818(八核)内核:Cortex-A53运行内存:1G储存(nandflash):4G。设计制作出了这款有开机动画、登录界面、电子相册和2048小游戏的整合。本系统以c语言知识为主,运用Unix环境高级编程,最终完成了各个功能函数的调用与整合。主要功能有开机动画、登录界面、相片浏览、和2048游戏。相片浏览主要功能有:上一张、下一张和退出功能。2048小游戏也类似。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

int lcd_fd ts_fd;
int *lcd_ptr;
int game_over;

struct bmp_header { //14
unsigned char type[2];
unsigned long size;
unsigned short reserverd1;
unsigned short reserverd2;
unsigned long offbit;
}__attribute__((packed)); //字节对齐

struct bmp_info { //40
unsigned int size;
unsigned int width;
unsigned int height;
unsigned short planes;
unsigned short bitcount;
unsigned int bitcompression;
unsigned int sizeimg;
unsigned int xpelspermeter;
unsigned int ypelspermeter;
unsigned int biclrused;
unsigned int important;
}__attribute__((packed)); //字节对齐


//数组初始化,将所有的图片保存在一个数组中
const char *bmp_files[] = {
“/pic/bmp/digit_2.bmp“ “/pic/bmp/digit_4.bmp“
“/pic/bmp/digit_8.bmp“ “/pic/bmp/digit_16.bmp“
“/pic/bmp/digit_32.bmp“ “/pic/bmp/digit_64.bmp“
“/pic/bmp/digit_128.bmp“ “/pic/bmp/digit_256.bmp“
“/pic/bmp/digit_512.bmp“ “/pic/bmp/digit_1024.bmp“
“/pic/bmp/digit_2048.bmp“ “/pic/bmp/digit_4096.bmp“
“/pic/bmp/digit_8192.bmp“ “/pic/bmp/digit_16384.bmp“
“/pic/bmp/digit_32768.bmp“ “/pic/bmp/digit_65536.bmp“
};

//棋盘矩阵的初始化
int array[4][4] = {0};

//根据要显示的数字来返回对应的文件名的下标
int get_bmp_files_index(int x)
{
if (x == 2) {
return 0;
}else if (x == 4) {
return 1;
}else if (x == 8) {
return 2;
}else if (x == 16) {
return 3;
}else if (x == 32) {
return 4;
}else if (x == 64) {
return 5;
}else if (x == 128) {
return 6;
}else if (x == 256) {
return 7;
}else if (x == 512) {
return 8;
}else if (x == 1024) {
return 9;
}else if (x == 2048) {
return 10;
}else if (x == 4096) {
return 11;
}else if (x == 8192) {
return 12;
}else if (x == 16384) {
return 13;
}else if (x == 32768) {
return 14;
}else if (x == 65536) {
return 15;
}

return -1;
}

//求棋盘矩阵里面有多少个0
int rectangle_get_zero_num()
{
int i j count = 0;
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
if (array[i][j] == 0) {
count++;
}
}
}

return count;
}

int rectangle_set_value(int z int value)
{
int i j count = 0;
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
if (array[i][j] == 0) {
count++;
if (count == z) {
array[i][j] = value;
return 0;
}
}

}
}
}

//触摸屏滑屏算法实现
int get_xy_v2()
{
struct input_event ts;
int x1 = -1 y1 = -1;
int x2 y2;
int x_read = 0 y_read =1;
// x1 y1 x2y2

//2 read coord
while (1) {
read(ts_fd &ts sizeof(ts));

if (ts.type == EV_ABS && ts.code == ABS_X && x_read == 0)   {
if (x1 == -1) {
x1 = ts.value;
}
x2 = ts.value;
x_read = 1;
y_read = 0;
}

if (ts.type == EV_ABS && ts.code == ABS_Y && y_read == 0) {
if (y1 == -1) {
y1 = ts.value;
}
y2 = ts.value;
x_read = 0;
y_read = 1;
}

if (x_read && y_read) {
break;
}

if (ts.type == EV_KEY && ts.code == BTN_TOUCH && ts.value == KEY_RESERVED) {
int num1 =

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-12-10 16:10  新建文件夹\
     目录           0  2017-07-22 10:16  新建文件夹\bmp\
     文件       30054  2016-06-22 15:12  新建文件夹\bmp\digit_1024.bmp
     文件       30054  2016-06-22 15:10  新建文件夹\bmp\digit_128.bmp
     文件       30054  2016-06-22 15:08  新建文件夹\bmp\digit_16.bmp
     文件       30054  2016-06-22 15:16  新建文件夹\bmp\digit_16384.bmp
     文件       30054  2016-06-22 15:07  新建文件夹\bmp\digit_2.bmp
     文件       30054  2016-06-22 15:13  新建文件夹\bmp\digit_2048.bmp
     文件       30054  2016-06-22 15:11  新建文件夹\bmp\digit_256.bmp
     文件       30054  2016-06-22 15:09  新建文件夹\bmp\digit_32.bmp
     文件       30054  2016-06-22 15:16  新建文件夹\bmp\digit_32768.bmp
     文件       30054  2016-06-22 15:08  新建文件夹\bmp\digit_4.bmp
     文件       30054  2016-06-22 15:13  新建文件夹\bmp\digit_4096.bmp
     文件       30054  2016-06-22 15:11  新建文件夹\bmp\digit_512.bmp
     文件       30054  2016-06-22 15:09  新建文件夹\bmp\digit_64.bmp
     文件       30054  2016-06-22 15:17  新建文件夹\bmp\digit_65536.bmp
     文件       30054  2016-06-22 15:09  新建文件夹\bmp\digit_8.bmp
     文件       30054  2016-06-22 15:15  新建文件夹\bmp\digit_8192.bmp
     文件       13145  2019-11-21 11:18  新建文件夹\games_2048.c
     目录           0  2019-11-21 21:26  新建文件夹\gif\
     文件     1152054  2019-11-19 14:49  新建文件夹\gif\0.bmp
     文件     1152054  2019-11-19 14:46  新建文件夹\gif\1.bmp
     文件     1152054  2019-11-19 14:48  新建文件夹\gif\2.bmp
     文件     1152054  2019-11-19 14:47  新建文件夹\gif\3.bmp
     文件     1152054  2019-11-19 14:47  新建文件夹\gif\4.bmp
     文件     1152054  2019-11-19 14:49  新建文件夹\gif\pic.bmp
     目录           0  2019-11-21 22:29  新建文件夹\pic\
     目录           0  2019-11-21 21:26  新建文件夹\pic\bmp\
     文件      240054  2019-11-19 10:19  新建文件夹\pic\bmp\correct.bmp
     文件       30054  2016-06-22 15:12  新建文件夹\pic\bmp\digit_1024.bmp
     文件       30054  2016-06-22 15:10  新建文件夹\pic\bmp\digit_128.bmp
............此处省略39个文件信息

评论

共有 条评论