东北石油大学电子科学与技术专业生产实习
图3-4 回到初始状态
由图3-4可知,当按下K3键之后,程序又回到了设定LED的状态。
3.3 本章小结
由实验结果可以看出,本次单片机课程设计已达到预期要求,电路工作稳定,满足设计要求。在整个设计过程中,程序设计与调试最为复杂,出现过按键灯不亮,没有出现滚动流水等现象等一系列程序问题。但最终在不断地检查、调试之后,问题也逐渐得到解决。最终实现按键控制流水灯的效果。
9
东北石油大学电子科学与技术专业生产实习
总结及体会
本次设计通过对单片机进行编程控制,进而控制外部电路,成功地设计了八个按键控制八盏灯亮灭实现流水灯的效果。深入了解到单片机开发软件Keil的使用,熟悉单片机电路设计,根据实际应用电路对程序进行调试。熟悉单片机硬件开发平台的应用,掌握了单片机编程器、仿真器的使用,能检查和分析软硬件故障。体会到单片机内部资源的功能使用,以单片机开发板现有资源进行应用性设计。
通过这次实习使我进一步弄懂所学到的课本知识,巩固和深化对单片机的结构、指令系统、中断系统、键盘/显示系统、接口技术、系统扩展、定时/控制、程序设计、应用开发、等基本理论知识的理解,提高单片机应用于技术的实践操作技能,掌握单片机应用系统设计、研制的方法,培养利用单片机进行科技革新、开发和创新的基本能力,为毕业后从事与单片机相关的工作打下一定的基础。
10
东北石油大学电子科学与技术专业生产实习
参考文献
[1] [2] [3] [4] [5] [6] [7] [8]
童诗白,华成英.模拟电子技术基础(第四版)[M].北京:高等教育出版社,2006. 阎石.数字电子技术基础(第五版)[M].北京:高等教育出版社,2006. 韩建,全星慧,周围.电子技术课程设计指导[M].哈尔滨:哈尔滨工程大学出版社,2014.
黎小桃.数字电子电路分析与应用[M].北京: 北京理工大学出版社,2014. 高吉祥. 电子技术基础实验与课程设计[M].北京:电子工业出版社,2002. 陈明义. 电子技术课程设计实用教程(第3版) [M]. 长沙:中南大学出版社,2010.
程春雨. 模拟电子技术实验与课程设计[M]. 北京:电子工业出版社,2016. 宋雪松,李东明,崔长胜. 手把手教你学51单片机(C语言版)[M]. 北京:清华大学出版社,2014.
11
东北石油大学电子科学与技术专业生产实习
附录:
#include
unsigned char LED=0x00,LED1=0x00; unsigned char x=0; unsigned char KeyValue;
unsigned char A1=0x00,A2=0x00,A3=0x00,A4=0x00,A5=0x00,A6=0x00,A7=0x00,A8=0x00; void Delay10ms(unsigned int c); void KeyDown(); void kongzhil(); void kongzhi2(); void main(void)
{ TMOD=0x01; //定时器工作状态为1
TH0=(65536-50000)/256; TL0=(65536-50000)%6; EA=1; //开总中断 ET0=1; //开定时器中断 TR0=1; //开启定时器 while(1) { int n=0;
if(k1==0) {
Delay10ms(1); if(k1==0)
n=1;
12
//矩阵键盘检测
东北石油大学电子科学与技术专业生产实习
} if(k3==0) { Delay10ms(1); if(k3==0)
n=3;
} if(k4==0) { Delay10ms(1); if(k4==0)
n=4; } switch(n) { case 1:KeyDown();break; case 3:kongzhil();break; case 4:kongzhi2();break; default:break; } }
}
void KeyDown(void) { int k=1; while(k) { char a=0; KEY=0x0f; if(KEY!=0x0f) {
Delay10ms(1); //延时消抖
13