1、电子行业资料俄罗斯方块程序字符液晶控制函数声时doc 18/CODE SIZE=1845-/CONSTANT SIZE=326-/DATA SIZE=1619/IDATA SIZE=50-/BIT SIZE=11/-/#include #include xwj_lcd16.h/ 字符液晶控制函数声明/#include xwj_lcd6963.h/ T6963C 公用函数#include xwj_hlkey.h/P1口行列式键盘/#include xwj_serial.h/串口函数集#include change.h/数制转换#include xwj_fk.h/俄罗斯方块程序#define ul
2、ongunsigned long#define uintunsigned int#define ucharunsigned charextern void delay(unsigned int x);/-俄罗斯方块内部函数-/void fk_dot(uchar x,uchar y);/显示1个方块点void fk_cldot(uchar x,uchar y);/清除1个方块点void fk_show(void);/显示分数void fk_reffk(void);/刷新方块void fk_refnew(void);/刷新预览方块void fk_refline(yy);/刷新1行背景bitfk_c
3、hk(void);/冲突检查void fk_new(void);/产生新方块void fk_add(void);/方块合并/*/-俄罗斯方块公用函数-/void fk_init(void);/方块初始化void fk_move(unsigned char mode);/移动方块*/-/#define FULLMAP0x0fff/*掩码*/#define LINEGUAN20/*20行过一关*/#define NEWX15/*预览方块X位置*/#define NEWY12/*预览方块Y位置*/#define LINEMAX21/*屏幕最高21行*/uint idata fk_mapLINEMAX
4、+4;/背景映象ucharfk_x,fk_y,fk_r;/方块左右、高度、方向uchar fk_type;/方块形状ucharfk_oldx,fk_oldy,fk_oldr;/方块上次左右、高度、方向ucharfk_newtype,fk_newr;/新方块形状、方向uint score;/总分uint line;/总行数uchar speed;/速度uchar moven;/速度相关计数器uchar automapn;/随机方块的行数bit fk_run;/俄罗斯方坑蜗吩诵?uchar code fk_mod44=/方块模型号,4个方向,4行0,0,7,2,0,1,3,1,0,0,2,7,0,
5、2,3,2,/_|_0,0,6,3,0,1,3,2,0,0,6,3,0,1,3,2,/_|0,0,3,6,0,2,3,1,0,0,3,6,0,2,3,1,/|_0,0,7,4,0,3,1,1,0,0,1,7,0,2,2,3,/|_0,0,7,1,0,1,1,3,0,0,4,7,0,3,2,2,/_|0,0,0,15,1,1,1,1,0,0,0,15,1,1,1,1,/_0,0,3,3,0,0,3,3,0,0,3,3,0,0,3,3,/田字;uchar code strmap49=不错!,真棒!,好极啦!,太棒了!,;/-/void fk_dot(uchar x,uchar y)/显示1个方块点
6、printat(x*3+1, 241-(y-4)*12,);/-/void fk_cldot(uchar x,uchar y)/清除1个方块点/printat(x*3+1, 241-(y-4)*12,);printat(x*3+1, 241-(y-4)*12,);/-/void fk_show(void)/显示分数printat(50, 12,chnint(score,1);printat(60, 12,00);printat(40, 12,得分:);printat(54,36,chnint(line,1);printat(40, 36,行数:);printat(54,60,chnchar(s
7、peed,1);printat(40,60,速度:);printat(54,84,chnchar(automapn,1);printat(40,84,关数:);/-/void fk_reffk(void)/刷新方块uchar i,j;uchar temp;/-/清除原来的方块for (i=0;i4;i+)temp=(fk_modfk_typefk_oldri);for (j=fk_oldx;j=1;/-/显示新的方块for (i=0;i4;i+)temp=(fk_modfk_typefk_ri);for (j=fk_x;j=1;fk_oldx=fk_x;fk_oldy=fk_y;fk_oldr=fk_r;/保存新方块位置/-/void fk_refnew(void)/刷新预览方块uchar i,j;uchar temp;/-/预览方块for (i=0;i4;i+)temp=(fk_modfk_newtypefk_newri);f
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1