云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 单片机课程设计报告 - 图文

单片机课程设计报告 - 图文

  • 62 次阅读
  • 3 次下载
  • 2025/6/8 6:34:00

direct = MOVE_LEFT; break;

} } else

{ if(endY>startY) // {

direct = MOVE_DOWN; break;

} else

{ direct = MOVE_UP; break;

} } } }

close(fd); return direct; }

char * Get_Bmpfile_Name(intnum) // 输入一个数字,获取该数字相对应的图片 {

if(num==0)

returnbmpfiles[0]; else { inti = 0;

for (i = 0; i< 32; i++) {

if ((1 <

} }

returnbmpfiles[i];

}

17

} /*

LCD_Draw_Point:用来给屏幕上点(x, y)赋值 一个颜色,颜色值为color @x: 这个点的x轴坐标 @y: 这个点的y轴坐标 @color:这个点的颜色值 返回值:

无返回值 */

voidLCD_Draw_Point(int x, int y, int color) {

if (x>=0 && x <800 && y>=0 && y < 480) {

*(plcd + 800 * y + x) = color; } }

void LCD_Clear_Screen(char *bmpname ) // 给屏幕加一个背景图片 { intfd; inti = 0; int x, y;

unsigned char pixels[480*800*3];

fd = open(bmpname, O_RDONLY);

lseek(fd, 54, SEEK_SET); read(fd, pixels, 800*480*3); close(fd);

for (y = 0; y < 480; y++) {

for (x = 0; x < 800; x++) {

unsigned char r, g, b; int color;

b = pixels[i++]; g = pixels[i++]; r = pixels[i++];

18

color = (r << 16) |(g << 8) |(b);

LCD_Draw_Point( x, 480 - y,color); } } } /*

LCD_Draw_Bmp:把bmpname指定的bmp图片文件 显示在屏幕的点(x0, y0)的矩形区域内 */

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;

b = pixels[i++]; g = pixels[i++]; r = pixels[i++];

color = (r << 16) |(g << 8) |(b);

LCD_Draw_Point(x0 + x, y0 + 99 - y,color); } } }

void Game_Init() // 游戏开始的界面 { inti,j;

19

intx,y;

int index_x1=0,index_y1=0; int index_x2=0,index_y2=0;

while(index_x1==index_x2&&index_y1==index_y2) // 用于保证取到的两个点不会重合 {

index_x1=random() % 4; index_x2=random() % 4; index_y1=random() % 4; index_y2=random() % 4; }

for(i=0; i<4; i++) {

x=i*120; for(j=0; j<4; j++) {

y=j*120;

if((i==index_x1&&j==index_y1)||(i==index_x2&&j==index_y2)) LCD_Draw_Bmp(x, y, \else

LCD_Draw_Bmp(x, y, \ } }

matrix_2048[index_y1][index_x1]=2; // 把获得的数交给2048二维数组 matrix_2048[index_y2][index_x2]=2; }

void Zero_b() // 用于把buffer数组里的数全部清零 { inti,j;

for(i=0; i<4; i++) {

for(j=0; j<4; j++) { buffer[i][j]=0; } } }

void Move_left() // 向左移动操作 {

inti,j,k; Zero_b();

20

搜索更多关于: 单片机课程设计报告 - 图文 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

direct = MOVE_LEFT; break; } } else { if(endY>startY) // { direct = MOVE_DOWN; break; } else { direct = MOVE_UP; break; } } } } close(fd); return direct; } char * Get_Bmpfile_Name(intnum) // 输入一个数字,获取该数

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com