片单机课程设计温度采集报警系统设计.doc
《片单机课程设计温度采集报警系统设计.doc》由会员分享,可在线阅读,更多相关《片单机课程设计温度采集报警系统设计.doc(23页珍藏版)》请在咨信网上搜索。
机电工程学院单片机课程设计 任 务 书 设计(论文)名称: 温度采集报警系统设计 专 业: 通信工程 学生姓名: 指导教师: 下达时间:2015年 12 月7 日 一、 课程设计任务: 1. 加深对单片机硬件电路设计和软件编程的理解,结合实践进一步加深对单元电路基本功能的掌握和应用。 2. 通过具体任务要求,掌握一种常用电子电路仿真的软件,使学生能利用所学理论知识完成实际电路的设计、仿真和制作。 3. 学会利用单片机设计频率,了解单片机ADC的应用、LED数码管显示的设计等知识。 4. 掌握51单片机软件开发环境,学会KEIL软件的使用和程序的调试方法。 二、 课程设计的基本要求: 1. 设计51单片机最小系统。 2. 完成至少4路温度信号采集。 3. 能实时显示各路温度信号值。 4. 具有温度上、下限报警功能。 5. 可设定系统报警温度上、下限。 6.撰写课程设计论文要求符合模板的相关要求,字数要求4000字以上。 目录 一、 设计任务与要求 1 二、 总体方案设计 1 三、 单元电路设计与参数计算 1 四、 总原理图 6 五、 仿真与调试 15 六、 性能测试与分析 17 七、 结论与心得 18 八、 参考文献 19 温度采集报警系统设计 一、 设计任务与要求 (一) 设计任务 (1) 以单片机为核心,设计一个温度采集报警系统设计; (2) 完成至少4路温度信号采集。 (3) 能实时显示各路温度信号值。 (4) 具有温度上、下限报警功能。 (5) 可设定系统报警温度上、下限。 (二) 设计要求 (1)根据功能要求选择设计方案,并进行论证; (2)画出电路的总体方框图和电路原理图; (3)说明系统工作原理,对系统进行调试; (4)写出课程设计报告。 二、 总体方案设计 1 总体设计思路 (1)采用单片机作为数据处理与控制单元,为了进行数据处理,单片机控制温度传感器,把温度信号通过模数转换模块(ADC0808)从温度传感器传递到单片机.单片机进行数据处理之后发出控制信号改变报警和控制执行模块的状态,同时将当前温度信息发送到数码管进行显示. (2)通过四个按键控制四路温度采集的切换. (3)通过两个按键来调节温度上下限,当采集到的温度超过设定的数值是,启动蜂鸣器发出报警信号,同时点亮发光二极管. 2 总体设计原理 八路模拟信号数值测量显示电路由A/D转换、数据处理及显示控制等组成。 三、 单元电路设计与参数计算 (一) AT89C51单片机介绍 图(一)AT89C51单片机最小系统及其连接 图(二)AT89C51单片机片内结构 1 AT89C51简介 AT89C51是一种带4K字节FLASH存储器的低电压、高性能CMOS 8位微处理器,俗称单片机,AT89C51 提供以下标准功能:4k字节Flash 闪速存储器,128字节内部RAM,32个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。 2 AT89C51单片机的并行I/O端口 (1)P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。 (2)P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。 (3)P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 (4)P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 (二)ADC0808的介绍 图(三)ADC0808及其连接 ADC0808是采样分辨率为8位的、以逐次逼近原理进行模/数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。ADC0808是ADC0809的简化版本,功能基本相同。一般在硬件仿真时采用ADC0808进行A/D转换,实际使用时采用ADC0809进行A/D转换。有28条引脚,采用双列直插式封装,如图(三)所示. (三)LED数码管简介 图(四)led数码管 LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。右图是共阳极数码管及其的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式。 (三)温度采集电路: 图(五)温度采集电路 本系统采用铂热电阻PT100作为温度传感器,它的阻值会随着温度的变化而改变。PT后的100即表示它在0℃时阻值为100欧姆,在100℃时它的阻值约为138.5欧姆。当PT100在0摄氏度的时候他的阻值为100欧姆,它的阻值会随着温度上升而成近似匀速的增长。。向PT100输入稳恒电流,再通过转换后测得PT100两端的电压,即可得到PT100的阻值。本系统采用2.55mA的电流源对PT100进行供电,然后用运算放大器LM324搭建的同相放大电路将其电压信号放大10倍后输入到ADC0808中,利用电阻变化率0.385Ω/℃的特性,可计算出当前的温度值。 (四) 按键电路 图(五)按键电路连接 如图所示,k1,k2为四路温度采集电路的切换按键。当无按键按下时时,第一路采集电路导通;当K1按下时,第二路采集电路导通;当K2按下时,第三路采集电路导通;当K1和K2同时按下时,第四路采集电路导通。JIA按键为调节温度上限按键,JIAN按键为调节温度下限按键。 (五) 报警电路 图(六)报警电路 当前采集到的温度如果超过或者低于设定的温度上下限,则led灯发光同时蜂鸣器发出报警信号。 四、 总原理图 (一)硬件电路 图(七)整体模块 图(八)总体硬件电路图 (二) 软件程序 #include<reg51.h> sbit START=P2^0; //IO口定义 sbit EOC=P2^1; sbit OE=P2^2; sbit adda=P2^4; sbit addb=P2^5; sbit addc=P2^6; sbit buzzer=P2^3; //蜂鸣器定义 sbit led=P2^7; //LEd定义 sbit wei1=P0^3; //位选定义 sbit wei2=P0^2; sbit wei3=P0^1; sbit wei4=P0^0; sbit k1=P0^4; sbit k2=P0^5; sbit Jia=P0^6; //加键定义 sbit Jian=P0^7; //减键定义 unsigned char ad_data,t; char count; unsigned char keynum; unsigned char dis[4]={0x00,0x00,0x00,0x00}; /*用来放AD转换处理结果值*/ unsigned char code dis_7[12]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x40}; /* 共阴LED段码表对应 "0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "不亮" "-" */ void delay(unsigned int t) //11微秒延时函数 { for(;t>0;t--) { ; } } void delay10ms(void) //误差 0us { unsigned char a,b,c; for(c=5;c>0;c--) for(b=4;b>0;b--) for(a=248;a>0;a--); } void AdDisplay() //AD转换显示 { wei4=0;P3=dis_7[dis[0]]; delay(90);wei4=1; wei3=0;P3=dis_7[dis[1]]|0x80; delay(90);wei3=1; //加入小数点 wei2=0;P3=dis_7[dis[2]]; delay(90);wei2=1; wei1=0;P3=dis_7[dis[3]]; delay(90);wei1=1; } void adc0809() //AD转换 { P1=0xff; //读取P1口之前先给其写全1 START=0; START=1; START=0; while(EOC==0); OE=1; ad_data=P1; //AD数据读取赋给P1口 OE=0; } /*---------AD转换结果处理--------*/ void ad_compute() //u=2.55+T/100, 2.55反映在AD上为0x83 { char t_temp; unsigned char i; ad_data=ad_data-0x83; t_temp=ad_data*2-4; if((t_temp>count)&&(count>0)) //大于上限设定值,则开启报警装置 { for(i=0;i<50;i++) { led=~led; buzzer=~buzzer; } led=0; buzzer=1; } else { led=1; buzzer=0; } if((t_temp<count)&&(count<0)) //小于下限设定值,则开启报警装置 { for(i=0;i<50;i++) { led=~led; buzzer=~buzzer; } led=0; buzzer=1; } else { led=1; buzzer=0; } if(t_temp>0) { dis[3]=t_temp/100; //最高位 dis[2]=t_temp/10%10; dis[1]=t_temp%10; dis[0]=t%5*2; //最低位 } else { t_temp=~(t_temp-1); dis[3]=11; dis[2]=t_temp/10; dis[1]=t_temp%10; dis[0]=t%5*2; } } void CountDisplay() //count显示函数 { if(count>0) { wei4=0;P3=dis_7[count%10]; delay(90);wei4=1; wei3=0;P3=dis_7[count/10%10]; delay(90);wei3=1; wei2=0;P3=dis_7[count/100]; delay(90);wei2=1; } else{ count=~(count-1); //将负数转变为正数 wei4=0;P3=dis_7[count%10]; delay(90);wei4=1; wei3=0;P3=dis_7[count/10]; delay(90);wei3=1; wei2=0;P3=dis_7[11]; delay(90);wei2=1; count=(~count)+1; //将正数转变为负数 } } void keyscan() { unsigned char i; if(keynum==0) //当设置限定值时,不能进入显示电路 { if((k1!=0)&&(k2!=0)) //K1和K2都没有按下时,显示第一路 { adda=0; addb=0; addc=0; adc0809(); ad_compute(); AdDisplay(); } if((k1==0)&&(k2==1)) //K1键按下,K2没按,显示第二路 { delay10ms(); if((k1==0)&&(k2==1)) { adda=1; ddb=0; addc=0; adc0809(); ad_compute(); AdDisplay(); } } if((k1==1)&&(k2==0)) //K1键没按下,K2按下,显示第三路 { delay10ms(); if((k1==1)&&(k2==0)) { adda=0; addb=1; addc=0; adc0809(); ad_compute(); AdDisplay(); } } if((k1==0)&&(k2==0)) //K1键按下,K2也按下,显示第四路 { delay10ms(); if((k1==0)&&(k2==0)) { adda=1; addb=1; addc=0; adc0809(); ad_compute(); AdDisplay(); } } } if(Jia==0) //设置上限值(即加键) { delay10ms(); if(Jia==0) { count+=10; keynum+=1; if(count==200) {count=10;} i=0; while((i<50)&&(!Jia)) //判断加键松开没有 { i++; delay10ms(); } wei4=0;P3=dis_7[count%10]; delay(90);wei4=1; wei3=0;P3=dis_7[count/10%10]; delay(90);wei3=1; wei2=0;P3=dis_7[count/100]; delay(90);wei2=1; } } if(Jian==0) //设置下限值(即减键) { delay10ms(); if(Jian==0) { count-=10; keynum+=1; if(count==-60) {count=0;} i=0; while((i<50)&&(!Jian)) //判断减键松开没有 { i++; delay10ms(); } CountDisplay(); //显示count值 } } if(keynum!=0) { if(k2==0) //k2此时为设定值确认键(即K2按下才能结束设置) { delay10ms(); if(k2==0) { keynum=0; i=0; while((i<50)&&(!k2)) //判断K2键松开没有 { i++; delay10ms(); }}} CountDisplay(); //显示count值 }} void main() // 主程序 {count=70; while(1) {keyscan(); }} 五、 仿真与调试 (一) 第一路采集系统工作 (二) 第二路温度采集系统工作 (三) 第三路采集系统工作 (四) 第四路采集系统工作 六、 性能测试与分析 把硬件电路连接完成后,进行运行,看电路连接是否正确,无开关按下时,第一路采集电路导通;当K1按下时,第二路采集电路导通;当K2按下时,第三路采集电路导通;当K1和K2同时按下时,第四路采集电路导通,再通过jia和jian调解温度上限及下限,K2充当确认值,当温度达到上限值或下限值时,LED灯点亮同时蜂鸣器发出声音。 在调试过程中主要是对程序的修改,特别是延时程序,开始延时程序较短时,数码管显示但不稳定显示温度。通过修改程序,将延时调到适中,系统正常工作。 七、 结论与心得 本次课程设计,让我受益匪浅。对c51程序设计加深了理解和掌握,我们这次设计的要求主要单片机原理及其运用,掌握它们的初始化编程,这是一个比较全面的设计,和以前的实验相比较复杂很多,一方面要求我们设计硬件电路,另一方面需要对设计的硬件电路进行编程,这就需要软件和硬件相结合,将它们进行联调,具体的电路具体分析,让我们更加的了解AT89C51的运用,还有如何的进行A/D转换。在此设计中遇到了很多困难,一开始的时候,硬件电路测试都没成功,最后把所有的电路都拆了,一个一个测试,进行数据转换的时候,开始转换出来的数据都一样的,无论温度是否发生变化,经过仔细分析才知道是了一定的体会,它要求我们认真仔细的做好每个环节。 当我们接手一个课题或项目的时候,不是马上动手,而是先进行可行性论证。首先提出方案,然后根据方案去实施,方案中的不足之处,在操作的时候进行改进,最后得到更加完美的方案。 在设计过程中,同时还加深了对单片机的了解及其运用。将书本上的知识与实际相联合,会更好的掌握知识,学到在书本上更本学不到的内容,提高了我们的分析问题和解决问题的能力,强化了创新认识,为将来激烈的竞争打下基础,也培养了我们严肃认真的科学态度,优良的思维模式,和严谨求实的工作风。 八、 参考文献 [1] 张俊谟.单片机中级教程—原理与应用. 北京航天航空大学出版社 [2] 刘大茂.智能仪器与设计.国防工业出版社 [3] 谭浩强. C程序设计. 北京:清华大学出版社 [4] 李伯成. 微型计算机原理及应用技术. 西安电子科技大学 九.课程设计进度安排 起 止 日 期 工 作 内 容 2015年12月7日-12月8日 12月8日-6月9日 12月9日-12月11日 12月11日-12月13日 题目分析,查阅资料与方案选择 原理图的绘制 编写软件程序并与仿真 撰写设计报告 十.成绩考核办法 根据学生在实习中的表现、实习报告的质量,以及各项目实习老师给予的实习鉴定综合考核评分,按按优秀、良好、中等、及格和不及格五级计分。 教研室审查意见: 教研室主任签字: 年 月 日 二级学院意见: 主管领导签字: 年 月 日 目 录 第一章 总 论 1 1.1项目概况 1 1.2研究依据及范围 3 1.3主要技术经济指标 4 1.4研究结论及建议 4 第二章 项目建设的背景和必要性 6 2.1项目建设的背景 6 2.2项目建设的必要性 8 第三章 项目服务需求分析 11 第四章 项目选址与建设条件 13 4.1选址原则 13 4.2项目选址 13 4.3建设条件 14 4.4项目建设优势条件分析 15 第五章 建设方案 18 5.1建设规模与内容 18 5.2总体规划设计 19 5.3建筑方案 24 5.4结构方案 26 5.5给水工程 27 5.6排水工程 29 5.7电气设计 31 5.8暖通设计 34 5.9项目实施进度 35 第六章 节能措施 37 6.1 设计依据 37 6.2节能措施 37 第七章 环境影响分析 39 7.1 环境影响分析 39 7.2 环境保护措施及治理效果 40 第八章 消防与安全卫生 42 8.1 消防 42 8.2 劳动安全 43 8.3 卫生防护 44 第九章 组织机构与运作方式 45 9.1 组织机构 45 9.2组织管理 46 9.3劳动定员 46 第十章 投资估算 47 10.1编制依据 47 10.2 投资估算 47 10.3资金筹措 48 第十一章 经济效益评价 49 11.1 成本核算 49 11.2 利润估算 51 11.3经济风险分析 52 11.4财务评价结论 54 第十二章 结 论 55 23- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单机 课程设计 温度 采集 报警 系统 设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文