ImageVerifierCode 换一换
格式:DOCX , 页数:36 ,大小:160.08KB ,
资源ID:22267999      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22267999.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(最新整理51单片机课程设计智能风扇Word文件下载.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

最新整理51单片机课程设计智能风扇Word文件下载.docx

1、由于设计中用到的按键数目不多,所以可以直接用AT89C51的通用IO端口且选用AT89C51的P1口(内部有上拉电阻)作为键盘接口。对于按键只需一端接地另一端接P1口即可。见下图(21):图 212。2热释电红外传感器模块1热释电红外线传感器原理简介人体辐射的红外线中心波长为 910um,而探测元件的波长灵敏度在 0。220um 范围内几乎稳定不变.在传感器顶端开设了一个装有滤光镜片的窗口,这个滤光片可通过光的波长范围为 710um,正好适合于人体红外辐射的探测,而对其它波长的红外线由滤光片予以吸收,这样便形成了一种专门用作探测人体辐射的红外线传感器。实质上热释电传感器是对温度敏感的传感器。它

2、由陶瓷氧化物或压电晶体元件组成,在元件两个表面做成电极,如图2所示。在环境温度有T的变化时,由于有热释电效应,在两个电极上会产生电荷Q,即在两电极之间产生一微弱的电压V.2.2。2热释电红外线传感器应用热释电红外线传感器有三个端口,如图22所示:一个接电源、一个接地、一个信号端口,当有人进入其检测区域时,信号端口便产生一个电平跳变,并维持数秒钟,我们就是利用这个跳变来判断是否有人在这个检测区域。图223温度传感器3。1温度传感器DS18B20简介新型数字温度传感器DS18B20具有体积更小、精度更高、适用电压更宽、采用一线总线,在实际应用中取得了良好的测温效果。DS18B20的主要特性:(1)

3、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯.(2)测温温范围55125(3)最高分辨率为0.0625。3.2 DS18B20的一般操作过程(1)、初始化;(2)、跳过ROM(命令:CCH);(3)、温度变换(命令:44H);(4)、读暂存存储器(命令:BEH);注:每次读取温度都要经过上面四个过程。2.3。3 DS18B20的温度存储方式即温度计算 DS18B20是用12位存储温度,最高位为符号位,下图为它的温度存储方式:232221202-122232-4LSBYTEBit7Bit6Bit5Bit4Bit3Bit2Bit1Bi

4、t0S262524MSBYTEBit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8表21 DS18B20温度存储地址分配这是12位转化后得到的12位数据,存储在DS18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0。0625即可得到实际温度.4数码管显示电路4 174ls164简介移位寄存器是一类应用很广的时序逻辑电路,在时钟脉冲的作用下,低位寄存器的数码送给高位寄存器,作为高位寄存器的次态输出. 在时钟脉冲的作用下,

5、高位寄存器的数码送给低位寄存器,作为低位寄存器的次态输出;移位寄存器:除具寄存器的功能外,所存储的数码在时钟脉冲的作用下还可以移位。74ls164是八位串入并出移位寄存器,其工作电压范围4。755。25V,大于2V的高电平输入、小于0。8V的低电平输入,clock最高响应频率为25MHZ,八位并行输出可以直接驱动八段数码管。74ls164的引脚图及功能图如下所示:图2-3 74ls164的引脚图及功能图2.4.2共阴极八段数码管简介共阴极八段数码管是将八段发光二极管封装在一起且二极管的阴极连在一起,原理图如下图所示,公共端接低电平,其它八个端口高电平点亮相应的二极管,低电平相反。图2-44。3

6、显示电路设计此显示电路采用两位静态数码管显示,用八位串入并出移位寄存器74LS164作为驱动电路,采用共阴极八段数码管原理图示意图如下:图 25从图中可以看出控制线只有两条:1、数据线;2、移位脉冲线。它只占用很少的IO口。2.5发光二极管电路发光二极管简称为LED,它是半导体二极管的一种.发光二极管的反向击穿电压约5伏。它的正向伏安特性曲线很陡,使用时必须串联限流电阻以控制通过管子的电流。限流电阻R可用下式计算:R(EUf)If式中E为电源电压,Uf为LED的正向压降,If为LED的一般工作电流.发光二极管的两根引线中较长的一根为正极,应按电源正极。与小白炽灯泡和氖灯相比,发光二极管的特点是

7、:工作电压很低(有的仅一点几伏);工作电流很小(有的仅零点几毫安即可发光);抗冲击和抗震性能好,可靠性高,寿命长;通过调制通过的电流强弱可以方便地调制发光的强弱。由于有这些特点,发光二极管在一些光电控制设备中用作光源,在许多电子设备中用作信号显示器。由于AT89C51的P0口是开漏输出,所以此电路可以设计位如下简单形式:图2-66蜂鸣器电路蜂鸣器工作原理简介:当控制端口通以不同频率及不同占空比的信号时蜂鸣器将发出不同强度及不同频率的声音。由于其具有比传统的喇叭体积小,价格低等优点,所以此次提示音电路选用蜂鸣器。具体电路见下图:图2-72.7继电器控制电路2.7。1继电器简介继电器是一种电子控制

8、器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用.它有几个重要指标:1、额定工作电压:正常工作时线圈所需要的电压。2、直流电阻:继电器中线圈的直流电阻。3、吸合电流:继电器能够产生吸合动作的最小电流。4、释放电流:继电器产生释放动作的最大电流.5、触点切换电压和电流:继电器允许加载的电压和电流。2.7.2继电器驱动电路设计及工作原理简介采用晶闸管也可以用于小电流控制大电流电路,但是其控制电路比较复杂,而采用继电器其控制电路就比较简单,且具有电气隔离

9、作用。虽然其响应速度没有晶闸管快但在低频情况下采用继电器控制电路较为方便。其电路图如下所示:图28电路工作原理简介:当控制端口为低电平时,三极管导通继电器吸合,常闭触电断开,常开触点闭合.当控制端口为高电平时三极管关断,继电器线圈通过二极管放电并断开,常闭、常开触电复位。3.软件设计与实现1整体设计思路介绍软件设计整体思路:主程序部分进行一些初始化以及温度的读取;外部中断0进行红外线感应延时时间的重新加载;定时器0进行键盘的扫描及相关操作;定时器1进行显示、温控速度、以及相关需要延时(如倒计时等等)的操作。在显示方面,进行了一些改善要显示的值有变化才进行重新刷新,否则不刷新.这样就大大提高了效

10、率及最终的显示效果(不会出现不该亮的部分还有亮的现象).2主要部分流程图如下:1主程序流程图图 313.2.2外部中断流程图图 323.2.3定时器0中断流程图图 332.4定时器1中断流程图图 34结束语早在单片机原理及接口技术这门课还未结束的时候,陆仲达老师就给我们布置了基于51单片机的课程设计。我从最初的茫然,到慢慢的进入状态,再到对思路逐渐的清晰,整个写作过程难以用语言来表达.关于51的应用设计,从上课开始我就不满足于那些诸如电子钟、交通灯控制等司空见惯的设计,我希望能把主题定位得更新颖、更具挑战性,正好夏天也到了,于是把题目定为:智能电风扇的设计。题目确定下来,我便立刻着手资料的收集

11、工作中,当时面对浩瀚的书海真是有些茫然,不知如何下手。在导老师的指导及同学的帮助下,我终于对自己的工作方向和方法有了初步掌握。资料已经查找完毕,我开始着手论文的写作.在写作过程中遇到困难我就及时和导师联系,并和同学互相交流,请教专业课老师.在大家的帮助下,困难一个一个解决掉,论文也慢慢成型。当我终于完成了所有打字、绘图、排版、校对的任务后整个人都很累,但同时看着电脑荧屏上的课程设计稿件我的心里是甜的,我觉得这一切都值了.这次课程设计论文的制作过程是我的一次再学习,再提高的过程。在论文中我充分地运用了大学期间所学到的知识。本设计最终实现了电风扇的手动调速、温控自动调速、定时、温度显示、人体检测等

12、预期功能,其中定时在1到99分钟连续可调,人体检测范围角度120度、距离6米,人体检测延时时间3分钟,定时器自动退出时间6秒。存在不足之处就是人体检测抗干扰方面不够好,需要提高.我不会忘记这难忘的半个月的时间。课程设计论文的制作给了我难忘的回忆。在我徜徉书海查找资料的日子里,面对无数书本的罗列,最难忘的是每次找到资料时的激动和兴奋;亲手用protel 99 se设计电路图的时间里,记忆最深的是每一步小小思路实现时那幸福的心情;为了论文我曾赶稿到深夜,但看着亲手打出的一字一句,心里满满的只有喜悦毫无疲惫.这段旅程看似荆棘密布,实则蕴藏着无尽的宝藏。在今后的日子里,我仍然要不断地充实自己,争取在所

13、学领域有所作为。在这次课程设计中也使我们的同学关系更进一步了,同学之间互相帮助,有什么不懂的大家在一起商量,听听不同的看法对我们更好的理解知识,所以在这里非常感谢帮助我的同学.在此更要感谢我的指导老师和专业老师,是你们的细心指导和关怀,使我能够顺利的完成课程设计.附录:程序清单/*touwenjian。h*/typedef unsigned char byte;typedef unsigned int word;/以下管脚配置/ds18b20部分sbit DQ =P34;/显示部分sbit DB=P20;sbit CP=P21;/发光显示部分sbit LED_dingshi=P00;sbit

14、LED_shoudong =P01;sbit LED_zidong=P02;sbit LED_kuai =P03;sbit LED_zhong =P04;sbit LED_man =P05;/键盘定义部分define wujian 0x3fsbit KEY1=P10 ; /状态转换 /启动sbit KEY2=P11 ; /+10 / 1sbit KEY3=P12 ; /10 / 2sbit KEY4=P13 ; / 3sbit KEY5=P14 ; / 0 确定/继电器控制部分sbit JDQ1=P24; /0表示开通,1表示关断sbit JDQ2=P25;sbit JDQ3=P26;/蜂鸣器

15、部分sbit call=P27; /低电平鸣叫/* ds18b20.c*/include #includetouwenjian.h”/* 延时子程序*/extern void delay(word useconds) for(;useconds0;useconds-); /* 复位子程序 */static byte ow_reset(void) byte presence;EA=0;DQ = 0; / pull DQ line low delay(45); / leave it low for 480us /551usDQ = 1; / allow line to return high de

16、lay(4);/ wait for presence /61uspresence = DQ; / get presence signal delay(40); / wait for end of timeslot /491usEA=1;return(presence); / presence signal returned / 0=presence, 1 = no part /* 从 1-wire 总线上读取一个字节子程序*/ static byte read_byte(void) byte i;byte value = 0;EA=0;for (i=8;i0;i-) value=1;DQ =

17、0; / pull DQ low to start timeslot / then return high unsigned char i; for(i=0;i0; i) / writes byte, one bit at a time / pull DQ low to start timeslotDQ=0;DQ = val0x01; /6USdelay(5);/ hold value for remainder of timeslot /74usval=val1;delay(5);/*读取温度 */ word Read_Temperature(void) union byte c2; wor

18、d x; temp;ow_reset();write_byte(0xCC); / Skip ROM write_byte(0xBE); / Read Scratch Pad temp.c1=read_byte();temp.c0=read_byte();write_byte(0xCC); /Skip ROM write_byte(0x44); / Start Conversion return temp。x;/*求解温度*/extern byte Real_Tem(void) word wen; wen=Read_Temperature(); return(wen4)&0x00ff);/* M

19、ain。c*/#include REGX51.Hincludeh/数据区define time_default 41byte dingshi_time=time_default;/存放定时时间bit flag_dingshi=0; /0表示没有定时word dingshi_jishu3=1000;/100060=1分钟/bit flag_dingshi_delay=0;/1表示有byte dingshi_delay=100;define hwx_delay_const 3 /人体感应延时时间byte hwx_delay=hwx_delay_const;/用于保存红外线触发延长时间word hw

20、x_jishu1=0;byte wendu=0;/用于存放温度值#define low_wen 18define mid_wen 20define hig_wen 24#define vhi_wen 28byte time_stor=100; /存储主观时间/触发显示byte wendu_stor=low_wen;/存储主观温度/触发显示enum station0zidong,dingshi,shoudong,weakstate;/函数说明区extern byte Real_Tem(void );extern void delay(word useconds);void mingjiao(vo

21、id);void display(byte input,bit kkl);void auto_speed(void);void weak_default(void);/*主程序*/void main()/定时器0用于键盘扫描TMOD=0x01TMOD;/定时器0的1方式TH0=0xd8;TL0=0xf0; /定时器0初始化10ms扫描一次/定时器1用于显示 TMOD=0x10TMOD;/定时器1的1方式 TH1=0x15;TL1=0xA0; /定时器1初始化60ms中断一次/外部中断TCON=TCON|0x01;/外部中断0都下降沿触发/以下为开启部分 IP=0X01; /两个定时器同等优先级IE=0x8b; /开启定时器0,1,外部中断0中断 / while(Real_Tem()=85); auto

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1