P2=0xff; P0=table[t]; P2=0x00; P0=0x00; delay(5); }
void init() {
P2=0xbf;P0=0xbf; TMOD=0x01;
TH0=(65536-50000)/256; TL0=(65536-50000)%6; EA=0; ET0=1; TR0=1; }
void keyscan() { we=0; if(s1==0) {
delay(5); if(s1==0) {
while(!s1); EA=1; P2=0xbf;P0=0xff; t=30; a=1; t1=10;
c=0;
}
}
7
if(c==0) {
P3=0xfd; num=P3; num=num&0xf0; if(num!=0xf0) {
delay(5); if(num!=0xf0) { while(P3!=0xfd); c=1; EA=0;
if(num==h[3]) t1=1; if(num==h[2]) t1=2; if(num==h[1]) t1=3; if(num==h[0])
t1=4;
}
}
P3=0xfb; num=P3; num=num&0xf0; if(num!=0xf0) {
delay(5); if(num!=0xf0) { while(P3!=0xfb);
c=1;
8
EA=0;
if(num==h[3]) t1=5; if(num==h[2]) t1=6; if(num==h[1]) t1=7; if(num==h[0])
t1=8;
}
}
}
} void main() { init(); while(1) { keyscan();
if((a==1)&&((t>0)&&(t<=30))) {
write_sx(); } if(t==0)
{ EA=0; t=0;
t1=10;
}
}
}
void timer0() interrupt 1 {
TH0=(65536-50000)/256;
9
TL0=(65536-50000)%6;
count++;
if(count==10) {
P2=0xbf;P0=0xbf; } {
count=0;
}
t--; }
if(count==20)
五、结论与心得
通过这次课程设计,我深刻的认识到自己在许多方面的不足。通过编程,我学会了如何独立的写出程序,提高了自己的分析解决问题的能力,并且使自己所学的知识与实践相结合,应用到实践当中。
在刚开始的时候无从下手,感觉有些茫然,但同学和老师给予我很大的帮助,每当设计过程中遇到困难时,老师都会细心的教导我,耐心的为我讲解,同学也热心帮助我,为我排忧解难,让我深深的体会到了团队的力量和重要性。 通过设计,我也学到了很多书本上没有的知识。在设计当中遇到了很多问题,但通过查找资料,克服了这些问题,提高了自己在实际当中解决问题的能力。
在此我感谢学校给了我们的这次实践机会。在这里为奔波劳累在这次设计中老师便是感谢,老师们不辞劳苦,不在乎身体的不适认真为我们讲解并为我们知道实际操作过程中的问题。让我们一步一步有序完成此次课程设计。在这里对我们的廖老师、曹老师说声谢谢,谢谢你们,你们辛苦了!也祝你们身体健康工作顺利
六、参考文献
[1] 张毅刚.《单片机原理及应用》.高等教育出版社,2009 [2] 谭浩强.《C程序设计教程》.清华大学出版社
[3] 周兴华.《单片机C程序设计》.北京航空航天大学出版社
10
教师评语: 教师评语及设计成绩 课程设计成绩: 指导教师:(签名) 日期:年月日
11