电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

基于MSP430F5529俄罗斯方块游戏程序VIP免费

基于MSP430F5529俄罗斯方块游戏程序_第1页
1/15
基于MSP430F5529俄罗斯方块游戏程序_第2页
2/15
基于MSP430F5529俄罗斯方块游戏程序_第3页
3/15
/*基于MSP430F5529俄罗斯方块游戏程序*///作者:詹磊//功能:基于MSP430F5529俄罗斯方块游戏程序//说明:运行环境:TI官方MSP-EXP5529开发板(外接4个带上拉电阻独立按键)//非原创,思路是从51单片机上移植过来的//底层液晶驱动是TI官方提供的LCDAPI//游戏算法部分的底层程序多处已经修改,与原版会有较大的差别//版本:测试版V1.0(基本能流畅运行,但需要进一步的美化和优化)#include"MSP430F5529.h"#include"LCD_102x64.h"#include"main.h"#include"Key.h"#defineMAXHANG20//游戏显示行数#defineMAXLIE16//游戏显示列数#defineMapWide48//地图宽#defineMapHigh60//地图高#defineON0#defineOFF1#defineBIT(n)(1<<(n))volatileuintcubeMap[MAXHANG];//地图显示存存typedefstruct{ucharconst*box;//方块图形字模数据指针ucharcube:4;//方块形态(占用4个位域)ucharstate:4;//方块状态(占用4个位域)charrow;//方块所在行charcolumn;//方块所在列}block;blockthis;ucharliang=11;ucharSpeed=1,Score=0;uinttimeA=0;uchardownflag=0;ucharrandomNumber=0;constucharcube[]={/*■■■■*/0,4,0xe,0,0,2,6,2,0,7,2,0,4,6,4,0,/*■■■■*/0,8,0xe,0,0,4,4,0xc,0,0,0xe,2,0,6,4,4,/*■■■■*/0,0xe,8,0,0,4,4,6,0,1,7,0,6,2,2,0,/*■■■■*/0,0xc,6,0,0,2,6,4,0,6,3,0,2,6,4,0,/*■■■■*/0,6,0xc,0,0,4,6,2,0,3,6,0,4,6,2,0,/*■■■■*/0,0xf,0,0,4,4,4,4,0,0,0xf,0,2,2,2,2,/*■■■■*/0,6,6,0,0,6,6,0,0,6,6,0,0,6,6,0};voiddelay_ms(uintz)//毫秒级延时函数{uinti,m;for(i=z;i>0;i--)for(m=4500;m>0;m--){_NOP();}}//-------------------------------------------////函数名:八位LED灯控制函数//入口:Number:Number哪位为一则哪位LED点亮//出口:Void//功能://-------------------------------------------//voidDigitalLedControl(ucharNumber){if(Number&BIT7)P1OUT|=BIT0;elseP1OUT&=~BIT0;if(Number&BIT6)P8OUT|=BIT1;elseP8OUT&=~BIT1;if(Number&BIT5)P8OUT|=BIT2;elseP8OUT&=~BIT2;if(Number&BIT4)P1OUT|=BIT1;elseP1OUT&=~BIT1;if(Number&BIT3)P1OUT|=BIT2;elseP1OUT&=~BIT2;if(Number&BIT2)P1OUT|=BIT3;elseP1OUT&=~BIT3;if(Number&BIT1)P1OUT|=BIT4;elseP1OUT&=~BIT4;if(Number&BIT0)P1OUT|=BIT5;elseP1OUT&=~BIT5;}//-------------------------------------------////函数名:显存清空函数//入口:Void//出口:Void//功能:清空显存//-------------------------------------------//voidDisplayRamClear(){uchari;for(i=0;i<20;i++){cubeMap[i]=0x0;}}//-------------------------------------------////函数名:两位十进制数字显示函数//入口:Row:显示的行数//Column:显示的列数//Number:需要显示的数字<100&&>=0//出口:Void//功能://-------------------------------------------//voidNumber2BitDisplay(ucharRow,ucharColumn,ucharNumber){uchartempShi,tempGe;tempShi=Number/10;tempGe=Number%10;Dogs102x6_charDraw(Row,Column,tempShi+'0',ON);Dogs102x6_charDraw(Row,Column+6,tempGe+'0',ON);}//-------------------------------------------////函数名:游戏背景函数//入口:Void//出口:Void//功能:绘制游戏背景地图//-------------------------------------------//voidGameBackground(){uchari;for(i=0;i

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

基于MSP430F5529俄罗斯方块游戏程序

您可能关注的文档

确认删除?
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群