单片机实验报告课程名称单片机技术与应用实验名称8051单片机最小系统设计与制作专业光电信息工程班级光电121班学号050312109050312113050312122050312133姓名冯晓飞蒯玄汪洋朱永元实验地点躬行楼528实验日期2015.4.9常熟理工学院课程设计报告第1页8051单片机最小系统设计与制作实验目的1、掌握采用KeiluVision集成开发环境下单片机程序的编辑、编译、连接方法;2、掌握程序的下载(烧写);3、熟悉器件,掌握单片机最小系统的设计与制作;器件清单编号仪器设备数量单位1WD990微机电源1个2元器件1个3程序下载工具1套4万用表1套5示波器1台6面包板连线若干根7镊子1把8一字小螺丝刀1把9面包板1块实验流程操作图常熟理工学院课程设计报告第2页图一实验操作流程图实验内容进行两个按键控制8个发光二极管的跑马灯控制相关硬件与软件设计,并完成制作与调试。具体步骤:1、软件:在Keil环境下编写程序,生成.hex文件,通过Proteus(SY1_Proteus_test)进行功能仿真;2、硬件:根据设计的硬件电路与器件清单领取器件,进行面包板电路搭建;3、调试:采用编程器进行程序烧写,并将烧写好的芯片放到设计系统中进行实物验证;采用万用表、示波器等仪器进行辅助测试。1.软件部分C语言程序#includereg51.h#defineDELAY_1S40000sbitk1=P1^0;sbitk2=P1^1;voiddelay(unsignedintn){unsignedinti;for(i=0;in;i++);}voidmain(){unsignedchard[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};chari=0;while(1){if(k1==0){for(;k2!=0&&i8;i++){P2=d[i];delay(DELAY_1S);if(i==7){i=0;i--;}}}if(k2==0){for(;k1!=0&&i-1;i--){P2=d[i];delay(DELAY_1S);if(i==0)常熟理工学院课程设计报告第3页{i=8;}}}}}2.硬件部分实验原理图图二最小系统原理图3.调试部分调试采用ISPlay1.3进行程序烧写,小心操作并将烧写好的芯片放到设计系统中进行实物验证原理图所对应的实物图,及时发现处理问题。在搭线的过程中,我们将电源指示灯放在了最后,先进行了实验,成功的实现了功能,但是加入电源指示灯之后却出现了问题,经过检查后发现是复位电路的电源没有接上,接常熟理工学院课程设计报告第4页上后成功解决了问题。可是当我们以为已经完成时,老师发现了问题,即当切换跑马灯方向时,我们的程序决定的是从头开始执行闪烁,而老师要求的是从当前闪烁灯开始切换,所以我们又对程序进行了修改,最终成功实现了该功能。实验实物图图三实物图实验小结通过这次实验,结合所学知识,完成了KeiluVision集成开发环境下单片机程序的编辑、编译、连接方法,掌握了单片机最小系统的设计与制作,我们在Keil环境下编写了程序并通过Proteus(SY1_Proteus_test)进行了功能仿真,在面包板上搭建了2个按键控制8个发光二极管的跑马灯的设计,本次试验并不是很难,比较难的地方就是搭线,既要考虑是否搭错,也要考虑美观问题,怎样排版,所以耗费的时间相对多些,这也是我们不熟练造成的,同时我们的分工也不是很明确,毕竟初次合作做一个东西,相信以后动手实践的多了会好很多。常熟理工学院课程设计报告第5页