版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 课程设计报告 课 程 名 称 单片机原理及接口技术课程设计院 部 名 称 机电工程学院 专 业 电气工程及其自动化 班 级 09电气 (单) 学 号 0904207014 姓 名 程艳 指 导 教 师 高峰 金陵科技学院教务处制目录目录2摘要21 概述31.1 课程设计的意义31.2 设计的任务和要求32 系统总体方案及硬件设计42.1数字温度计设计方案分析4方案一42.1.2 方案二42.2系统总体设计42.3系统模块6主控制器62.3.2 显示电路6温度传感器7报警温度电路83 系统软件算法分析93.1主程序流程图93.2读出温度子程序93.3温度转换命令子程序103.4 计算温度子程序
2、113.5 显示数据刷新子程序114 实验仿真125 总结与体会14附录:源程序15参考文献18摘要随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术, 本文主要介绍了一个基于AT89C52单片机的测温系统,详细描述了利用数字温度传感器DS18B20 开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,特别是数字温度传感器DS18B20 的数据采集过程。对各部分的电路也一一进行了介绍,该系统可以方便的实现实现温度采集和显示,并有上下限报警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、
3、功耗低等优适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。DS18B20 与AT89C52 结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。关键词: 单片机AT89C52 温度传感器数字温度计DS18B201 概述1.1 课程设计的意义本次课程设计是在我们学过单片机后的一次实习,可增加我们的动手能力。特别是对单片机的系统设计有很大帮助。同时对毕业设计业起着很大的作用。1.2 设计的任务和要求1、基本范围-30-302、精度误差小于13、七段 数码直读显示4、有温度的上下限报
4、警功能2 系统总体方案及硬件设计2.1数字温度计设计方案分析方案一由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D 转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D 转换电路,其中还涉及到电阻与温度的对应值的计算,感温电路比较麻烦。而且在对采集的信号进行放大时容易受温度的影响出现较大的偏差。 方案二进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,电
5、路简单,精度高,软硬件都以实现,而且使用单片机的接口便于系统的再扩展,满足设计要求。从以上两种方案,很容易看出,采用方案二,电路比较简单,费用较低,可靠性高,软件设计也比较简单,故采用了方案二。2.2系统总体设计温度计电路设计总体设计方框图如图2.21 所示,总系统仿真如图2.2系统仿真图,控制器采用单片机AT89C52,温度传感器采用DS18B20,用3 个七段数码管以串口传送数据实现温度显示。图2.21 总体设计方框图图2.22 系统仿真图2.3系统模块系统由单片机最小系统、显示电路、温度传感器等组成。主控制器单片机AT89C52 具有低电压供电和体积小等特点,四个端口只需要两个口就能满足
6、电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。晶振采用11.0592MMHZ。复位电路采用上电加按钮复位。图1 晶振电路图2 复位电路 显示电路显示电路采用3个共阳极七段 数码管,采用动态扫描的方式显示。图 数码管显示电路温度传感器DS18B20 温度传感器是美国DALLAS 半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现位的数字值读数方式。DS18B20 的性能特点如下:1、独特的单线接口仅需要一个端口引脚进行通信;2、多个DS18B20 可以并联在惟一的三线上,实现多点组网功
7、能3、无须外部器件;4、可通过数据线供电,电压范围为3.05.5;5、零待机功耗;6、温度以或位数字;7、用户可定义报警设置;8、报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;9、负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20 可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20 的1 脚接地,2 脚作为信号线,3 脚接电源。另一种是寄生电源供电方式,如图所示单片机端口接单线总线,为保证在有效的DS18B20 时钟周期内提供足够的电流,可用一个MOSFET 管来完成对总线的上拉。当DS18B20 处于写存储器操作和温度A/D 转换
8、操作时,总线上必须有强的上拉,上拉开启时间最大为10us。采用寄生电源供电方式时VDD 端接地。由于单线制只有一根线,因此发送接口必须是三态的。图 温度传感器与单片机的连接报警温度电路定时器每20ms检测一次温度,测量到在安全温度范围内发光二极管发出绿色光表示系统正常工作,当超过安全温度工作范围外发光二极管发出绿色光表示系统出现异常并报警。图报警电路3 系统软件算法分析系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序等。3.1主程序流程图主程序的主要功能是负责温度的实时显示、读出并处理DS18B20 的测量的当前温度值,其程序流程见图3.1 所示。
9、图3.1 主程序流程图3.2读出温度子程序读出温度子程序的主要功能是读出RAM 中的9 字节,在读出时需进行CRC 校验,校验有错时不进行温度数据的改写。其程序流程图如图3.2 示图3.2 读温度流程图3.3温度转换命令子程序温度转换命令子程序主要是发温度转换开始命令,在本程序设计中采用1ms 显示程序延时法等待转换的完成。温度转换命令子程序流程图3.3 所示图3.3 温度转换流程图3.4 计算温度子程序计算温度子程序将RAM 中读取值进行BCD 码的转换运算,并进行温度值正负的判定,其程序流程图如图3.4 所示。图3.4 计算温度流程图3.5 显示数据刷新子程序显示数据刷新子程序主要是对分离
10、后的温度显示数据进行刷新操作,当标志位位为1时将符号显示位移入第一位。程序流程图如图3.5。图3.5 显示数据刷新流程图4 实验仿真进入protuse 后,连接好电路,并将程序下载进去。数码管显示温度与传感器的温度相同。图41 温度显示仿真屏幕显示当前温度为安全温度正常工作,绿色二极管发光。屏幕显示的温度为安全温度范围之外,此时红色二极管闪烁发光报警,表明系统出现异常,需要调整。5 总结与体会通过这次对数字温度计的设计与制作,让我了解了设计电路的程序,也让我了解了关于数字温度计的原理与设计理念,要设计一个电路总要先用仿真仿真成功之后才实际接线的。但是最后的成品却不一定与仿真时完全一样,因为,再
11、实际接线中有着各种各样的条件制约着。而且,在仿真中无法成功的电路接法,在实际中因为芯片本身的特性而能够成功。所以,在设计时应考虑两者的差异,从中找出最适合的设计方法。通过这次学习,让我对各种电路都有了大概的了解,所以说,坐而言不如立而行,从这次的课程设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。附录:源程序/*/DS18B20报警实验演示程序/使用单片机AT89C52 晶振:11.0592M/*/包含头文件/*#include<reg52.h&
12、gt;/*/宏定义/*#define uchar unsigned char#define uint unsigned int/*/共阳极段码表tab; 带小数点的共阳极段码表tab1; 警铃编码表Music_Girl;/*uchar code tab= 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;uchar code tab1=0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;/*/定义全局变量/*sbit DQ=P23;/ds18b20与单片机连接口sbit seg0=P20;/小数位
13、sbit seg1=P21;/个位sbit seg2=P22;/十位sbit green=P24;sbit red =P25;sbit music=P36;/接蜂鸣器uchar data disdata4;uint tvalue;/温度值uchar tflag;/温度正负标志uchar max_tem=2;/温度警戒值/*/延时函数,延时时间近似1ms/*void delay_ms(unsigned int ms)/延时1毫秒(不够精确的)unsigned int i,j;for(i=0;i<ms;i+)for(j=0;j<110;j+);/*/延时函数,用于18b20时序控制/*
14、void delay_18B20(uint i)/延时1微秒 while(i-);/*/ 温度显示函数/ P0口显示温度十位,P1口显示温度个位,P2显示温度小数位/*void display(uchar a,uchar b,uchar c) /显示十位P0=0xff;seg2=1;P0=taba;delay_ms(1);seg2=0;/显示个位P0=0xff;seg1=1;P0=tab1b;delay_ms(1);seg1=0;/显示小数位P0=0xff;seg0=1;P0=tabc;delay_ms(1);seg0=0; /*/DS18B20的复位函数,对DS18B20时序操作前都要闲复位
15、/*void ds1820rst()/*ds1820复位*/ unsigned char x=0;DQ = 1; /DQ复位delay_18B20(4); /延时DQ = 0; /DQ拉低delay_18B20(100); /精确延时大于480usDQ = 1; /拉高delay_18B20(40); /*/DS18B20读指令函数 RAM指令/逐位读取DS18B20转化后的温度值/*uchar ds1820rd()/*读数据*/uchar i=0;uchar dat = 0;for (i=8;i>0;i-) DQ = 0; /给脉冲信号dat>>=1;DQ = 1; /给脉
16、冲信号if(DQ)dat|=0x80;delay_18B20(10);return(dat);/*/ DS18B20写指令函数 R0M指令/ 控制DS18B20做何操作/*void ds1820wr(uchar wdata)/*写数据*/uchar i=0;for (i=8; i>0; i-)DQ = 0;DQ = wdata&0x01;delay_18B20(10);DQ = 1;wdata>>=1;/*/DS18B20转化启动函数/*void read_temp1()/*读取温度值并转换*/EA=0; /关全局中断,防止DS18B20的时序操作被打乱ds1820r
17、st(); ds1820wr(0xcc);/*跳过读序列号*/ds1820wr(0x44);/*启动温度转换*/ds1820rst();EA=1; /*/DS18B20转换温度读取函数,并转化成实际温度值/ 返回值: tvalue为实际温度值/*unsigned int read_temp2() uchar a,b;EA=0;ds1820wr(0xcc);/*跳过读序列号*/ ds1820wr(0xbe);/*读取温度*/ a=ds1820rd();b=ds1820rd();EA=1;tvalue=b;tvalue<<=8;tvalue=tvalue|a; if(tvalue<
18、;=0x07ff) tflag=0; else tvalue=tvalue+1;tflag=1; tvalue=tvalue*(0.625);/温度值扩大10倍,精确到1位小数return(tvalue);/*/入口参数:tvalue/温度值百十个位分离函数 存入disdata数组中/* void ds1820disp1()/温度值显示 disdata0=tvalue/1000;/百位数 disdata1=tvalue%1000/100;/十位数 disdata2=tvalue%100/10;/个位数 disdata3=tvalue%10; /小数位/*/定时器初始化函数/*void init_t1() green=0; red=1; TH1=0XB7; TL1=0XFF;TR1=1;ET1=1;EA=1;/*/主函数/*void main() init_t1();while(1) red=1;read_temp1();/读取温度read_temp2();/读取温度ds1820disp1();/数值提取 display(disdata1,disdata2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年潍坊食品科技职业学院单招职业技能考试题库附答案
- 2026年邯郸幼儿师范高等专科学校单招综合素质考试题库及答案1套
- 2026年河南省南阳市单招职业适应性测试必刷测试卷必考题
- 2025鞍钢集团有限公司校园招聘鞍山区域笔试历年参考题库附带答案详解
- 2026年长春信息技术职业学院单招职业技能考试必刷测试卷及答案1套
- 2026年山东省潍坊市单招职业倾向性测试题库必考题
- 2025重庆公司技术中心招聘1人笔试历年参考题库附带答案详解
- 2025贵州黔东南州黔晨综合发展有限公司招聘4人笔试历年参考题库附带答案详解
- 2026年四川国际标榜职业学院单招职业倾向性考试题库必考题
- 2025福建福州建工福厝置业有限责任公司第一批招聘14人笔试历年参考题库附带答案详解
- 《百年孤独(节选)》课件统编版高中语文选择性必修上册
- 传统漆器工艺在现代家居设计中的运用
- 生涯彩虹图完整版本
- 屋顶分布式光伏发电技术交底
- 宁波大学经济学专业培养方案及教学计划(09.9)
- L13S8排水系统示例图集
- 消防用电安全培训课件
- 《中国现代文学史》课件
- 招投标质疑函撤销范本
- 《活出最乐观的自己》
- 防毒面罩检查及滤毒罐称重记录
评论
0/150
提交评论