1、根据原理图把元件器正确焊接到电路板上,分清元件器的正负极,以及焊接的正确位置;设计程序,在Keil 750 AHK环境下调试程序以实现预期的功能。3系统详细设计3.1硬件使用说明AT89C51是一种低功耗、高性能的8位单片微型计算机。AT89C51提供以下标准功能:8K字节Flash闪速存储器,256字节内部RAM,40个I/O口线,3个16位定时/计数器,一个6向量两极中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作,掉电方
2、式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。AT89C51采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪存组合在单个芯片中,ATML的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。3.2 AT89C51主要性能参数1、与MCS-51指令系统完全兼容2、4K字节可重擦写FLASH闪速存储器3、1000次擦写周期4、全静态操作:0Hz24MHz5、三级加密程序存储器6、128*8字节内部RAM
3、7、32个可编程I/O口线8、22上16位定时/计数器9、6个中断源10、可编程串行URAR通道3.3 AT89C51引脚配置图 AT89C51芯片的引脚配置如图3.3.1所示图3.3.1 AT89C51框图管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1
4、口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(IL
5、L)这是由于上拉的缘故。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.4 USB接口的通讯原理1USB设备的接入 USB接口中的5V电源不但可以为外接设置提供小电流供应,并且还起
6、着检测功能。当USB设置插入USB接口后,主机的5V电源就会通过USB边线与USB设备相通。USB外设的控制芯片会通过两只10K的电阻来检查USB设备是否接入了主机的USB端口。如果这两个引脚一个为高电平,一个为低电平时就表示USB外设已经正常确连入USB接口,这时外设的控制芯片开始工作,并通过DATA,DATA向外送出数据。这时主机接收数据后,就会提示发现新硬件,并开始安装新硬件驱动。2.USB设备的识别 在USB外设向外送出数据时,其中就包括设备自身的设备名及型号等相关参数,主机就是根据这些信息在显示器上显示出所发现的新硬件的名称型号的。3.5 RS-232接口引脚信号定义RS-232C接
7、口引脚信号定义如下表3-5-1所示:表3-5-1 RS-232C接口引脚信号定义3.6硬件电路设计可控流水灯整体电路原理图设计如图3.6.1所示:图3.6.1 可控流水灯硬件电路图可控流水灯所使用到的元器件列表如表3-6-2所示:表3-6-2 元器件列表名称型号数量电阻220欧9电容1034开关1芯片单片机AT89C51PC机串行口LED灯8电源指示灯二极管2三极管数码显示器按键3.7软件设计流程可控流水灯的软件流程图如图3.7所示:图3.7软件设计流程图3.8源程序代码 CLR P1.0 MOV P0,0EBH MOV R1,#0FFH ;R1表示流水方式,初值为1start: JB P1.
8、4,$ ;判断按钮S1是否按下 CJNE R1,#5,loop MOV R1,#0FFHloop: INC R1 MOV A,R1 RL A ;A乘2 MOV DPTR,#brtab JMP A+DPTRbrtab: AJMP loop1 AJMP loop2 AJMP loop3 AJMP loop4 AJMP loop5loop1: MOV P0,28H MOV DPTR,#tab1 LJMP showloop2: MOV P0,0B3H MOV DPTR,#tab2loop3: MOV P0,0BAH MOV DPTR,#tab3loop4: MOV P0,74H MOV DPTR,#t
9、ab4loop5: MOV P0,0DAH MOV DPTR,#tab5 ;流水方式tab1: DB 00000000B DB 00000001B DB 00000010B DB 00000100B DB 00001000B DB 00010000B DB 00100000B DB 01000000B DB 10000000B DB 11111111Btab2: DB 11111110B DB 11111100B DB 11111000B DB 11110000B DB 11100000B DB 11000000B DB 11111111B tab3: DB 01010101B DB 1010
10、1010B DB 10101010B tab4: DB 11100111B DB 11011011B DB 10111101B DB 01111110Btab5: DB 11111101B DB 11111011B DB 11110111B DB 11101111B DB 11011111B DB 10111111B DB 01111111Bshow: CLR A MOVC A,A+DPTR MOV P2,A ACALL delay CJNE A,#11111111B,show LJMP start;延时程序delay: MOV R4,#100d1: MOV R5,#255d2: MOV R6
11、,#255 DJNZ R6,$ DJNZ R5,d2 DJNZ R4,d1 RET END 3.9调试与结论 在Keil 750 AHK环境下调试程序,编译程序代码。启动软件,建立新项目,将准备好的程序写入,然后在该软件中进行调试,直至调试反映出软件设计语法没有错误,并且可以执行程序。然后通过串口把调试好的程序写入芯片中。一开始由于一些赋值问题,程序虽然没有错误并且可以写入芯片中,但是灯亮的顺序并不是预期的那样,灯亮没有一定的规律性。通过让程序的延时长一点来观察灯是否是按预期的效果闪亮的。通过不断的调试,改变程序中的赋值问题,最终可以调试出预期的效果。结 论一星期的单片机实习结束了,以前虽然有
12、过实习的经验,但单片机实习是一个非常综合的实习。不仅要自己根据课题设计电路图,还需要自己动手焊接所有要用到的元器件,焊接的过程是要非常细心和谨慎的,稍微一不心就会把电路板损坏。当硬件焊接好后,还需要根据电路图来编写程序实现课题所要求的功能。程序编写好后,还需要不断地调试,达到要求。所以这次的单片机实习是一个硬件与软件结合的实习。是培养和锻炼我们综合能力的一个非常好的机会。通过本次实习,让学生基本了解和掌握简单的单片机电路设计的全过程,不断提高分析和解决实际问题的能力,为毕业设计打下良好的基础。由于本学期已学习过了单片机基础,通过这次的单片机实习,使我进一步熟悉了单片的操作技术,加深了对单片机的
13、理论知识的理解和应用水平,我加深了课堂上学的理论知识,也学到了许多书本以外的知识,同时更丰富了自己的经验。提高了动手能力、分析问题和解决问题的能力。通过本次实习,我觉得保持一个认真、细心、谨慎的态度是非常重要的,不管在哪个环节出现一点问题,可能导致无法成功完成本次实习的要求。同时,团队合作的精神是非常重要的。团结的力量是伟大的。通过本次实验使我认识到了课程的重要性,理论知识是非常重要的,如果没有一定的理论基础,实习是无法完成的。通过本次实习也让我发现了自己还存在很多的不足之处,在以后的学习生活中得更加认真、踏实的学习知识。要理论联系实际。通过本次实习让我们对单片机系统的应用有了更加深刻的理解和
14、认识。致 谢首先感谢淮阴工学院计算机工程学院为我们提供的实践机会使我能把理论联系实际,真正做到活学活用。感谢实验室人员提供的实验环境,感谢各个指导老师的耐心指导,当我们不知道怎么做课题时,指导老师耐心地把所有的课题给我们分析了一遍,告诉我们要从哪几方面入手去找资料,去完成这个课题的设计。当我们在焊接时,不知道哪个元器件焊在电路板的什么地方时,老师耐心地给我们讲解,讲解元器件的功能和作用。在这里对各个指导老师表示最诚挚的感谢。在本次课程设计中,还要感谢同学们的帮助,有些在细节上没有注意到的问题给予了指点,加深了对这个课题的理解和印象。在本次课程设计中由于得到了老师和同学的热心帮助才能及时的完成。
15、这让我明白了团结的力量是伟大。同时还要感谢我们这组的组长。在调试程序时非常的耐心去调试,去实现所需求的功能。还要感谢图书馆中提供的书籍和参考资料,使有些问题和疑难能够顺利的得到解决。在为数一星期的时间里,日子尽管过得很是忙碌,但是从中收获了很多很多宝贵的知识和经验。回顾这过去的一周,我收获了很多,也成长了很多,懂得如何去学习以前未曾学过的新思维新方法,懂得了如何去多方位地查找资料,懂得了如何同老师和同学交流和协作相信这次课程设计的体验将成为今后我更多更广学习中的奠基石。再次深深感谢所有支持、鼓励和帮助过我的老师和朋友们。参 考 文 献1 李广弟,朱月秀,冷祖祁.单片机基础. 北京:航空航天大学出版,20072 赵继文.传感器与应用电路设计.北京:科学出版社,20023 徐煜明,韩雁.单片机原理及接口技术M.北京:电子工业出版社,2005.14 张鑫.单片机原理机及应用.北京:电子工业出版社,2008(5)5 何立民.单片机应用技术选编.北京:航空航天大学出版,19966 万光毅,严义,邢春香.单片机实验与实践教程M.北京:北京航空航天大学出版社,2006.4
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1