版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目的:本课题为“多台设备自动循环控制,目的在于用发光二极管模拟工厂里的机器设备,通过编程控制8052系列单片机,让这些设备按照要求循环运行。 意义: 1有助于加深我们对操作系统这门课程的理解,我们在课堂上学的都是根底理论知识,对于如何用程序语言来描述所学知识还是有一定难度。通过课程设计,我们可以真正理解其内涵。 2. 有利于我们逻辑思维的锻炼,程序设计能直接有效地训练学生的创新思维、培养分析问题、解决问题能力。即使是一个简单的程序,依然需要学生有条不理的构思。 3. 有利于培养严谨认真的学习态度,在程序设计过程里,当我们输入程序代码的时候,如果不够认真或细心,那么可能就导致语法错误,从而无法得
2、出运行结果。那么,这个我们反复调试,反复修改的过程,其实也是对我们认真严谨治学的一个锻炼。用单片机控制二极管代替现实设备,使其按要求循环运行。8只发光二极管代替8台设备,接在P1口上。2.P3.0和P3.2为控制口,用导线连接开关,用开关控制设备的运行与停止。3.没有按钮按下时,8台设备全部运行,P3.0按钮按下时8只发光二极管以0、1、2 3、4、5、6、7、5、3、1、7、5、3、1、7为一个过程开始循环运行,当P3.2按钮按下时8只发光二极管全部点亮。用一只8段LED数码管同步显示正在运行的设备的编号。本课题由于要求使用8052系列单片机,故在此系列中选择。市场上现使用较多的52系列单片
3、机有Atmel公司生产的AT89C52、AT89S52,以及STC公司生产的STC89C52、STC89S52,比照两家公司的产品可知,STC公司的产品可屡次擦写,一个机械周期只要6个时钟周期,且支持USB在线读写,处理速度优于Atmel公司生产的产品。所以比照后选择使用STC89C52单片机芯片。通过学习和调查市场行情,我们发现,能够用来做显示器使用的有8段数码管、液晶显示屏以及点阵模块等。其中,八段数码管本钱低廉、使用方便、显示明亮,适合显示位数少、线路不复杂的电路;液晶显示屏价格较高,引线较多,不但可以显示数字还能显示文字,可显示范围广,一般多用于需要显示文字或字母的电路;点阵模块不适合
4、做静态显示。因为本课题只需要控制8台设备,位数少且用数码管显示方便,所以我们的显示元器件选用8段LED数码管。由于本课题要求在P1口控制8只LED发光二极管,故需要选用限流电阻来限制流过发光二极管的电流,假设选用电阻过小,那么二极管容易因过流而烧掉,假设选用电阻过大,那么二极管容易因电流过小而发光暗淡,所以选用电阻不能太大或太小。查阅发光二极管各项参数后发现,发光二极管正常发光时电流约为10mA,发光二极管导通电阻很小可忽略不计,那么根据公式R=(E-U)/I-R0可算出,限流电阻阻值在500左右。应选用阻值为的电阻。要想使单片机正常运行,可靠、稳定的电源必不可少,在以往的电子设计中,我们一般
5、制作5V电源,这样可以选择用变压器降日常所用电压降至供我们所用,但此方法耗时且需要更多本钱故放弃。因为我们一般都用到笔记本做课程设计,所以我们选择烧录器作为电源。在确定了单片机芯片、8段LED数码管、限流电阻、电源后,我们还确定选用8只直径mm的LED发光二极管、3只按钮、排针、排阻、导线假设干以及用于单片机最小系统的电容、晶振、电阻等。总体设计框架图如图3-1所示: P0 STC89C52RCP1 RXD INT0RXD、INT0中断控制8台设备数码管显示局部图 3 - 1本设计采用STC89C52RC单片机作为系统控制芯片,单片机接收INT0、RXD传来的中断信号并转变为对8台设备的控制,
6、以8段LED数码管为显示模块,将正在运行的设备编号同步地显示出来,在控制电路中,主要是由两个按钮来指挥设备的运行方式。最小系统包括晶振电路、复位电路和电源局部。图3-2为单片机最小系统。图 3 2 单片机最小系统电路图中断控制模块如图3-3所示。图 3 3 中断控制模块该模块主要由两个按钮组成,其中一个按钮与P3.0口相连,另一按钮与P3.2口相连,两个按钮的公共端接地。当按钮被按下时,与该按钮所接的单片机端口变为低电平,信号传入单片机内,申请中断。单片机将响应中断,根据中断程序控制8台设备的运行方式。设备模块如图3-4所示。图 3 4 设备模块设备模块主要由8只LED发光二极管代替工业现场的
7、8台设备,通过控制发光二极管的亮暗方式从而到达模拟控制工业现场8台设备的目的。8只发光二极管分别于一只500的电阻串联,电阻起限流作用,防止发光二极管因电流过大而烧掉,也防止可能因电流过小而无法正常显示。每只电阻除与发光二极管相连外,另一端与单片机对应P0口相连,从而被单片机所控制。8只发光二极管有一公共端,且接高电平。当P0口输出低电平时,对应的发光二极管点亮。显示模块如图3-5所示。图 3 5 显示模块该模块主要由102排阻和一只8段LED数码管组成。P0口为双向I/o口,要想保证端口能正确地输出高电平,需要在外部加上拉电阻,故使用102排阻作为上拉电阻。在单片机处于输出状态时排阻将P0口
8、电位拉高。由于共阳极数码管使用时需加驱动电路,增加了电路的复杂度和本钱,故我们选用共阴极数码管,其公共端接地。在实际使用时,共阳、共阴极数码管需要用万用表进行区分,且编程时显示代码亦不相同,在这里须注意。系统整体电路如图3-6所示。图 3 6 整体电路图主程序如下:#include<reg52.h> /包含52系列单片机头文件#include<intrins.h> /包含左右移函数的头文件#define uchar unsigned charuchar code DSY_CODE=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,
9、0x6f; /共阴09显示uchar data flag; /设标志位int i,y;sbit aa=P30; /P3.0口为循环控制位,低电平时各设备循环运行sbit bb=P32; /P3.2口为全部工作位,低电平时所有设备均运行 void delay(y) /延时子程序 int z; while(y-) for(z=120;z>0;z-) if(flag=0) break; /主程序运行过程中当产生中断时跳出延时子程序 void int0() interrupt 0 /外部中断0 P1=0x00; P0=0x7f; flag=0; void main() uchar k; IE=0
10、x81; /EA=1开总中断;Ex0=1开外部中断0; P1=0x00; P0=0x7f; SP=0x7B; /堆栈指针复位 while(1) /假设外部中断不产生,那么一直不跳出该局部 flag=1; if(flag=0) break; P1=0x7f; for(i=8;i>0;i-) P1=_crol_(P1,1); /左移函数 k=P1; switch(k) /数码管显示正在运行的设备编号 case 0xfe: P0=0x06; break; case 0xfd: P0=0x5b; break; case 0xfb: P0=0x4f; break; case 0xf7: P0=0x
11、66; break; case 0xef: P0=0x6d; break; case 0xdf: P0=0x7d; break; case 0xbf: P0=0x07; break; default: P0=0x7f; break; delay(500);for(i=8;i>0;i-) P1=_cror_(P1,2); k=P1; switch(k) case 0xfe: P0=0x06; break; case 0xfd: P0=0x5b; break; case 0xfb: P0=0x4f; break; case 0xf7: P0=0x66; break; case 0xef: P
12、0=0x6d; break; case 0xdf: P0=0x7d; break; case 0xbf: P0=0x07; break; default: P0=0x7f; break; delay(500); 主程序流程图如图4-1所示。开总中断和外部中断0P1口输出低电平,8台设备全部运行设定堆栈指针值P3.0口所接按钮是否按下?等待被按下设标志为1判断是否收到中断请求标志跳出主程序进入中断子程序8台设备按控制要求运行,数码管同步显示正在运行的设备的编号NYYN开始中断子程序如下:int0() interrupt 0 /外部中断0P1=0x00;flag=0;while(start);中断
13、子程序流程图如图4-2所示。问题1:将USB烧写器尾部的短路帽子摘掉后插上电脑,程序无法烧写进芯片。解决措施:将烧写器的RX线与芯片上的TXD相连,TX线与芯片上RXD相连后,程序即可烧写进去。问题2:数码管焊接在万能板上后,在8只LED发光二极管正常运行情况下,数码管无法同步正常显示。解决措施:用万用表重新测量数码管的参数后发现勿用了共阳极数码管,在重新换上共阴极数码管后即可。问题3:数码管显示出的数字是乱码。解决措施:检查程序后发现参考代码是用于共阳极数码管的,在更改为共阴极数码管程序后即可。问题4:LED发光二极管发光暗淡。解决措施:自己原配的限流电阻过大,换用学校发的500电阻后,发光
14、强度刚好。问题5:使用Altium Designer软件画PCB时找不到目标元件如排针、排阻、STC89C52单片机、晶振相对应的元件库或封装。解决措施:用其他元件库代替目标元件,实在无法代替的自己制作元件库或封装。问题6:将PCB图中的导线加粗后始终显示绿色错误状态。解决措施:在菜单栏的Design下点击RulesRoutingWidthWidth,在Constraints栏中修改Max Width和Preferred Width两个值即可。万能板搭电路并测试正确后的实物图如图5-1、图5-2所示。 图 5 1 实物图正面 图 5 2 实物图反面运行效果如图5-3所示。 图 5 3 运行效果
15、图结束语经过10多天的设计与制作,我终于较圆满地完成了?多台设备自动循环控制?这一课题。虽然整体看来,一个不怎么复杂的电路花了10多天时间,效率比拟低下,但对于第一次经历这种完整的过程的我来说,其结果还是令人欣慰的。从设计电路到仿真,再到购置元器件,在万能板上搭电路模拟,到用软件画PCB图,再到发送原理图给印制电路板厂家生产PCB板,最终再在做好的PCB板上焊元器件直至完工,其中的艰辛只有我们团队的同学们能够体会得到。我们首先要感谢陆广平老师对我们的悉心指导,她对我们的课题给予了较为详细的讲解,对我们的元器件选择给予了帮助,作为个人,我要感谢我的同学,正是由于每一个人的共同努力才有了我们最终的
16、结果。单片机是很重要的一门课程,老师和一些工作的朋友都曾说过,如果学好一门单片机,就凭这个技术这门手艺找一个好工作也不成问题。尽管我们在课堂学到的内容很有限,但在以后的学习中单片机还需要好好的深入研究和学习,学好了单片机也就多了一项生存的本钱。最后感谢老师对我们的精心指导和帮助,感谢同学们对我的帮助。课题终究会结束,但我们的单片机生涯才刚刚开始,今后一定还将遇到更复杂的课题和更难以解决的问题,我相信,只有依靠团队的力量,我们才能取得成功,只有依靠坚忍不拔的毅力我们才能战无不胜!参考文献1.?单片机控制实训指导及综合应用实例? 张大明 主编 机械工业出版社 2.?单片机原理及应用技术? 陈益飞主
17、编 国防工业出版社 3.?Altium Designer原理图与PCB设计? 周润景 张丽敏 王伟 编著 电子工业出版社 4.?电工电子实习教程?第3版 宋学瑞 主编 中南大学出版社 5.?基于Proteus的8051单片机实例教程? 李学礼 主编 电子工业出版社 6.?Proteus教程电子线路设计、制版与仿真? 朱清慧 张凤蕊 翟天嵩 王志奎 编著 清华大学出版社 7.?21天学通C语言? 王正仲 等编著 电子工业出版社 8.?新概念51单片机C语言教程入门、提高、开发、拓展全攻略? 郭天翔 编著 电子工业出版社 9.?电子线路CAD实用教程?第3版 潘永顺 沙河 编著 西安电子科技大学出
18、版社 附录附录一:多台设备自动循环控制系统设计电路原理图图 附录-1图 附录 1 多台设备自动循环控制系统设计电路原理图附录二:Proteus仿真效果图图 附录-4图 附录 4 Proteus仿真效果图附录三:多台设备自动循环控制系统设计C语言程序清单#include<reg52.h> /包含52系列单片机头文件#include<intrins.h> /包含左右移函数的头文件#define uchar unsigned charuchar code DSY_CODE=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /
19、共阴09显示uchar data flag; /设标志位int i,y;sbit aa=P30; /P3.0口为循环控制位,低电平时各设备循环运行sbit bb=P32; /P3.2口为全部工作位,低电平时所有设备均运行 void delay(y) /延时子程序 int z; while(y-) for(z=120;z>0;z-) if(flag=0) break; /主程序运行过程中当产生中断时跳出延时子程序 void int0() interrupt 0 /外部中断0 P1=0x00; P0=0x7f; flag=0; void main() uchar k; IE=0x81; /EA=1开总中断;Ex0=1开外部中断0; P1=0x00; P0=0x7f; SP=0x7B; /堆栈指针复位 while(1) /假设外部中断不产生,那么一直不跳出该局部 flag=1; if(flag=0) break; P1=0x7f; for(i=8;i>0;i-) P1=_crol_(P1,1); /左移函数 k=P1; switch
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高考地理一轮复习第十六章区际联系与区域协调发展第二节资源跨区域调配课件
- 自建房建筑安全合同(2篇)
- 海尔净水 课件
- 西京学院《影视广告》2022-2023学年第一学期期末试卷
- 初三(4)班月考动员
- 幼儿园小班歌唱活动《表情歌》教案
- 第二节国民党政府处在全民的包围中
- 西华师范大学《中国地理》2021-2022学年第一学期期末试卷
- 高考地理一轮复习第三章地球上的大气及其运动第一节大气的组成和垂直分层及大气受热过程课件
- 西华师范大学《写意花鸟画》2023-2024学年第一学期期末试卷
- xx学校未成年人性教育工作方案
- 广开(含解析)《形式与政策》你所从事的行业和工作《决定》中提出怎样的改革举措
- 什么是美术作品 课件-2024-2025学年高中美术湘美版(2019)美术鉴赏
- 2024-2030年组氨酸行业市场现状供需分析及投资评估规划分析研究报告
- 教育信息化教学资源建设规划
- 职业卫生技术服务机构检测人员考试真题题库
- 上海市交大附中附属嘉定德富中学2024-2025学年九年级上学期期中考数学卷
- 屠宰场食品安全管理制度
- 部编版(2024秋)语文一年级上册 6 .影子课件
- 2024秋期国家开放大学专科《刑事诉讼法学》一平台在线形考(形考任务一至五)试题及答案
- 2024年大学生就业创业知识竞赛题库及答案(共350题)
评论
0/150
提交评论