单片机温控课程设计Word文档格式.docx

上传人:b****2 文档编号:15006689 上传时间:2022-10-26 格式:DOCX 页数:23 大小:427.68KB
下载 相关 举报
单片机温控课程设计Word文档格式.docx_第1页
第1页 / 共23页
单片机温控课程设计Word文档格式.docx_第2页
第2页 / 共23页
单片机温控课程设计Word文档格式.docx_第3页
第3页 / 共23页
单片机温控课程设计Word文档格式.docx_第4页
第4页 / 共23页
单片机温控课程设计Word文档格式.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

单片机温控课程设计Word文档格式.docx

《单片机温控课程设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《单片机温控课程设计Word文档格式.docx(23页珍藏版)》请在冰豆网上搜索。

单片机温控课程设计Word文档格式.docx

(1)键盘温度设定程序

(2)LED数码管显示程序

(4)模数转换

(5)数模转换

(6)PID运算

(7)越线报警

 

关键词:

温度控制,行列式键盘扫描,模数转换,数模转换,pid参数调整与编程

第一章绪论

1.1料筒温度控制概述

单片机的基本结构是将微型计算机的基本功能部件全部集成在一个半导体芯片上。

单片机结构上的设计,在硬件、指令系统及I/O能力等方面都有独到之处,具有较强而有效的控制功能。

另一方面,单片机毕竟是一个芯片,只有外加所需的输入、输出设备,才可以构成实用的单片机应用系统[1]。

单片机由于体积小、功耗低、价格低廉,且具有逻辑判断、定时计数、程序控制等多种功能,广泛应用于智能仪表、可编程序控制器、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域[2]。

本课程设计料筒温度控制系统采用单片机作为主控制器,外接必要的设备,实现温度控制

1.2主要研究工作

1.完成系统硬件电路设计

(1)单片机采用MCS51系列

(2)键盘为4×

3行列式键盘,按键设有启动、停止功能键。

(3)两个3位的LED数码管,用来显示温度。

(4)模数转换电路

(5)数模转换电路

(6)温度检测与控制电路

2.完成系统软件设计

(1)键盘管理程序(包括键扫描、键处理程序)。

(2)LED数码管显示程序。

(3)模数转换程序

(4)数模转换程序

(5)PID控制程序

3.实现系统要求的功能:

(1)温度设定在恒定值附近。

(2)显示、加热、越线报警。

第二章基础知识介绍

2.1主控制器AT89C51

主控制器采用MCS51系列单片机AT89C51,89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。

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

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

MCS51单片机的内部基本结构框图如图2-1所示,由以下部分组成[4]:

(1)一个8位的微处理器(CPU)。

(2)片内数据存储器RAM(128B),用以存放可以读写的数据,如运算的中间结果、最终结果以及状态标志位等。

(3)片内程序存储器ROM(4KB),用以存放已编制好的程序及程序中用到的常数。

(4)四个8位并行I/O接口P0~P3,每个口既可以用作输入,也可以用作输出使用。

(5)两个定时器/计数器,每个定时器/计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制。

(6)五个中断源的中断控制系统,提供两个中断优先级,能实现两级中断嵌套。

(7)一个全双工串行异步通信接口,用于实现单片机之间或单机与微机之间的串行通信。

(8)片内振荡器和时钟产生电路,但需要外接石英晶体和微调电容,最高允许振荡频率为12MHz。

单片机内部各功能部件通过内部总线连接,传送地址信息、数据信息和控制信息,各功能部件分时使用总线,即所谓的内部单总线结构。

图2-1

2.2LED数码管模块

LED数码管是由若干个发光二级管组成显示字段的显示器件,有七段和“米”字段之分。

LED数码管有共阴极和共阳极两种,发光二极管的阳极接在一起的称为共阳极数码管,阴极接在一起的称为共阴极数码管。

一个数码管由8个发光二极管组成,其中,7个发光二极管a~g构成字型“8”的各个笔划,另一个dp发光二极管为小数点。

当某段发光二极管上施加一定的正向电压时,该段比划就亮;

不加电压就暗。

另外,为了保护各段LED不被损坏,应该使其工作在安全电流下,故必须外加限流电阻。

本系统使用三位共阴七段数码管,其引脚如下图所示:

在实际应用中,LED数码管有静态显示和动态显示两种显示方式。

静态显示方式,即七段LED数码管在显示某一个字符时,相应的段恒定的导通或截止,直至换显其他字符为止。

LED的静态显示虽然有编程容易、管理简单等优点,但是静态显示所要占的I/O口资源很多,所以在显示的LED点较多的情况下,一般都采用动态显示方式,即在多位七段LED显示中,将所有位的段选线并联在一起,由8个I/O口来控制8个段。

而公共端(共阳极/共阴极)则分别由相应的I/O口控制,以实现各个位的分时选通。

由于所有的段选线并联到同一个I/O,由这个I/O口来控制,因此,若是所有的4位7段LED都选通的话,4位7段LED将会显示相同的字符。

要使各个位的7段LED显示不同的字符,就必须采用动态扫描方法来轮流点亮每一位7段LED,即在每一瞬间只选通一位7段LED进行显示单独的字符。

在此段点亮时间内,段选控制I/O口输出要显示的相应字符的段选码,而位选控制I/O口则输出位选信号,向要显示的位送出选通电平(共阴极则送出低电平,共阳极则送出高电平),使得该位显示相应字符。

这样将四位7段LED轮流去点亮,使得每位分时显示该位应显示的字符。

由于人眼的视觉暂留时间为0.1秒,当每位显示的间隔未超过33ms时,并在显示时保持直到下一位显示,则由于人眼的视觉暂留效果眼睛看上去就像是4位7段LED都在点亮。

设计时,要注意每位显示的间隔时间,由于一位7段LED的熄灭时间不能超过100ms,也就是说点亮其它位所用的时间不能超过100ms,这样当有N位的7段LED用来显示时,每一位间隔的时间t就必须符合下面的式子:

t≦100ms/(N-1)

比如,现在使用3位,也就是N=3,则由式子可以算出t≦50ms,就是每一位的间隔时间不能超过33ms。

实际应用中,时间可以设得短一些,比如5ms[5]。

2.3键盘模块

在单片机应用系统中,用户要向计算机输入数据和命令,这些任务主要由键盘来完成。

键盘由若干个按键按一定规则组合而成,根据按键的识别方法分类,可分为编码键盘和非编码键盘,在单片机系统中多用非编码键盘。

键盘中的按键都是一个常开开关电路,是利用机械触点来实现按键的闭合和释放。

由于机械触点的弹性作用,触点在闭合和断开瞬间的电接触情况不稳定,造成了电压信号的抖动现象。

键的抖动时间一般为5~10ms。

这种现象会引起单片机对于一次键操作进行多次处理,因此须设法消除键接通或断时的抖动现象。

去抖动的方法有硬件和软件两种方法,本系统采用软件延时的方法来避开抖动阶段。

采用软件去抖动的方法是在单片机检测到有键按下时执行一个5~10ms的延时程序后再次检查该键电平是否仍保持闭合状态.如保持闭合状态,则确认为有键按下,否则按无键按下处理。

当检测到按键释放后,也同样要延时5~10ms,等待后沿抖动消失后才能转入该键的处理程序,只有这样才能保证当按键一次时,CPU仅做一次相应处理。

无论是编码键盘还是非编码键盘键盘都可分为独立连接式和矩阵式两类。

独立式键盘是每一个键对应I/O口的一根口线,各键是相互独立的。

独立式按键虽编程简单,但占用I/O口资源较多,不适合在按键较多的场合应用。

矩阵式键盘按矩阵方式连接,每条行线与列线的交叉处通过一个按键来连通,则只需N条行线和M条列线,即可组成N×

M个键的键盘。

对于矩阵式的非编码键盘,常用的按键识别方法有两种:

扫描法和线翻转法,通常采用扫描法。

下面介绍一种“行扫描法”,行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,过程如下:

1.判断键盘中有无键按下,将全部行线置低电平,然后检测列线的状态。

只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。

若所有列线均为高电平,则键盘中无键按下。

2.判断闭合键所在的位置,在确认有键按下后,即可进入确定具体闭合键的过程。

其方法是:

依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。

在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。

若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。

2.4模数转换模块——ADC0809

ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D模数转换器。

其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

ADC0809芯片有28条引脚,采用双列直插式封装,如图所示。

下面说明各引脚功能。

IN0~IN7:

8路模拟量输入端。

2-1~2-8:

8位数字量输出端。

ADDA、ADDB、ADDC:

3位地址输入线,用于选通8路模拟输入中的一路

ALE:

地址锁存允许信号,输入,高电平有效。

START:

A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。

EOC:

A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。

OE:

数据输出允许信号,输入,高电平有效。

当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。

CLK:

时钟脉冲输入端。

要求时钟频率不高于640KHZ。

REF(+)、REF(-):

基准电压。

Vcc:

电源,单一+5V。

GND:

地。

2.5数模转换模块——DAC0832

DAC0832是8分辨率的D/A转换集成芯片。

与微处理器完全兼容。

这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。

D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

D0~D7:

8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);

ILE:

数据锁存允许控制信号输入线,高电平有效;

CS:

片选信号输入线(选通数据锁存器),低电平有效;

WR1:

数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。

由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;

XFER:

数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;

WR2:

DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。

由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。

IOUT1:

电流输出端1,其值随DAC寄存器的内容线性变化;

IOUT2:

电流输出端2,其值与IOUT1值之和为一常数;

Rfb:

反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;

V

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1