单片机课设说明书_第1页
单片机课设说明书_第2页
单片机课设说明书_第3页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录前言 1系统总体方案 2总体设计框图 2各模块简介 2系统硬件设计 5单片机电路设计 5DS18B20温度传感器电路设计 5显示电路设计 6按键电路设计 7报警电路设计 7软件电路设计 8DS18B20程序设计 8DS18B20温度传感器操作流程 8DS18B20温度传感器的初始化时序 8DS18B20温度传感器的读写时序 9DS18B20温度传感器获取温度程序流程图 10显示程序设计 11按键程序程序设计 11总结 12参考文献 13附录一 14附录二 15单片机课程设计单片机课程设计PAGEPAGE17引言随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。在信息采集(传感器技术传输(通信技术)和信息处理(计算机技术)三大信息技术中,传感器属于信息技术的前沿尖端产品,尤其是温度传感器技术,在我国各领域已经引用的非常广泛,可以说是渗透到社会的每一个领域,人民的生活与环境的温度息息相关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义。测量温度的关键是温度传感器,温度传感器的发展经历了三个发展阶段:传统的分立式温度传感器,模拟集成温度传感器,智能集成温度传感器。目前的智能温度传感器(亦称数字温度传感器)2090术和自动测试技术的结晶,特点是能输出温度数据及相关的温度控制量,适配各种微控制器(MCU。社会的发展使人们对传感器的要求也越来越高,现在的温度传网络传感器、研制单片测温系统等高科技的方向迅速发展。DS18B20直接输出的就是数字信号,与传统的温度计相比,具有读数方便,测温范围广,测温准确,LED51AT89S52,AT89S52单片机在工控、测量、仪器仪表中应用还是比较广泛的。测温传感器使用的是DS18B20,DS18B20高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。显示是用4LED实现温度显示,LED量温度超过设定的上下限时的报警功能。系统总体方案系统总体设计框图DS18B20感器网络,并可使多点温度测量电路变得简单、可靠,所以在该设计中采用DS18B20字温度传感器测量温度。1-1DS18B204LED数码管,报警采用蜂鸣器、LED灯实现,键盘用来设定报警上下限温度。图1-1温度计电路总体设计框图各模块简介控制模块AT89S52ATMELCMOS8位单片机,片8kbFlash只读程序存储器,器件采用ATMEL80518位CPUFlashAT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8kFlash,256RAM,32I/O口线,看门狗定时器,216位定时器/62级中断结构,全0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPURAM、定时器/计数器、串作停止,直到下一个中断或硬件复位为止。显示模块4LEDP0口输出段码,P2I/O口。温度传感器模块DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。DS18B20的性能特点如下:独特的单线接口仅需要一个端口引脚进行通信;多个DS18B20可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压范围为3.0~5.5v;零待机功耗;温度以9或12位二进制数字表示;用户可定义报警设置;报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B2064ROM848856CRCDS18B20可以THTLDS18B20RAM和一个非易失性的可电擦除的EEPRAM。高速暂存RAM的结构为8字节的存储器,结构如图1-2所示。图1-2DS18B20的高速暂存RAM的结构234THTL5分辨率,DS18B201-1所示。表1-1:配置寄存器D7D6D5D4D3D2D1D0TMR1R01111151,TMDS18B20在工作模式还是在测试模式,DS18B200,用户要去改动,R1R0决定温度转换的精度位数,来设置分辨率R1R0009011010112DS18B20在实际应用中要将分辨率和转换时间权衡考虑。RAM678198CRC码,可用来检验数据,从而保证通信数据的正确性。DS18B2016120.0625℃/LSB形式表示。s=0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;s=15位是符号位,最后4位是温度小数点位,中间71-2是一部分温度值对应的二进制温度数据。表1-2 DS18B20输出的温度值温度值二进制输出十六进制输出+125℃000001111101000007D0h+85℃00000101010100000550h+25.0625℃00000001100100010191h+10.125℃000000001010001000A2h+0.5℃00000000000010000008h0℃00000000000000000000h-0.5℃1111111111111000FFF8h-10.125℃1111111101011110FF5Eh-25.0625℃1111111001101111FF6Fh-55℃1111110010010000FC90hDS18B20RAMTH、TL字节内容作比较。若T>THT<TLDS18B2064ROM的最高有效字节中存储有循环冗余检验码(CRROM56CRC值,DS18B20CRC值作比较,以判断主机收到的ROM数据是否正确。调节模块介绍I/O口完成的。当按键没有按下时单此时为低电平。程序设计为低电平触发。报警模块介绍PNP90125V发光二极管组成的。报警时蜂鸣器间歇性报警,发光二极管闪烁。系统硬件设计单片机电路设计2-1所示。图2-1单片机最小系统原理图DS18B20温度传感器电路设计DS18B202-2,DS18B201,2,3图2-2 DS18B20电源供电方式DS18B20A/D10usVDD线,因此发送接口必须是三态的。显示电路设计90132-3所示。图2-3四位一体的共阴数码管管脚分布图显示电路的总体设计如图2-6所示。图2-4 显示电路按键电路设计按键电路是用来实现调节设定报警温度的上下限和查看上下报警温度的功能。电路原理图如图2-10所示。S1S2P3.1S2P3.1S3P3.0S4P3.3GND报警电路设计

图2-5 按键电路原理图报警电路是在测量温度大于上限或小于下限时提供报警功能的电路。该电路是由一个蜂鸣器和一个红色的发光二极管组成,具体的电路如图2-9所示。图2-6报警电路原理图软件电路设计DS18B20DS18B20DS18B20的通讯协议,主机(单片机)DS18B20三个步骤:DS18B20(2)ROM指令;(3)最后发送RAM指令。DS18B20CPU500μs,然DS18B2016~60μs60~240μsCPU收到此信号表示复位成功。DS18B20的操作流程如图3-1所示。如图3-1DS18B20的操作流程DS18B20DS18B20传感器为单总线结构器件,在读写操作之前,传感器芯片应先进性复位操作也就是初始化操作。DS18B203-2所示。首先控制器拉高数据总线,接着控制器给数480μsμs的低电平,接着上拉电阻将数据线拉高,这样才初始化完成。图3-2DS18B20初始化时序DS18B20温度传感器的读写时序写时序DS18B20传感器的读写操作是在传感器初始化后进行的。每次操作只能读写一位。当主机把数据线从高电平拉至低电平,产生写时序。有两种类型的写时序:写“0”60μs1μs的恢复期。在数据总线由高电平变为低电平之后,DS18B2015μs60μs线采样,如果为“1DS18B20写“1”,如果为“0DS18B20写“0”。对于主机产生写“1”时序时,数据线必须先被拉至低电平,且至少保持低电平60μs15μs内拉至高电平。读时序1μs15μs1μsDS18B2015μs的输出数据。60μs的持续期。读时序结束后数据线由上拉电阻拉至高电平。另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作按协议进行。操作协议为:初使化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。DS18B20温度传感器获取温度程序流程图DS18B20的读字节,写字节,获取温度的程序流程图如图3-3所示。开始开始DQ=1DQ=0延时480μsDQ=1YDQ=1N延时80μsDQ=1结束开始d=1DQ=1i=8开始d=1DQ=1i=8Ni>0Yd>>=1DQ=0延时2μsDQ=1NDQ=1Yd|=0x80延时60μsi--returnd结束开始i=8Ni>0YDQ=0延时2μsDQ=d&0x01延时30μsμsd>>=1i--结束开始DS18B20初始化写0xcc跳过读ROM

DS18B20写字节程序流程图写0x44启动写0x44启动DS18B20延时500μsDS18B20始化写0xcc跳过读ROM写0xbe读DS18B20结束DS18B20获取温度程序流程图图3-3DS18B20程序流程图显示程序设计开始i=0Ni<4Yi++结束开始i=0Ni<4Yi++结束根据i的值进行选择i=0i=3i=1 i=2点亮第一个点亮第二个 点亮第三个点亮第四个数码管数码管 数码管数码管按键程序设计

图3-4显示程序流程图按键是用来设定上下限报警温度的。具体的程序流程图如图3-5所示。开始N开始NK1=0YS=0调上限S=1调下限NK1=0K1=0YYTemp++Temp--结束图3-5按键程序流程图总结不知不觉中,一周的课程设计实习已经接近尾声了。可能是假期快到的缘故,总感觉这次实习特别短暂。此刻,真是感慨万千啊!现在我可以自豪的说,这次实习我达到了预期的目标。因为在实习期间,我每天都在接触新的东西,每天都会有新的问题等待我去探讨去解决,每天都有新收获。经过将近一周的设计、编程、调试,我们终于完成了数字温度计的设计,基本能够达到设计要求,而且还设计了一些其他功能,比可以开启或消除按键音功能,开机动画功能,查看报警上下限温度功能。怎样将我们所学到的知识运用到实践中去。在大学课堂的学习只是给我们灌输专业知贵的经验。在本次设计的过程中,我们遇到不少的问题,本次设计的另一个重点就是软件程序的设计,其中需要有很巧妙的程序算法,虽然以前写过几次程序,但我觉的写好一个程序并不是一件简单的事,有好多的东西,只有我们去试着做了,才能真正的掌握,只学习理论,有些东西是很难理解的,更谈不上掌握。通过此次的综合设计,我们初步掌握了单片机系统设计的基本原理。充分认识到理论学习与实践相结合的重要性,对于书本上的很多知识,不但要学会,更重要的是会运用到实践中去。在以后的学习中,我们会更加注重实践方面的锻炼,多提高自己的动手实践能力。参考文献.单片机的C[M].:,2007.单片机C[M].:,2007[M].:,1994[M].:,1986.[M].:,1997)[M].机械工业出版社,2005.2[M].复旦大学出版社,2000.4附录一系统整体硬件Proteus仿真图如下:附录二C#include<reg51.h>#include<intrins.h>#defineDisdataP0#definediscanP2#defineucharunsignedchar#defineuintunsignedintsbitDQ=P3^3;sbitDIN=P0^7;uinth;ucharflag;ucharcodeditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08,0x09,0x09};dis_7[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf};ucharcodescan_con[4]={0xfe,0xfd,0xfb,0xf7};uchardatatemp_data[2]={0x00,0x00};uchardatadisplay[5]={0x00,0x00,0x00,0x00,0x00};voiddelay(uintt){for(;t>0;t--);}voidscan(){chark;for(k=0;k<4;k++){ Disdata=0xff;Disdata=dis_7[display[k]];if(k==1){DIN=0;}discan=scan_con[k];delay(90);discan=0xff;}}voidow_reset(void){charpresence=1;while(presence){while(presence){DQ=1;_nop_();_nop_();DQ=0;delay(50);DQ=1;delay(6);presence=DQ;}delay(45);presence=~DQ;}DQ=1;}voidwrite_byte(ucharval){uchari;for(i=8;i>0;i--){DQ=1;_nop_();_nop_();DQ=0;_nop_();_nop_();_nop_();_nop_();_nop_();DQ=val&0x01;delay(6);val=val/2;}DQ=1;delay(1);}ucharread_byte(void){ uchari;ucharvalue=0;for(i=8;i>0;i--){DQ=1;_nop_();_nop_();value>>=1;DQ=0;_nop_();_nop_();_nop_();_nop_();DQ=1;_nop_();_nop_();_nop_();_nop_();if(DQ)value|=0x80;delay(6);}DQ=1;return(value);}voidread_temp(){ow_reset();write_byte(0xcc);write_byte(0xbe);temp_data[0]=read_byte();temp_data[1]=read_byte();ow_reset();write_byte(0xcc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论