当前位置:文档之家› 长沙理工大学单片机课设

长沙理工大学单片机课设

CHENGNAN COLLEGE OF CUST题目:《单片机原理及应用》课程项目设计温度的检测与显示的设计姓名:柳豪学号:201582250120班级: 电气1501专业:电气工程及其自动化所在院(系): 电气工程系指导教师:朱豆日期:2017年12月目录1 温度检测的发展过程2.1 设计目的2.2 设计原则2.3 设计思路2.3.1硬件设计原则2.4 系统的组成3 温度检测系统的电路图4 硬件设计4.1 单片机的选用4.2 数据采集系统4.2.1热电偶的优点4.2.2系统组成4.2.3系统分析计算4.2.4 芯片LM324的介绍4.3 A/D转换器——ADC0809介绍4.3.1 ADC0809的工作过程4.3.2 2ADC0809管脚结构图4.4 显示系统设计4.4.1 8255A扩展芯片的介绍4.4.2 8255与MCS51的接口4.4.3 LED显示单元5 程序流程图及程序5.1 程序流程图5.2 程序1. 温度检测的发展过程在现代化的工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。

其中,温度是需要测量和控制的重要参数之一。

例如:在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。

采用MCS-51单片机来对温度进行检测,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。

因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。

2.1 设计目的本设计最终所要达到的目的有以下几个方面:a)掌握单片机各部分的使用,可以依据要求进行小规模的编程;b)熟悉A/D转换的过程,及其在实践中的应用;c)熟悉各种温度传感器的使用,能根据不同的电路选择合适类型的传感器。

2.2 设计原则2.2.1 硬件设计原则a)我们结合典型的A/D转换电路,选择ADC0809芯片做主打芯片,实现数模转换能;b)此设计利用A/D转换芯片配以显示电路用其所需要的外围电路实现温度显示,具有编程灵活、便于显示水温功能的扩充(也可用于炉温显示)、精确度高等特点;c)硬件结构设计应与软件设计方案一并考虑;d)整个系统相关器件力求性能匹配,与环境相适应。

2.3.2 软件系统原则a)我们的程序采用模块化设计,软件结构清晰,简洁;b)我们将设计的程序存储区及数据存储区尽量合理化规划,便于设计功能的扩展;c)我们对各个功能程序与运行结果及运行要求都作了简要说明,以便查询。

2.3 设计思路本系统用热电偶为检测温度元件,通过温度传感器将被测温度转换为电量,经过放大滤波电路处理,其中用到LM324四运放集成电路来实现。

经过放大滤波电路处理后,由模数转换器将模拟量转换为数字量,结合典型的A/D转换电路,选择ADC0809芯片做主打芯片,实现数模转换功能再与单片机相连,其中用AT89C51芯片代替8031系列芯片。

通过8255可编程扩展芯片对温度进行报警限制处理,然后再由LED数码管进行跟踪显示。

2.4 系统的组成为了更直观的了解本设计,我将整个系统分为了三个设计模块:LED显示模块、A/D转换模块以及数据采集模块,以下就是各个模块的功能简介:a)LED模块为系统提供采时,通过使用典型的LED数码管,结合动态扫描程序实现温度的显示功能;b)数据采集模块利用小信号放大器实现数据采集;c)A/D转换模块和其他外围器件,实现与单片机的正确连接以及编制转换程序。

3 温度检测系统的工作原理及电路图3 温度检测系统的工作原理及电路图3.温度检测系统的电路图4 硬件设计本章主要是介绍硬件几部分的芯片选型4.1 单片机的选用AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。

该器件采用ATMEL 高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU 和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

AT89C51芯片结构及特性与MCS-51 兼容 两个16位定时器/计数器 4K 字节可编程闪烁存储器 5个中断源寿命:1000写/擦循环 可编程串行通道数据保留时间: 10年 低功耗的闲置和掉电模式静态工作:0Hz-24Hz 32可编程I/O 线三级程序存储器锁定 片内振荡器和时钟电路 128*8位内部RAM4.2 数据采集系统 4.2.1 热电偶的优点热电偶是工业上最常用的温度检测元件之一。

其优点是:a)测量精度高。

因热电偶直接与被测对象接触,不受中间介质的影响。

b)测量范围广。

常用的热电偶从-50~+1600℃均可边续测量,某些特殊热电偶最低可测到-269℃(如金铁镍铬),最高可达+2800℃(如钨-铼)。

c)构造简单,使用方便。

热电偶通常是由两种不同的金属丝组成,而且不受大小和开头的限制,外有保护套管,用起来非常方便。

4.2.2 热电偶测温回路系统组成地VT0.1PC2R6200KR49.1K RW1500U3CA LM3244321111432110.1PC1U3DA LM324R510K100K R2L39.1KR310KR1L14.2.3 系统分析计算此电路是反相比例运算电路和同相运算放大电路,热电偶传输来的弱电流信号经过次电路的两极放大,最终得到一个直流电压值,输入到A/D 转化器中。

反相例运算运算电路,输入信号从反相输入端输入,同相输入端通过电阻接地。

放大倍数 A=-R2/R1=-100K/10K=-10 其中负号表示输出电压与输入电压的相位相反,改变R1和R2的比值,即可改变其放大倍数。

其中运放的同相输入端接有电阻R3,参数选择应使两输入端外接直流通路等效电阻值平衡,即R3=R1//R2,静态时,使输入级偏置电流平衡并让输入级的偏置电流在运算放大器两个输入端的外接电阻上产生相等的压降,以便消除放大器的偏置电流及其漂移的影响,故R2又称平衡电阻。

同相比例运算放大电路,输入信号从相同输入端输入,而反相输入端通过电阻接地,并引入负反馈。

其放大倍数A=1+(RW1+R6)/R5其总的放大倍数A=-R2/R1*(1+(RW1+R6)/R5)通过调节可调电阻,便可在输出端VT获得与绝对温度成正比的电压量4.2.4 芯片LM324的介绍由于热电偶产生的电量过小,所以要经过两级放大。

LM324四运放电路具有电源电压范围宽,静态功耗小,可单电源使用,价格低廉等优点,因此被广泛应用在各种电路中。

LM324是四运放集成电路,它采用14脚双列直插塑料封装,外形如图4.4所示。

它的内部包含四组形式完全相同的运算放大器,除电源共用外,四组运放相互独立。

4.3 A/D转换器——ADC0809介绍A/D转换器(Analog-Digital Converter)是一种能把输入模拟电压或电流变成与其成正比的数字量的电路芯片,即能把被控对象的各种模拟信息变成计算机可以识别的数字信息。

A/D转换接口技术的主要内容是合理选择A/D转换器和其他外围器件,实现与单片机的正确连接以及编制转换程序。

ADC0809是逐次逼近型8位单片A/D转换芯片。

片内有8路模拟开关,可以输入八个模拟量,单极性,量程为0—5伏,典型的转换速度为100μS,片内带有三态输出缓冲器,可直接与CPU总线接口。

其性能价格比有明显的优势,是目前比较广泛采用的芯片之一。

4.3.1 ADC0809的工作过程首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。

此地址经译码选通8路模拟输入之一到比较器。

START上升沿将逐次逼近寄存器复位。

下降沿启动 A/D 转换,之后EOC输出信号变低,指示转换正在进行。

直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。

当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。

4.3.2ADC0809管脚结构图当通道选择地址有效时,ALE 信号一出现,地址马上被锁存,这时启动信号START 紧随ALE 之后(或与ALE 信号同时)出现。

START 信号的上升沿使所有内部寄存器清零,在上升沿之后的2us 加8个时钟周期内(不定)EOC 信号变低,以指示转换操作正在进行中,直至转换完成后EOC 信号再变高。

4.4 显示系统设计4.4.1 8255A 扩展芯片的介绍8255A 可编程并行输入/输出接口芯片是Intel 公司生产的标准外围接口电路。

它采用NMOS 工艺制造,用单一+5V 电源供电,具有40条引脚,采用双列直插式封装。

它有A 、B 、C3个端口共24条I/O 线,可以通过编程的方法来设定端口的各种I/O 功能。

由于它功能强,又能方便地与各种微机系统相接,而且在连接外部设备时,通常不需要再附加外部电路,所以得到了广泛的应用。

4.4.2 8255与MCS51的接口8255和单片机的接口十分简单,只需要一个8位的地址锁存器即可。

锁存器用来 锁存P0口输出的低8位地址信息。

下图为8255扩展实例:D 0D 1D 2D 3D 4D 5D 6Q 0Q 1Q 2Q 3Q 4Q 5Q 6D 0D 1D 2D 3D 4D 5D 6WR RD P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0ALEEA8051D 7Q 7G GND373WR RDRESET CSA1A0D 78255PAPBPC4.4.3 LED显示单元LED显示器是单片机应用系统中常用的输出器件。

它是由若干个发光二极管组成的。

当发光二极管导通时,相应的一个点或一个笔画发亮。

控制不同组合的二极管导通,就能显示出各种字符。

LED数码显示器是1种由LED发光二极管组合显示字符的显示器件。

它使用了8个LED发光二极管,其中7个用于显示字符,1个用于显示小数点,故通常称之为7段(也有称作8段)发光二极管数码显示器。

下图为LED的外观图:LE D数码显示器有两种连接方法:a)共阳极接法。

把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连b)共阴极接法。

把发光二极管的阴极连在一起构成公共阴极,使用时公共阴极接地。

每个发光二极管的阳极通过电阻与输入端相连,5.程序流程图及程序5.1程序流程图开始初始化程序设置中断采样模数转换程序转换完成?在数码管上显示5.2程序本设计的程序如下:源程序:ORG 0000H ;初始化程序AJMP STARTORG 0003HLJMP CINT0ORG 0100HW1: MOV @R1,A ;将R1-R3设定初值INC R1DJNZ R2,W1RETSTART:MOV R1,#78H ;存储首地址放入R1 MOV R2,#03H ;设定R2初值MOV A,#00HCALL W1MOV A,#80 ;8255初始化MOV DPTR,#0DFFFHMOVX @DPTR,ACLR AMOV R2,#0F0H ;对R2重新赋值0F0H CALL DISPMAIN:MOV PSW,#00H ;清空PSW SETB EA ;允许中断SETB EX0SETB IT0MOV A,#00H ;采样MOV DPTR,#9FF8HMOVX @DPTR,AL2: JNB F0,L2ACALL TUNBCDLCALL DISINT0SJMP MAINTUNBCD:MOV A,@R0 ;将R0里的值赋给A MOV B,#51 ;在B中存入51DIV AB ;A除BMOV 7AH,A ;商放入7AHMOV A,B ;余数存入ACLR F0 ;F0清零SUBB A,#1AH ;(A)-1AHMOV F0,C ;进位存入F0MOV A,#10 ;10存入AMUL AB ;(A)*(B)MOV B,#51HDIV ABJB F0,LOOP2 ;F0若为1则跳转,相反则继续执行ADD A,#5 ;(A)加5LOOP2:MOV 79H,A ;(A)存入79HMOV A,BCLR F0 ;F0清零SUBB A,#1AH ;(A)-1AHMOV F0,C ;进位存入F0MOV A,#10 ;10存入AMUL AB ;(A)*(B)MOV B,#51HDIV ABJB F0,LOOP3 ;F0若为1则跳转,相反则继续执行ADD A,#5 ;(A)加5LOOP3:MOV 78H,A ;(A)存入78HRETDISP:MOV DPTR,#TABLE ;表首地址存入DPTRMOVC A,@A+DPTR ;取表值MOV DPTR,#0DFFCH ;通过8255A口显示MOVX @DPTR,AMOV A,R2INC DPTR ;指向8255B口MOVX @DPTR,A ;通过8255B口显示CALL DELAY ;延时RETDISP1:MOV DPTR,#TABL ;表1首地址存入DPTR(带小数点)MOVC A,@A+DPTR ;取表值MOV DPTR,#0DFFCH ;通过8255A口显示MOVX @DPTR,AMOV A,R2INC DPTR ;指向8255B口MOVX @DPTR,ACALL DELAY ;延时RETDISINT0:MOV R2,#0FEH ;选择数码管输出CLR ACALL DISPMOV A,7AHMOV R2,#0FDHCALL DISP1MOV A,79HMOV R2,#0FBHCALL DISPMOV A,78HMOV R2,#0F7HCALL DISRETDELAY:MOV R6,#10 ;延时子程序DELY2:MOV R7,#100DELY1:DJNZ R7,DELY1DJNZ R6,DELY2RETCINT0:MOVX A,@DPTRMOV @R0,ASETB F0RETTABLE:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H TABLE1:DB 040H,79H,024H,030H,19H,12H,02H,78H,00H,10H END小组成员:陶明亮黄雨王辅王世豪柳豪。

相关主题