实验报告
课程名称
智能仪表课程设计
学校
杭州电子科技大学
学院
生命信息与仪器工程学院
专业
电子信息技术及仪器
姓名
李棒
学号
实验目的
智能仪表课程设计是一项综合性的专业实践活动,目的是让学生将所学的基础理论和专业知识运用到具体的工程实践中,以培养学生综合运用知识能力、实际动手能力和工程实践能力,为此后的毕业设计打下良好的基础。
实验任务
本次智能仪表课程设计的任务是设计一个温度控制器,并完成相关的编程工作。
基本任务是利用AT89C51单片机、ADC0809模数转换器等芯片设计一个具有温度测量显示和开关控制输出的装置。
三、实验要求
1)用6只共阴极的八段数码管来分别显示工作状态、设定温度和实际温度温度。为了统一起见,对6只八段数码管的具体排列和工作状态的显示符号作如下规定:
实际温度
设定温度
工作状态:“1”“1”表示开机
“0”“0”表示关机
2)用3只按钮来分别作为开机/关机键、温度设定上升键和下降键。(1#开发板有5只操作按钮和1只系统复位按钮,共6只)
3)用1只LED发光二极管来表示加热器开关量控制输出(1#开发板上共有6只控制输出的LED发光二极管),所有发光二极管均要求用2003达林顿管或三极管放大驱动。
4)温度设定范围0~99℃,在装置处于开机状态情况下,当实际温度高于等于设定温度时,加热器控制输出“关”;当实际温度低于设定温度5℃时,加热器控制输出“开”。
5)上电后,自动显示关机这时状态、设定温度50℃和实际室内温度,用户可以设定温度进行设定,但只有在按下启动/关闭键后,控制器正式工作;在运行期间,若对温度状态进行设定,则控制器按新设定开始。若关机后(非断电)重新启动控制器,则自动进入上次关机前的设定状态。
实验内容
系统的总体框图如下:
数码管显示
AT89C51
ADC0808
温度控制
按键扫描
主要是基于AT89C51单片机 LED和数码管显示模块、加热器控制模块、按键扫描/处理模块和基于ADC0808芯片的数据采集模块。
1、LED模块
LED发光二极管来表示加热器开关量控制输出。
2、数码管显示模块
显示工作原理
本系统应用8段6位共阴数码管作为显示器件,用片选信号来控制数码管的显示字符,应位选信号来控制点亮那个数码管。
所谓的八段就是指数码管里有八个小LED发光二极管,通过控制不同的LED的亮灭来显示出不同的字形。一个八段数码管称为一位,多个数码管并列在一起可构成多位数码管,它们的段选线(即a,b,c,d,e,f,g,dp)连在一起,而各自的公共端称为位选线。显示时,都从段选线送入字符编码,而选中哪个位选线,那个数码管便会被点亮。数码管的8段,对应一个字节的8位,a对应最低位,dp对应最高位。所以如果想让数码管显示数字0,那么共阴数码管的字符编码为,即0x3f;其他数字以此类推。
P0口对应的是控制数码管的段选,也就是说可以让数码管显示不同的数字,字符。而在不同的数码管显示则是通过P2口的位选来实现的。换句话说P2口就是控制1--6号数码管哪个被点亮,哪个来显示数字。如果程序循环显示的时间比较少那就呈现在眼前的就是六位数码管全亮,其实是循环点亮,但是人的眼没法在这么短时间内辨别出来。
硬件电路如下:
注:(1、2位置显示工作状态:“1”“1”表示开机,“0”“0”表示关机。3、4位置显示设置温度。5、6位显示控制温度。)
数码管程序见
3、按键模块
说明用3只按钮来分别作为开机/关机键、温度设定上升键和下降键。
硬件电路图如下
具体按键程序见
4、ADC0808的简介
A/D转换器是一种能把输入模拟电压或者电流信息变成与其成正比的数字量信息的电路芯片。A/D转换器用于实现模拟量到数字量的转换。
ADC0808是典型的8通道模拟输入8位并行数字输出的逐次逼近式A/D转换器。S工艺,可以实现8路模拟信号的分时采集。片内有8路模拟选通开关,以及相应的通道地址锁存用译码电路。
1)ADC0808芯片的介绍
2)ADC0808的工作流程
2)ADC0808的实现方法
ADC0808与8051单片机的硬件接口有3种形式,分别是查询方式、中断方式和延时等待方式,本系统中选用中断接口方式。
注:其中的CLK我是用定时器产生500Khz的方波。
具体的程序实现如产生500KHZ的方波送给ADS0808模块
五、系统总框架
系统的具体框图如下:
初始化
按键扫描控制
显示数码管子程序
温度控制
硬件设计如下:
具体程序见
六、实验分析及心得
本实验采用外接AD芯片采集外接模拟量发送到P0口, 并将转化成对应的温
智能仪器课程设计 来自淘豆网m.daumloan.com转载请标明出处.