scratch怎么做按钮代码?
#include#include#define nop() _nop_()#define keyport P1#define ledport P2unsigned char code seg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c ,0x39,0x5e,0x79,0x71}; //普通负数码管段码 void delayms(unsigned int ms) //12M{ unsigned int t; for(;ms>0;ms--) for(t=123;t >0;t--);}unsigned char keyscan(void){ unsigned char temp;密钥端口=0xFF;诺普();诺普();如果(密钥端口!=0xFF){延迟(10); if(keyport!= 0xFF) { sWitch(keyport) { case 0xFE:temp=1;break;案例 0xFD:temp=2;break;案例 0xFB:temp=3;break;案例 0xF7:temp=4;break;案例 0xEF:temp=5 ;break;案例 0xDF:temp=6;break;案例 0xBF:temp=7;break;案例 0x7F:temp=8;break; } } } } return temp ;}void display(unsigned char dat){ LEDport=seg[dat ];}void main(void){ unsigned char num; for(;;) { num=keyscan();显示(数字); }}//根据你的图片,proteus模拟通过,上电后显示0,按第一个键显示1,以此类推。. . //希望能帮到你。 //如果你是MCU的粉丝,可以加我QQ,我们一起进步! //当然,如果你觉得上面的键盘扫描方式效率低,可以试试下面的分时采样方式,效果是一样的。 #include#include#define nop() _nop_()#define keyport P1#define ledport P2unsigned char code seg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c ,0x39,0x5e,0x79,0x71};unsigned char temp;void display(unsigned char dat){ ledport=seg[dat];}void main(void){ TMOD |= 0x01; TH0 = 0xEC; TL0 = 0x78; EA = 1; ET0 = 1; TR0 = 1;对于(;;){显示(温度); }}void Timer0Interrupt(void) 中断 1{ 静态无符号字符 c; TH0 = 0xEC; TL0 = 0x78;如果(密钥端口== 0xFF)c=0; if((c<100)&&(++c==10)) { switch(keyport) { case 0xFE:temp=1;break;案例 0xFD:temp=2;break;案例 0xFB: temp=3;break;案例 0xF7:temp=4;break;案例 0xEF:temp=5;break;案例 0xDF:temp=6;break;案例 0xBF:temp=7;break;案例 0x7F:temp=8;break ; } }
Scartch是妙小程少儿编程入门必学的吗?
不要相信妙小程,骗人的
Scartch是妙小程少儿编程入门必学的吗?
不要相信妙小程,骗人的