电子系统综合设计与实践报告模板.doc_第1页
电子系统综合设计与实践报告模板.doc_第2页
电子系统综合设计与实践报告模板.doc_第3页
电子系统综合设计与实践报告模板.doc_第4页
电子系统综合设计与实践报告模板.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

电子系统综合设计与实践蜂鸣器乐曲演奏 院(系)名称信息工程学院电子与通信工程系 专业名称14通信工程设备 学生姓名郑军强1301100094王龙龙1301100080李帅 指导教师石钦亮2016年 12 月1日模拟风扇控制系统摘 要电风扇简称电扇,香港称为风扇,日本及韩国称为扇风机,是一种利用电动机驱动扇叶旋转,来达到使空气加速流通的家用电器,主要用于清凉解暑和流通空气。广泛用于家庭、办公室、商店、医院和宾馆等场所。1882年,美国纽约的克罗卡日卡齐斯发动机厂的主任技师休伊斯卡茨霍伊拉,最早发明了商品化的电风扇。如今的电风扇已一改人们印象中的传统形象,在外观和功能上都更追求个性化,而电脑控制、自然风、睡眠风、负离子功能等这些本属于空调器的功能,也被众多的电风扇厂家采用,并增加了照明、驱蚊等更多的实用功能。这些外观不拘一格并且功能多样的产品,预示了整个电风扇行业的发展趋势。其主要原因:一是风扇和空调的降温效果不同空调有强大的制冷功能,可以快速有效地降低环境温度,但电风扇的风更温和,更加适合老人儿童和体质较弱的人使用;二是电风扇有价格优势,价格低廉而且相对省电,安装和使用都非常简单。关键词:STC89S51,直流电机,数码管,138译码器等.目录引言41、系统方案42、设计任务及要求51、工作模式52、数码管显示53、按键控制63.1 S4控制风扇工作模式63.2 S5定时器73.3 S6 停止93、重点、难点94.结束语9参考文献10引言电风扇是一种利用电动机驱动扇叶旋转,来达到时空气加速流通的家用电器,主要用于清凉解暑和流通空气,广泛用于家庭,办公室,商店,医院等场所。如今的电风扇也一改人们印象中的传统形象,在外观和功能上都更追求个性化,人性化,也增加了照明,驱蚊等更多的实用功能。电风扇曾一度被认为是空调产品冲击下的淘汰品,其实并非如此,家用电风扇并没有随着空调的普及而消失于市场,近年来反而出现了市场销售复苏的趋势。其主要原因:一是风扇和空调的降温效果不同,空调有强大的制冷功能,可以快速有效的降低坏境温度,但电风扇更温和,更加适合老人儿童和体质较弱的群体使用;二是电风扇有价格优势,价格低廉而且相对省电,安装和使用也非常简单。 1、系统方案“模拟风扇控制系统”能够模拟风扇工作,通过按键控制风扇的转速和定时时间,数码管显示风扇的工作模式,动态倒计时的显示剩余的工作时间,系统上主要有数码管显示,单片机最小系统、按键输入和电机的控制保护电路组成。数码管显示LED指示灯PWM输出按键输入DS18B20MCU本实验通过4个按键(K4、K5、K6、K7),分别控制风扇系统的工作模式、定时、清“0”。K4按一下,电机工作在“睡眠风”的状态,再按一次,电机工作在“自然风”状态,第三次按K4,工作在“常风”状态,当第四次按下K4,电机回到“睡眠风”工作状态。K5负责定时功能,当按下K5,定时1分钟,数码管倒计时显示,第二次按下K5,定时2分钟,当第三次按下K5,无定时,当定时结束,电机自动停止工作。K6是清“0”的功能,当按下K6,风扇工作在任何模式下,都停止工作,定时结束。并通过8个数码管显示电机的工作模式,定时剩余时间等等。通过18B20显示当前的温度。2、设计任务及要求1、工作模式设备具有“睡眠风”、“自然风”、“常风”三种工作模式可以通过按键切换,通过单片机P34引脚输出脉宽调制信号控制电机运行状态,信号频率为1KHz。2、数码管显示数码管实时显示设备当前工作模式和剩余工作时间(倒计时),如图2所示。一1一 0050工作模式:睡眠风熄灭剩余工作时间:50秒unsigned char tab=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;DisplayData0=0x40; DisplayData1=tabb%10; DisplayData2=0x40; DisplayData4=tab0; DisplayData5=tabseconed%1000/100&0x7f; DisplayData6=tabseconed%100/10; DisplayData7=tabseconed%10; DigDisplay();“睡眠风”状态下,对应数码管显示数值为1,自然风模式下,显示数值为2,常风模式下,显示数值为3.3、按键控制使用S4、S5、S6、S7四个按键完成按键控制功能。3.1 S4控制风扇工作模式 按键S4定义为工作模式切换按键,每次按下S4,设备循环切换三种工作模式。工作过程如下;睡眠风自然风常风在程序设计中,采用对按键是否按下的检测,当检测到按键有按下的操作后,通过用b限定按键的操作次数,第一次按下(b=1)为睡眠风,第二次(b=2)为自然风,第三次(b=3)为常风,当第四次按下后b=0,回到循环,重复操作。电机转速的调节,不同模式下的风扇转动速度不同,驱动直流电动机时,在栅极施加恒定的高电平,则电动机在额定电压下以额定的转速旋转。若在栅极施加了脉冲幅度为5V,脉冲周期相同而宽度不同的信号(即占空比不同)时,则转速发生变化。占空比大时转速高,占空比小时,转速低;当占空比小到某值时,点顶级停止旋转。改变占空比即可直接控制电动机的旋转。分别在b=1、b=2,b=3下实现不同的转速。void dj() DigDisplay_2(); if(K4=0) Delay10ms();if(K4=0) b+;if(b=4) b=1; while(!K4); if(b=1) P3=0xFE; DigDisplay_2();PWM=1;Delay100us(6);PWM=0;Delay100us(4); if(b=2) P3=0xfD; DigDisplay_2();PWM=1;Delay100us(7);PWM=0;Delay100us(3); if(b=3) P3=0xFB; DigDisplay_2();PWM=1;Delay100us(8);PWM=0;Delay100us(2); 3.2 S5定时器按键S5定义为“定时按键”每次按下S5,定时时间增加1分钟,设备的剩余工作时间重置为当前定时时间,重新开始倒计时,工作过程如下:1分钟2分钟0分钟针对于定时功能,采用定时器的方法,在工作模式1下,定时总中断,定时器0允许开关全部打开,TH0=(65536-50000)/256; TL0=(65536-50000)%256;定时时间为50ms,在定时器0中命名count+,当count=20时,定时时间1s(50x20=1000ms=1s),然后在定时器0之前定义的seconed的值,采用seconed的语句实现定时倒计时,倒计时在数码管上的显示调用DigDisplay_2()函数。前面介绍过。对于K5控制定时,由目的可知,无定时、定时1分钟、定时2分钟,之后回到无定时状态,依次循环。通过定义的变量c控制定时的时间,当c=3时,重新定义c=0,循环控制,seconed表示定时时间,由于要实现无论在任何工作状态时只要按下K6,一切工作结束,所以要添加一个K6按键的扫描,当检测到K6按下,break直接跳出。void ds() TMOD=0x01; /定时器0 16位定时器 TR0=(65536-50000)/256; TL0=(65536-50000)%256; IE=0x82; /这里是中断优先级控制EA=1(开总中断),ET0=1(定时器0允许中断),这里用定时器0来定时 TR0=1; if(K5=0) Delay10ms();if(K5=0) c+;if(c=3) c=0; while(!K5); if(c=0) seconed=0; DigDisplay_2(); dj(); if(c=1) seconed=60; while(K5=1) DigDisplay_2(); dj(); if(K6=0) break; if(c=2) seconed=120; while(K5=1) DigDisplay_2(); dj(); if(K6=0) break; 3.3 S6 停止按键S6定义为“停止”按键,按下S6按键,立即清零剩余工作时间,PWM信号停止输出,直到通过S5从新色指定时时间。3、重点、难点本设计的重点、难点在于对电机定时的程序控制,如何用定时器实现1分钟、2分钟的时间控制以及在数码管上倒计时显示。定时器的一个周期定时时间在90ms左右,单靠一个周期定义不可能实现长时间的定时,所以采用循环累加的方法,让定时器进行20次的定时循环(20*50=1000ms=1s),实现1s的定时。在赋值的seconed中,以seconed进行60次、120次的循环,实现定时60s、120s的功能。4.结束语通过本次设计,使我学到了许多书本上无法学到的知识,也使我深刻体会到单片机技术应用领域的广泛。不仅让我对学过的单片机知识有了很多的巩固,同时也对单片机这一门课程产生更大的兴趣。在本次设计过程中,我学会了在网络上查找有关设计的个硬件的资源。本系统是以单片机AT89C51芯片为核心部件,实现了电风扇系统控制功能,在软件上是花费时间最多的,我们上网找资料,上图书馆,尽可能的了解有关于电风扇的知识。通过这次设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步。在设计的过程中,不断的学习,思考和同学间的相互讨论,运用科学的分析问题的方法解决遇到的困难,掌握单片机系统一般的开发流程,学会对常见问题的处理方法,积累设计系统的经验,充分发挥教学与实践的结合。全能提高个人系统开发的综合能力,开拓了思维,为今后能在相应工作岗位上的工作打下了坚实的基础。不但加深我对在课程上所学到的单片机理论知识的认识和理解,重新让自己认识到了这门学科的在应用方面的广阔前景,并且通过知识与应用于实践的结合更加丰富了自己的知识。扩展了知识面,不但掌握了本专业的相关知识,而且对其他专业的知识也有所了解,而且较系统的掌握单片机应用系统的开发过程,因而自身的综合素质有了全面的提高。经过这次一个较完整的产品设计和制作过程,对于认识到自己在知识方面存在的不足,明确今后的学习方向是非常有益的,为将来的的就业提前打了下坚实的基础。的初期阶段,难度很大,没有头绪。通过求助老师,理清思路。同时,在图书馆里、网上查阅资料,攻克设计中的道道难题。在克服困难的过程中,我学到了许多,特别是在课堂上学不到的东西。总的感受有以下几方面:1、通过本次设计,我不但对单片机有了更深的了解,对一个课题如何画流程图,编程序等有了一定的认识。2、进一步加强了我的动手能力和运用专业知识的奴隶,从学习到如何去思考和解决问题,以及如何灵活地改变方法实现设计方案。3、让我了解到单片机技术对当今人们生活的重要性。同时这次设计的经历也使我受益匪浅,让我知道做任何事情都应脚踏实地,刻苦努力地去做,只有这样,才能做好。参考文献1杨雪.基于AT89C51单片机全部自动洗衣机仿真设计J.黑龙江:黑龙江科技信息,2013(05).2宋雪松.手把手教你学51单片机M. 北京:清华大学出版社,2015(10).3张毅刚.单片机原理及应用-C51编程+Proteus仿真M. 北京:高等教育出版社,2012(11).4 楼然苗.51系列单片机设计实例M.北京:北京航空航天大学出版社,2003.5朱宇光.单片机应用新技术教程M.北京:电子工业出版社,2000.程序:#include#includesbit K4=P13;sbit K5=P14;sbit K6=P15;sbit K7=P16;sbit LSA=P22;sbit LSB=P23;sbit LSC=P24;sbit PWM=P34;unsigned char tab=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;unsigned char code DIG_CODE17=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;unsigned char seconed,count;unsigned int c,b,x;unsigned char DisplayData8;void Delay100us(unsigned int a);void DigDisplay();void DigDisplay_2();void Delay10ms();void dj();void ds() void ds() TMOD=0x01; /定时器0 16位定时器 TR0=(65536-50000)/256; TL0=(65536-50000)%256; IE=0x82; /这里是中断优先级控制EA=1(开总中断),ET0=1(定时器0允许中断),这里用定时器0来定时 TR0=1; if(K5=0) Delay10ms();if(K5=0) c+;if(c=3) c=0; while(!K5); if(c=0) seconed=0; DigDisplay_2(); dj(); if(c=1) seconed=60; while(K5=1) DigDisplay_2(); dj(); if(K6=0) break; if(c=2) seconed=120; while(K5=1) DigDisplay_2(); dj(); if(K6=0) break; /电机void dj() DigDisplay_2(); if(K4=0) Delay10ms();if(K4=0) b+;if(b=4) b=1; while(!K4); if(b=1) P3=0xFE; DigDisplay_2();PWM=1;Delay100us(6);PWM=0;Delay100us(4); if(b=2) P3=0xfD; DigDisplay_2();PWM=1;Delay100us(7);PWM=0;Delay100us(3); if(b=3) P3=0xFB; DigDisplay_2();PWM=1;Delay100us(8);PWM=0;Delay100us(2); /定时void Time() interrupt 1 TR0=(65536-50000)/256; TL0=(65536-50000)%256; while(K6=0) EA=0; seconed=0; count+; if(count=20) count=0; seconed-; if(seconed=0) seconed=0; TR0=0; if(seconed=0) while(K5=1) PWM=0; /延迟10msvoid Delay10ms()/12.000MHzunsigned char i, j;i = 117;j = 184;dowhile (-j); while (-i); /延迟100usvoid Delay100us(unsigned int a)/12.000MHzunsigned char j;j = 78;while(a-) while (-j); /温度void DigDisplay_2() DisplayData0=0x40; DisplayData1=tabb%10; DisplayData2=0x40; DisplayData4=tab0; DisplayData5=tabseconed%1000/100&0x7f; DisplayData6=tabseconed%10

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论