帮忙看一段程序,一个用c语言编写的抢答器,帮忙分析一下这个程序每条指令和整个程序的作用,越详细越好

[复制链接]
查看11 | 回复1 | 2011-6-16 15:07:00 | 显示全部楼层 |阅读模式
#include
#define uchar unsigned char
#define uint unsigned int
void delay(uint);
void sysini(void);
void main(void)
{sysini();
while(1)
{
P2=0x3f;
P2=0x3f;
if(P1!=0xff)
{P2=0x7c;
P3_1=0;
delay(65535);
P3_1=1;
continue;
}
while(P1==0xff);
switch(P1)
{case 0xfe:P2=0x03;break; //1
case 0xfd:P2=0x6d;break; //2
case 0xfb:P2=0x67;break; //3
case 0xf7:P2=0x53;break; //4
case 0xef:P2=0x76;break; //5
case 0xdf:P2=0x7e;break; //6
case 0xbf:P2=0x23;break; //7
case 0x7f:P2=0x7f;break; //8
default: P2=0x7c;
}
P3_1=0;
delay(65535);
P3_1=1;
while(P3_2)
{if(!P3_2) break;
if(!P3_2) break;
if(!P3_2) break;
if(!P3_2) break;
}
}
}
void delay(uint a)
{uint i;
for(i=0;i ;
}
void sysini(void)
{P2=0x00;delay(10000);
P2=0x01;delay(10000);
P2=0x02;delay(10000);
P2=0x04;delay(10000);
P2=0x08;delay(10000);
P2=0x10;delay(10000);
P2=0x20;delay(10000);
P2=0x00;delay(40000);
P2=0x38;delay(40000);
P2=0x00;delay(40000);
P2=0x7b;delay(40000);
P2=0x00;delay(40000);
P2=0x7b;delay(40000);
P2=0x00;delay(40000);
P2=0x01;delay(30000);
P2=0x03;delay(30000);
P2=0x07;delay(30000);
P2=0x0f;delay(30000);
P2=0x1f;delay(30000);
P2=0x3f;delay(30000);
}

回复

使用道具 举报

千问 | 2011-6-16 15:07:00 | 显示全部楼层
这个程序不全,首先看#define ,定义了uchar和uint代表char型和int型无符号数,下面定义了两个函数,再看main函数,首先调用sysini()函数,现在看sysini();函数,P2没有定义,0x是十六进制,后面加的是数,delay();函数也没有定义,后面都是没有定义的东西了...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行