基于单片机的温度采集系统设计课程设计Word文档格式.docx
《基于单片机的温度采集系统设计课程设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的温度采集系统设计课程设计Word文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可......用它来做一些控制电器一类不是很复杂的工作足矣了。
我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影!
......它主要是作为控制部分的核心部件。
它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。
单片机的组成通常和普通计算机一样,通常具有以下几个部分:
(1)、CPU。
CPU是中央处理器的简称,有时也称为“核”,它是进行运算和控制的重要单元,其性能决定单片机的主要性能。
(2)、存储器。
单片机的存储器通常由ROM和RAM组成,ROM常用于存放单片机的程序,而RAM用于存放数据。
(3)、输入/输出接口。
计算机的输入/输出接口用于连接外围设备,例如键盘、显示器、打印机、A/D或D/A转换器等,实现与外围设备的数据交换。
在普通计算机上,这些功能是由主板上的若干芯片实现的;
对于单片机,这些对应的功能单元集成在其内部。
随着技术的发展,单片机的功能日益增多,有些单片机除了上述功能以外,还集成有其他部件,如各种异步和同步串行接口、CAN通信控制器等。
通常,称单片机内部除CPU外的功能单元为片内外设,也称为内部资源。
单片机具有以下主要特点:
(1)、价格便宜。
单片机尽管集成了众多资源,但其结构简单,生产批量大,因此价格十分便宜,通常在几元到几十元人民币。
(2)、体积小。
目前最小的单片机只有6个引脚,十几到二十几个引脚的单片机也很多,还有表面贴片封装的,体积很小,便于设计成嵌入式系统安装在电子设备中,以实现智能控制。
当然,功能强大的单片机引脚也相应较多,例如有40、52、68,甚至更多引脚的单片机,但在采用表面贴片封装后,其体积并不大。
(3)、技术成熟、应用广泛。
相对于大型计算机和PC机,单片机的技术难度小,复杂度低,因此其技术相当成熟。
单片机的稳定可靠,为在单片机的广泛应用创造了技术条件。
在现代社会,电子产品在日常生活中不可或缺,而电子产品往往离不开单片机,可见单片机的应用之广。
单片机在计算机家族中占据着重要地位,是电子工程师应该掌握的最基本工具之一。
当然,就功能的完备性和强大性而言,单片机不能和高级计算机相比,但这不影响它的应用范围。
实际工作中,并非所有场合都要求计算机有很高的性能,例如电冰箱温度控制并不需要使用主频达1.8GHz的奔腾机。
应用单片机的关键是看其功能是否够用,性价比是否合适。
单片机不会因其简单而被淘汰,例如MCS-51单片机退出来二十多年了,仍然是一款应用最广的单片机,而且在不断发展。
可以说,只有在单片机出现后,计算机才能真正地从科学的神圣殿堂走入了寻常百姓家,成为广大工程技术人员进行技术革命和技术革新的有力武器。
单片机的应用
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:
1.在智能仪器仪表上的应用
单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。
例如精密的测量设备(功率计,示波器,各种分析仪)。
2.在工业控制中的应用
用单片机可以构成形式多样的控制系统、数据采集系统。
例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。
3.在家用电器中的应用
可以这样说,现在的家用电器基本上都采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子秤量设备,五花八门,无所不在。
4.在计算机网络和通信领域中的应用
现代的单片机普遍具备通信接口,可以很方便地与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机,电话机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,
无线电对讲机等。
5.单片机在医用设备领域中的应用
单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。
6.在各种大型电器中的模块化应用
某些专用单片机设计用于实现特定功能,从而在各种电路中进行模块化应用,而不要求使用人员了解其内部结构。
如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原理。
如:
音乐信号以数字的形式存于存储器中(类似于ROM),由微控制器读出,转化为模拟音乐电信号(类似于声卡)。
在大型电路中,这种模块化应用极大地缩小了体积,简化了电路,降低了损坏、错误率,也方便于更换。
7.单片机在汽车设备领域中的应用
单片机在汽车电子中的应用非常广泛,例如汽车中的发动机控制器,基于CAN总线的汽车发动机智能电子控制器,GPS导航系统,制动系统等等。
此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。
单片机学习应用的六大重要部分
一、总线:
我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中,连线并不成为一个问题,因为各器件间一般是串行关系,各器件之间的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以需要的连线就很多了,如果仍如同模拟电路一样,在各微处理器和各器件间单独连线,则线的数量将多得惊人,所以在微处理机中引入了总线的概念,各个器件共同享用连线,所有器件的8根数据线全部接到8根公用的线上,即相当于各个器件并联起来,但仅这样还不行,如果有两个器件同时送出数据,一个为0,一个为1,那么,接收方接收到的究竟是什么呢?
这种情况是不允许的,所以要通过控制线进行控制,使器件分时工作,任何时候只能有一个器件发送数据(可以有多个器件同时接收)。
器件的数据线也就被称为
数据总线,器件所有的控制线被称为控制总线。
在单片机内部或者外部存储器及其它器件中有存储单元,这些存储单元要被分配地址,才能使用,分配地址当然也是以电信号的形式给出的,由于存储单元比较多,所以,用于地址分配的线也较多,这些线被称为地址总线。
二、数据、地址、指令:
之所以将这三者放在一起,是因为这三者的本质都是一样的——数字,或者说都是一串‘0’和‘1’组成的序列。
换言之,地址、指令也都是数据。
指令:
由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有着严格的一一对应关系,不可以由单片机的开发者更改。
地址:
是寻找单片机内部、外部的存储单元、输入输出口的依据,内部单元的地址值已由芯片设计者规定好,不可更改,外部的单元可以由单片机开发者自行决定,但有一些地址单元是一定要有的(详见程序的执行过程)。
数据:
这是由微处理机处理的对象,在各种不同的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况:
1.地址(如MOVDPTR,1000H),即地址1000H送入DPTR。
2.方式字或控制字(如MOVTMOD,#3),3即是控制字。
3.常数(如MOVTH0,#10H)10H即定时常数。
4.实际输出值(如P1口接彩灯,要灯全亮,则执行指令:
MOVP1,#0FFH,要灯全暗,则执行指令:
MOVP1,#00H)这里0FFH和00H都是实际输出值。
又如用于LED的字形码,也是实际输出的值。
理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞,会把数据当成指令来执行了。
三、P0口、P2口和P3的第二功能用法:
初学时往往对P0口、P2口和P3口的第二功能用法迷惑不解,认为第二功能和原功能之间要有一个切换的过程,或者说要有一条指令,事实上,各端口的第二功能完全是自动的,不需要用指令来转换。
如P3.6、P3.7分别是WR、RD信号,当微处理机外接RAM或有外部I/O口时,它们被用作第二功能,不能作为通用I/O口使用,只要
--微处理机--执行到MOVX指令,就会有相应的信号从P3.6或P3.7送出,不需要事先用指令说明。
事实上‘不能作为通用I/O口使用’也并不是‘不能’而是(使用者)‘不会’将其作为通用I/O口使用。
你完全可以在指令中按排一条SETBP3.7的指令,并且当单片机执行到这条指令时,也会使P3.7变为高电平,但使用者不会这么去做,因为这通常会导致系统的崩溃。
四、程序的执行过程:
单片机在通电复位后8051内的程序计数器(PC)中的值为‘0000’,所以程序总是从‘0000’单元开始执行,也就是说:
在系统的ROM中一定要存在‘0000’这个单元,并且在‘0000’单元中存放的一定是一条指令。
五、堆栈:
堆栈是一个区域,是用来存放数据的,这个区域本身没有任何特殊之处,就是内部RAM的一部份,特殊的是它存放和取用数据的方式,即所谓的‘先进后出,后进先出’,并且堆栈有特殊的数据传输指令,即‘PUSH’和‘POP’,有一个特殊的专为其服务的单元,即堆栈指针SP,每当执一次PUSH指令时,SP就(在原来值的基础上)自动加1,每当执行一次POP指令,SP就(在原来值的基础上)自动减1。
由于SP中的值可以用指令加以改变,所以只要在程序开始阶段更改了SP的值,就可以把堆栈设置在规定的内存单元中,如在程序开始时,用一条MOVSP,#5FH指令,就是把堆栈设置在从内存单元60H开始的单元中。
一般程序的开头总有这么一条设置堆栈指针的指令,因为开机时,SP的初始值为07H,这样就使堆栈从08H单元开始往后,而08H到1FH这个区域正是8031的第二、三、四工作寄存器区,经常要被使用,这会造成数据的混乱。
不同作者编写程序时,初始化堆栈指令也不完全相同,这是作者的习惯问题。
当设置好堆栈区后,并不意味着该区域成为一种专用内存,它还是可以象普通内存区域一样使用,只是一般情况下编程者不会把它当成普通内存用了。
第二章总体方案设计
2.1课题的意义
课程设计是单片机课程教学的最后一个环节,是对学生进行全面的系统的训练。
进行课程设计可以让学生把学过的比较零碎的知识系统化,真正的能够把学过的知识落到实处,能够开发简单的系统,也进一步激发了学生再深一步学习的热情,因此课程设计是必不可少的,是非常必要的。
在设计中我们可以消化与巩固《单片机及接口技术》课程所学知识;
理论联系实际,学会用理论知识解决实际问题;
培养设计能力,初步掌握设计的一般步骤与方法
2.2系统整体硬件电路
2.2.1芯片简介
Max232串口芯片
MAX232芯片是专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。
内部结构基本可分三个部分:
第一部分是电荷泵电路。
由1、2、3、4、5、6脚和4只电容构成。
功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。
第二部分是数据转换通道。
由7、8、9、10、11、12、13、14脚构成两个数据通道。
其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。
8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。
TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;
DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
第三部分是供电。
15脚DNG、16脚VCC(+5v)。
RS232(DB9)引脚定义:
1:
DCD:
载波检测。
主要用于Modem通知计算机其处于在线状态,即Modem检测到拨号音,处于在线状态。
2:
RXD:
此引脚用于接收外部设备送来的数据;
在你使用Modem时,你会发现RXD指示灯在闪烁,说明RXD引脚上有数据进入。
3:
TXD:
此引脚将计算机的数据发送给外部设备;
在你使用Modem时,你会发现TXD指示灯在闪烁,说明计算机正在通过TXD引脚发送数据。
4:
DTR:
数据终端就绪;
当此引脚高电平时,通知Modem可以进行数据传输,计算机已经准备好。
5:
GND:
信号地;
此位不做过多解释。
6:
DSR:
数据设备就绪;
此引脚高电平时,通知计算机Modem已经准备好,可以进行数据通讯了。
7:
RTS:
请求发送;
此脚由计算机来控制,用以通知Modem马上传送数据至计算机;
否则,Modem将收到的数据暂时放入缓冲区中。
8:
CTS:
清除发送;
此脚由Modem控制,用以通知计算机将欲传的数据送至Modem。
9:
RI:
Modem通知计算机有呼叫进来,是否接听呼叫由计算机决定
DS18b20
DS1820是Dallas半导体公司生产的数字化温度传感器,是世界上第一片支持“一线总线”接口的温度传感器。
一线总线独特而经济的特点,使用户可以轻松的组件传感器网络,为测量引入全新的概念。
新一代的“DS18B20”体积更小、更经济、更灵活,使用户可以充分发挥一线总线的长处[5]。
同DS1820一样,DS18B20也支持“一线总线”接口,测量温度范围为-55℃~+125℃,在-10℃~+85℃范围内,精度为±
0.5℃。
现场温度范围以“一线总线”的数字方式传输,大大提高了系统的抗干扰性,适合于恶劣环境的现场温度测量,如设备控制、设备或过程控制、测温类消费电子产品等。
DS18B20的特性
(1)独特的单接口仅需一个端口引脚进行通讯;
(2)简单的多点分布应用;
(3)无需外部器件;
(4)可通过数据线供电,无需外部电源;
(5)零待机功耗;
(6)测温范围为-55℃~+125℃,以0.5℃递增;
(7)温度以9位数字量读出;
(8)温度数字量转换时间200ms(典型值);
(9)用户可定义的非易失性温度报警设置;
(10)报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;
(11)应用包括温度控制、工业系统、消费品、温度计或任何热感测系统。
DS18B20的结构如图4.1所示:
图4.1DS18B20的结构图
DS18B20有三个主要的数据部件:
(1)64位激光(lasered)ROM;
(2)温度灵敏元件;
(3)非易失性温度告警触发器TH和TL。
器件从单线的通信线取得其电源,在信号线为高电平的时间周期内,把能量贮存在内部的电容器中;
在单信号线为低电平的时间期内,断开此电源,直到信号线变为高电平重新接上寄生(电容)电源为止。
作为另一种可供选择的方法,DS18B20也可用外部+5V电源供电。
max232芯片:
Mcs-51芯片
80C51单片机属于MCS-51系列单片机,由Intel公司开发,其结构是8048的延伸,改进了8048的缺点,增加了如乘(MUL)、除(DIV)、减(SUBB)、比较(PUSH)、16位数据指针、布尔代数运算等指令,以及串行通信能力和5个中断源。
采用40引脚双列直插式DIP(DualInLinePackage),内有128个RAM单元及4K的ROM。
80C51有两个16位定时计数器,两个外中断,两个定时计数中断,及一个串行中断,并有4个8位并行输入口。
80C51内部有时钟电路,但需要石英晶体和微调电容外接,本系统中采用12MHz的晶振频率。
由于80C51的系统性能满足系统数据采集及时间精度的要求,而且产品产量丰富来源广,应用也很成熟,故采用来作为控制核心单片机的40个引脚大致可分为类:
电源、时钟、控制和I/O引脚。
1电源:
1VCC-芯片电源,接+5V;
2VSS-接地端;
2时钟:
XTAL1、XTAL2-晶体振荡电路反相输入端和输出端。
⒊控制线:
控制线共有4根,
ALE/PROG:
地址锁存允许/片内EPROM编程脉冲
①ALE功能:
用来锁存P0口送出的低8位地址
②PROG功能:
片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
PSEN:
外ROM读选通信号。
RST/VPD:
复位/备用电源。
①RST(Reset)功能:
复位信号输入端。
②VPD功能:
在Vcc掉电情况下,接备用电源。
EA/Vpp:
内外ROM选择/片内EPROM编程电源。
①EA功能:
内外ROM选择端。
②Vpp功能:
片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
⒋I/O线
80C51共有4个8位并行I/O端口:
P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
。
2.2.2硬件电路设计及描述
硬件电路由:
Ds18b20,max232芯片,晶振,复位电路,声光报警电路,8051单片机等组成。
DS18b20详细引脚功能描述:
外观图:
GND地信号。
DQ数据输入/输出引脚,开漏单总线接口引脚。
当被用着在寄生电源下时,也可以向器件提供电源。
VDD外接供电电源输入端。
当工作于寄生电源时,此引脚必须接地。
DS18B20读出的温度结果的数据为两字节,用16位符号扩展的二进制补码读数形式提供。
因此在系统中要将得到的温度值数据进行格式转换才能用于显示。
这两个数据格式如图所示:
MSB
LSB
S
26
25
24
MSBLSB
23
22
21
20
2-1
2-2
2-3
2-4
高8位中的高5位是符号位,表示是零下还是零上。
高8位中的低3位D6,D5,D4和低8位中的高4位D3,D2,D1,D0构成温度的整数部分。
低8位中的D-1,D-2,D-3,D-4位温度的小数部分。
max232芯片,MAX232芯片是专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。
在制作电路前我们先来看看要用的MAX232,这里我们不去具体讨论它,只要知道它是TTL和RS232电平相互转换的芯片和基本的引脚接线功能就行了。
通常我会用两个小功率晶体管加少量的电路去替换MAX232,可以省一点,效果也不错。
下图就是MAX232的基本接线图。
图为MAX232
声光报警电路,可实现简易的发音功能,如图所示,
复位电路:
复位是使CPU和系统中的其他功能部件都处于一个确定的初始状态,复位后计算机就从这个状态开始工作。
在复位期间,CPU并没有开始执行程序是在做准备工作。
无论是在在计算机刚上电时,断电后,还是系统出现故障时都需要复位。
MCS-51单片机的复位靠外部电路来实现,为了确保复位,RST引脚上的高电平一般要维持大约10秒以上。
MCS-51单片机的复位原理也可分成上电复位和按键手动复位两种,如图:
A上电复位电,
路
B按键复位电路。
上电复位电路是利用电容充电来实现的。
在接通电源瞬间,RST端的电位与VCC相同,都是+5v。
随着着RC电路的充电RST的点位逐渐下降,只要保证RST位高电平的时间大于10秒就能正常恢复。
按键复位电路,在单片机已经通电的情况下,只需要按下图B所示的K键也可以复位,此时电源VCC 经过电阻分压,在RST端产生一个复位高电平。
如RK取1K欧姆,RS取200欧姆左右,这样当按下K键时,RST端的电压为4.2V,满足高电平要求。
8051单片机:
单片机的40个引脚大致可分为4类:
⒈电源:
⑴VCC-芯片电源,接+5V;
⑵VSS-接地端;
⒉时钟:
XTAL1、XTAL2-晶体振荡电路反相