南华大学电气工程学院课程设计
void delay(uint z) { uint x,y; for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void write_com(uchar com) { rs=0; lcden=0; P0=com; delay(5); lcden=1; delay(5); lcden=0;
}
void write_date(uchar date) { rs=1; lcden=0; P0=date; delay(5); lcden=1; delay(5); lcden=0;
}
第 14 页 共 24 页
南华大学电气工程学院课程设计
void init() { rw=0; // uchar a; dula=0; wela=0; write_com(0x38); delay(20); write_com(0x0c); delay(20); write_com(0x06); delay(20); write_com(0x01); delay(20);
}
void yes() { uchar a;
write_com(0x80+12); delay(20); for(a=0;a<3;a++) { write_date(table[a]); delay(20);
}
}
第 15 页 共 24 页
南华大学电气工程学院课程设计
void no() { uchar a;
write_com(0x80+0x40+12); delay(20); for(a=0;a<2;a++) { write_date(table1[a]); delay(20);
}
}
void agree() { uchar a;
write_com(0x80); delay(20); for(a=0;a<5;a++) { write_date(table2[a]); delay(20);
}
}
void disagree() { uchar a;
write_com(0x80+0x40); delay(20);
for(a=0;a<8;a++)
第 16 页 共 24 页
南华大学电气工程学院课程设计
}
{ }
write_date(table3[a]); delay(20);
void keyscan() {
if(!ok1)
{ P3=0xfe;
temp=P3; temp=temp&0xf0; if(temp!=0xf0) {
delay(10); if(temp!=0xf0) {
temp=P3;
switch(temp)
{
case 0xee: pass++;
ok1=1; led3=0;
//一号评委已判决。
break;
case 0xde: nopass++;
ok1=1; led4=0;
第 17 页 共 24 页
南华大学电气工程学院课程设计
break; }
while(temp!=0xf0) {
temp=P3; temp=temp&0xf0; beep=0; } beep=1;
} } } if(!ok2)
{
P3=0xfd; temp=P3; temp=temp&0xf0; if(temp!=0xf0) {
delay(10); if(temp!=0xf0) {
temp=P3; switch(temp) {
case 0xed: pass++; ok2=1;
led5=0;
break;
第 18 页 共 24 页