




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
机电工程学院单片机课程设计任 务 书设计(论文)名称: 温度采集报警系统设计专 业: 通信工程 学生姓名: 指导教师: 下达时间:2015年 12 月7 日 1、 课程设计任务:1. 加深对单片机硬件电路设计和软件编程的理解,结合实践进一步加深对单元电路基本功能的掌握和应用。2. 通过具体任务要求,掌握一种常用电子电路仿真的软件,使学生能利用所学理论知识完成实际电路的设计、仿真和制作。3. 学会利用单片机设计频率,了解单片机ADC的应用、LED数码管显示的设计等知识。4. 掌握51单片机软件开发环境,学会KEIL软件的使用和程序的调试方法。2、 课程设计的基本要求:1. 设计51单片机最小系统。2. 完成至少4路温度信号采集。3. 能实时显示各路温度信号值。4. 具有温度上、下限报警功能。5. 可设定系统报警温度上、下限。6.撰写课程设计论文要求符合模板的相关要求,字数要求4000字以上。 目录 一、 设计任务与要求1二、 总体方案设计1三、 单元电路设计与参数计算1四、 总原理图6五、 仿真与调试15六、 性能测试与分析17七、 结论与心得18八、 参考文献19 温度采集报警系统设计1、 设计任务与要求(1) 设计任务 (1) 以单片机为核心,设计一个温度采集报警系统设计; (2) 完成至少4路温度信号采集。 (3) 能实时显示各路温度信号值。 (4) 具有温度上、下限报警功能。 (5) 可设定系统报警温度上、下限。(2) 设计要求 (1)根据功能要求选择设计方案,并进行论证; (2)画出电路的总体方框图和电路原理图; (3)说明系统工作原理,对系统进行调试; (4)写出课程设计报告。2、 总体方案设计1 总体设计思路(1)采用单片机作为数据处理与控制单元,为了进行数据处理,单片机控制温度传感器,把温度信号通过模数转换模块(ADC0808)从温度传感器传递到单片机.单片机进行数据处理之后发出控制信号改变报警和控制执行模块的状态,同时将当前温度信息发送到数码管进行显示.(2)通过四个按键控制四路温度采集的切换.(3)通过两个按键来调节温度上下限,当采集到的温度超过设定的数值是,启动蜂鸣器发出报警信号,同时点亮发光二极管.2 总体设计原理八路模拟信号数值测量显示电路由A/D转换、数据处理及显示控制等组成。3、 单元电路设计与参数计算(1) 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/的特性,可计算出当前的温度值。(4) 按键电路图(五)按键电路连接 如图所示,k1,k2为四路温度采集电路的切换按键。当无按键按下时时,第一路采集电路导通;当K1按下时,第二路采集电路导通;当K2按下时,第三路采集电路导通;当K1和K2同时按下时,第四路采集电路导通。JIA按键为调节温度上限按键,JIAN按键为调节温度下限按键。(5) 报警电路图(六)报警电路当前采集到的温度如果超过或者低于设定的温度上下限,则led灯发光同时蜂鸣器发出报警信号。4、 总原理图(一)硬件电路图(七)整体模块图(八)总体硬件电路图(2) 软件程序#includesbit START=P20; /IO口定义sbit EOC=P21;sbit OE=P22;sbit adda=P24;sbit addb=P25;sbit addc=P26;sbit buzzer=P23; /蜂鸣器定义sbit led=P27;/LEd定义sbit wei1=P03;/位选定义sbit wei2=P02;sbit wei3=P01;sbit wei4=P00;sbit k1=P04;sbit k2=P05;sbit Jia=P06;/加键定义sbit Jian=P07;/减键定义unsigned char ad_data,t;char count;unsigned char keynum;unsigned char dis4=0x00,0x00,0x00,0x00;/*用来放AD转换处理结果值*/unsigned char code dis_712=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(;t0;t-) ; void delay10ms(void) /误差 0us unsigned char a,b,c; for(c=5;c0;c-) for(b=4;b0;b-) for(a=248;a0;a-);void AdDisplay() /AD转换显示 wei4=0;P3=dis_7dis0; delay(90);wei4=1;wei3=0;P3=dis_7dis1|0x80; delay(90);wei3=1;/加入小数点wei2=0;P3=dis_7dis2; delay(90);wei2=1;wei1=0;P3=dis_7dis3; 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_tempcount)&(count0)/大于上限设定值,则开启报警装置for(i=0;i50;i+)led=led;buzzer=buzzer;led=0;buzzer=1;elseled=1;buzzer=0;if(t_tempcount)&(count0)/小于下限设定值,则开启报警装置 for(i=0;i0)dis3=t_temp/100;/最高位dis2=t_temp/10%10;dis1=t_temp%10;dis0=t%5*2;/最低位 elset_temp=(t_temp-1);dis3=11;dis2=t_temp/10;dis1=t_temp%10;dis0=t%5*2; void CountDisplay()/count显示函数if(count0)wei4=0;P3=dis_7count%10; delay(90);wei4=1;wei3=0;P3=dis_7count/10%10; delay(90);wei3=1;wei2=0;P3=dis_7count/100; delay(90);wei2=1;elsecount=(count-1); /将负数转变为正数wei4=0;P3=dis_7count%10; delay(90);wei4=1;wei3=0;P3=dis_7count/10; delay(90);wei3=1;wei2=0;P3=dis_711; 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(i50)&(!Jia)/判断加键松开没有i+;delay10ms();wei4=0;P3=dis_7count%10; delay(90);wei4=1;wei3=0;P3=dis_7count/10%10; delay(90);wei3=1;wei2=0;P3=dis_7count/100; delay(90);wei2=1;if(Jian=0)/设置下限值(即减键)delay10ms();if(Jian=0)count-=10;keynum+=1;if(count=-60)count=0;i=0;while(i50)&(!Jian) /判断减键松开没有i+;delay10ms();CountDisplay(); /显示count值if(keynum!=0)if(k2=0) /k2此时为设定值确认键(即K2按下才能结束设置)delay10ms();if(k2=0)keynum=0;i=0;while(i50)&(!k2) /判断K2键松开没有i+;delay10ms();CountDisplay(); /显示count值void main() /主程序count=70;while(1)keyscan();5、 仿真与调试(1) 第一路采集系统工作(2) 第二路温度采集系统工作(3) 第三路采集系统工作(4) 第四路采集系统工作 6、 性能测试与分析把硬件电路连接完成后,进行运行,看电路连接是否正确,无开关按下时,第一路采集电路导通;当K1按下时,第二路采集电路导通;当K2按下时,第三路采集电路导通;当K1和K2同时按下时,第四路采集电路导通,再通过jia和jian调解温度上限及下限,K2充当确认值,当温度达到上限值或下限值时,LED灯点亮同时蜂鸣器发出声音。 在调试过程中主要是对程序的修改,特别是延时程序,开始延时程序较短时,数码管显示但不稳定显示温度。通过修改程序,将延时调到适中,系统正常工作。7、 结论与心得本次课程设计,让我受益匪浅。对c51程序设计加深了理解和掌握,我们这次设计的要求主要单片机原理及其运用,掌握它们的初始化编程,这是一个比较全面的设计,和以前的实验相比较复杂很多,一方面要求我们设计硬件电路,另一方面需要对设计的硬件电路进行编程,这就需要软件和硬件相结合,将它们进行联调,具体的电路具体分析,让我们更加的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 11431:2025 EN Building and civil engineering sealants - Determination of adhesion and cohesion properties of sealants after exposure to heat,water and artificial light
- 迪士尼考试题及答案
- 公关考试题及答案
- 中外教育史(楚雄师范学院)知到智慧树答案
- 药品发货、出库复核、运输培训试题(附答案)
- 妊娠期高血压疾病诊疗指南试题及答案
- 急诊医学中心危急值报告制度考核试题及答案
- 2025版水稻种植与农业大数据合作收购合同
- 2025版特种设备租赁及操作培训合同
- 2025年度商业秘密与行业竞限合作协议
- 清华大学《大学物理》习题库试题及答案
- 祥康百年养生堂王晗老师讲座定稿版
- 数字填图DGSS操作步骤
- GB/T 457-2008纸和纸板耐折度的测定
- GB/T 40565.4-2021液压传动连接快换接头第4部分:72 MPa螺纹连接型
- GB/T 18608-2012原油和渣油中镍、钒、铁、钠含量的测定火焰原子吸收光谱法
- 核电质量保证-质量体系培训课件
- DB61-T 1587-2022家政服务员沟通服务规范
- 满堂脚手架方案
- DB32T 4353-2022 房屋建筑和市政基础设施工程档案资料管理规程
- T∕CGSS 004-2019 适老营养配方食品通则
评论
0/150
提交评论