完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
能不能帮我看下这个程序,为什么按下s1后没有反应呢
#include #include #include #define uint unsigned int #define uchar unsigned char ***it RCK=P3^4; ***it SCK=P3^5; ***it SIN=P3^3; ***it s1=P3^2; uchar i,keycode,k,aa,temp; uchar row[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0x00}; uchar column[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,0xff}; uchar row1[]={0xff}; uchar column1[]={0x00}; uchar getkey(); void delay(int z)//延时函数 { int x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } struct Snake//蛇的结构体 { uchar x[10]; uchar y[10]; uchar length; uchar direction; // uchar live; }snake; void display(uchar x,uchar y)//显示蛇的函数 { uchar i,temp,temp1,temp2; temp=row[x]; for(i=0;i<8;i++) { temp1=temp&0x80; if(temp1==0x80) SIN=1; else SIN=0; temp<<=1; SCK=0; _nop_(); SCK=1; } temp=column[y]; for(i=0;i<8;i++) { temp2=temp&0x80; if(temp2==0x80) SIN=1; else SIN=0; temp<<=1; SCK=0; _nop_(); SCK=1; } RCK=0; _nop_(); _nop_(); RCK=1; } void init()//初始化 { snake.x[0]=3; snake.y[0]=0; snake.x[1]=3; snake.y[1]=1; snake.length=2; snake.direction=4; TMOD=11; EA=1; ET0=1; TR0=1; TH0=(65535-1000)/256; TL0=(65535-1000)%256; ET1=1; TR1=1; TH1=(65535-5000)/256; TL1=(65535-5000)%256; } void playgame()//移动蛇的函数 { for(k=0;k snake.x[k]=snake.x[k+1]; snake.y[k]=snake.y[k+1]; } // snake.direction=getkey();//判断按下那个键 switch(snake.direction) { case 1:snake.x[1]+=1;break; case 2:snake.x[1]-=1;break; case 3:snake.y[1]-=1;break; case 4:snake.y[1]+=1;break; } delay(5); } uchar getkey() { s1=0; if(!s1) { delay(5); if(!s1) return 1; } else return snake.direction; } void drawsnake() { for(k=0;k<(36*5);k++) { for(i=0;i<=snake.length-1;i++) { display(snake.x[i],snake.y[i]); delay(1); } } } void main() { init(); while(1) { drawsnake(); snake.direction=getkey(); playgame(); } } /*void timer0() interrupt 1 { TH0=(65535-1000)/256; TL0=(65535-1000)%256; for(i=0;i<=snake.length-1;i++) { display(snake.x[i],snake.y[i]); delay(1); } // undisplay(0,0); }*/ /*void timer1() interrupt 3 { TH1=(65535-5000)/256; TL1=(65535-5000)%256; }*/ |
|
相关推荐 |
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
464 浏览 0 评论
478 浏览 1 评论
基于瑞萨FPB-RA4E2智能床头灯项目——1编译环境搭建与点亮驱动ws2812全彩LED
439 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
994 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
1056 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11787 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 14:30 , Processed in 0.595102 second(s), Total 72, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号