中易网

9路抢答器C语言程序

答案:1  悬赏:20  
解决时间 2021-04-27 19:25
  • 提问者网友:时间却是纷扰
  • 2021-04-27 01:52
跪求9路抢答器C语言程序 C语言程序就好 谢谢··!!1
最佳答案
  • 二级知识专家网友:duile
  • 2021-04-27 03:12

#include<reg51.h>
sbit ST_RST=P3^7;
unsigned char seg[10]={0x3f,0x06,0x5b,0x4f,0x66,   //01234    0x6d,0x7d,0x07,0x7f,0x6f};  //56789
main()
{
    P2=0x40;    //-
 while(ST_RST==1);    //没有开始抢答? 
loop1:
    switch(P1)
 {    //    7654 3210  
  case 0xfe: P2=seg[1]; goto loop2;break;  //第1人按下   1111 1110
  case 0xfd: P2=seg[2]; goto loop2;break;  //第2人按下   1111 1101
  case 0xfb: P2=seg[3]; goto loop2;break;  //第3人按下   1111 1011
  case 0xf7: P2=seg[4]; goto loop2;break;  //第4人按下   1111 0111
  case 0xef: P2=seg[5]; goto loop2;break;  //第5人按下   1110 1111
  case 0xdf: P2=seg[6]; goto loop2;break;  //第6人按下   1101 1111
  case 0xbf: P2=seg[7]; goto loop2;break;  //第7人按下   1011 1111
  case 0x7f: P2=seg[8]; goto loop2;break;  //第8人按下   0111 1111
  default:   P2=0x40;    //-
 }   
    goto loop1;
loop2:
    if(ST_RST==0) goto loop1;//复位
    goto loop2;
}


以上是我以前写的C语言,用在单片机上。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息