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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

单片机原理及系统课程设计Word格式.docx

1、它要求通过键盘调节设定温度,以温度传感器DS18B20对水温进行温度检测,将测得的数字温度信号送给单片机处理后经液晶显示器LCD1602显示。当设定的温度比实时温度高则启动热水器加热,反之,启动风扇降温并发出声光警告。同时该系统可以对工作的时间进行计时,也可以通过键盘调节时、分、秒实现电子表功能。本系统的温度静态误差0.5C,能够很精确地实现水温控制,是一个很好的水温控制方案。2 设计方案与原理2.1 温度传感器的比较与选择方案一、采用半导体集成电路AD590。根据热力学温度和发射极电流Ir的关系:T/Ir=1实现对温度的检测,需要将温度传感器的温度值进行AD转换。方案二、采用热敏电阻来采集温

2、度。热敏电阻线性度不好,与数字仪表配合测温时必须对其特性进行线性化处理。精度不高,而且外围电路比较复杂。方案三、采用DS18B20数字温度传感器对水温进行采样,无需进行AD转换。DS18B20测温范围 55+125,测温分辨率0.5。综合考虑,本系统选择方案三。2.2 输入方式的比较与选择方案一、采用独立式按键键盘。独立按键的特点是编程容易,电路简单。使用时需要用软件进行去抖动和松手检测处理,缺点是占用IO口较多,适用于按键数量较少的系统。方案二、采用矩阵键盘。矩阵键盘的特点是编程复杂,电路复杂,但节省IO口,适用于按键数量较多的系统,当需要六个以上的按键时推荐使用矩阵键盘,矩阵键盘同样需要用

3、软件进行去抖动处理。方案三、遥控器输入。由于红外发光二极管的发射功率一般都较小,所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路。综合考虑,本系统选择方案一。2.3 显示器的比较与选择方案一、采用四位一体的七段数码管LED做输出显示,经济实用。若需要多个数码管,其显示需要锁存器74LS573首先对地址和数据进行锁存,增加了软件设计和硬件电路的复杂度。方案二、采用LCD1602作为显示器件。LCD1602能够同时显示16x2个字符,采用16脚接口,控制简单,使用方便。综合考虑,本系统选择方案二。3 硬件设计3.1总体设计 系统总体框架如图1所示。图1 系统总体框架3.2 局部电

4、路设计3.2.1 温度传感器电路设计DS18B20采用一总线技术,在使用时需在外部接一个上拉电阻,在总线闲置时为高电平。电路如图2所示。信息通过单总线接口将数字温度值送入单片机进行处理和显示。DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。当在寄生电源供电方式下,DS18B20从单线信号线上汲取能量:在信号线DQ处于高电平期间把能量储存在内部电容里,在信号线处于低电平期间消耗电容上的电能工作,直到高电平到来再给寄生电源(电容)充电。图2 温度传感器电路3.2.2 显示电路设计在本系统中LCD1602的数据口接单片机的P0口,由于P0口的特殊性,必须外

5、接上拉电阻。如图3所示,LCD1602的控制端口E和RS通过P36与P37进行电平控制,由于在本系统软件只对LCD1602进行写操作,故RW直接接地即可。在软件设计时,必须严格按照液晶资料中的读、写时序图进行编程。图3 液晶显示电路3.2.3 功率电路设计通过控制继电器的开合状态实现对热水器、风扇的工作状态进行改变。图中二极管为“续流二极管”,它在电路中用来保护元件不被感应电压击穿或烧坏。图中的三极管起驱动放大作用。图4 功率电路4系统软件设计4.1 主函数主函数流程图如图5所示:图5 主函数流程图4.2总体设计总程序一共包含五个软件模块,程序结构框图如图7所示:Main.cds18b20.c

6、系统初始化调用子函数循环执行测温函数温度获取函数写入各种控制命令读取温度转换结果图6 程序结构5 系统仿真及调试(1)加热时的仿真设置温度S:93.8,实时温度T:49.0,时间21:54:19,此时设置温度高于水的实时温度,继电器控制热水器进行加热,加热指示灯亮。此时左边继电器控制的灯泡被点亮,仿真结果如附录中图7所示。(2)降温时的仿真23.8,实时温度T:27.0,时间21:55:21,此时水温高于设置温度,蜂鸣器报警,继电器控制风扇对水进行降温,降温指示灯亮。此时右边继电器控制的灯泡被点亮,仿真结果如附录中图8所示。6 总结通过实物测试,该水温自动控制系统运行良好,能实现自动控制水温,

7、达到了设计的要求。由于上学期在学校国家电工电子实验做过课程设计的项目,对单片机设计有一些基础,因此对于此次课程设计我充满信心。事实证明,此次设计使我受益匪浅。在设计过程中我遇到一个问题是如何将按键输入的设置温度与温度传感器检测到的温度进行比较,使得单片机对继电器进行控制以达到对水加热、降温的目的。如果使用读指令程序,将增加程序的复杂度。指导老师建议我在键盘扫描程序里将所设温度读出,我恍然大悟,这样的话只需要一条语句即可实现两温度的比较!所以我认为编程思想是程序的灵魂。此次单片机课程设计顺利完成,它培养了我对单片机的兴趣,提升了解决问题的能力,动手能力也得到锻炼,是一次很有意义的课程设计。参考文

8、献1 郭天祥.新概念51单片机C语言教程M.电子工业出版社.2009.12 林德杰.电气测试技术.机械工业出版社M.2010.13 谭浩强.C+程序设计.清华大学出版社M.2004.6附录1 源程序#include#define uchar unsigned char #define uint unsigned intsbit rs=P37;sbit lcden=P36;sbit s1=P20;sbit s2=P21;sbit s3=P22;sbit beep=P34;sbit led1=P24;sbit led2=P27;sbit DQ=P35;sbit jdq1=P12;sbit jdq2

9、=P13;uchar count,s1num,set,temp;char miao,shi,fen,zh,xi;uchar data disdata5;uint tvalue;uchar code table= S:00.0 T: ;uchar code table1= 00:00:00void write_ds(uchar,uchar);uchar read_ds(uchar);uchar rade_set();void delay(uint z) uint x,y; for(x=z;x0;x-) for(y=110;yy-);void write_com(uchar com) rs=0;

10、lcden=0; P0=com; delay(5); lcden=1;void write_date(uchar date) rs=1;lcden=0; P0=date;void init() uchar num; write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01); write_com(0x80); for(num=0;num16;num+) write_date(tablenum); delay(5); write_com(0x80+0x40);12; write_date(table1num); TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1;void write_sfm(uchar add,uchar date) uchar sh,ge; sh=date/10; ge=date%10; write_com(0x80+0x40+add); write_date(0x30+sh); write_d

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

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