反应釜温度采集存储系统1.docx

上传人:b****9 文档编号:26037625 上传时间:2023-06-17 格式:DOCX 页数:58 大小:450.34KB
下载 相关 举报
反应釜温度采集存储系统1.docx_第1页
第1页 / 共58页
反应釜温度采集存储系统1.docx_第2页
第2页 / 共58页
反应釜温度采集存储系统1.docx_第3页
第3页 / 共58页
反应釜温度采集存储系统1.docx_第4页
第4页 / 共58页
反应釜温度采集存储系统1.docx_第5页
第5页 / 共58页
点击查看更多>>
下载资源
资源描述

反应釜温度采集存储系统1.docx

《反应釜温度采集存储系统1.docx》由会员分享,可在线阅读,更多相关《反应釜温度采集存储系统1.docx(58页珍藏版)》请在冰豆网上搜索。

反应釜温度采集存储系统1.docx

反应釜温度采集存储系统1

 

反应釜温度采集存储系统

一、题义分析及解决方案

1.题义需求分析

根据设计内容要求可知:

1)首先要理解反应釜温度采集系统的原理。

为监控反应釜的温度情况,需要每天至少40个时间点的温度信息。

反应釜是一个化学反应的容器,可通过一定的方法对其里面的反应温度进行采集并保存下来,以便对这些温度信息进行分析,因此,该系统可实现温度的采集并保存的功能。

2)题目要求模拟上述分析的系统,即由键盘输入来代替温度数据的采集,由存储器芯片实现温度信息的存储功能。

温度数据存储后,读出这些数据可用LED数码管将保存的数据显示出来,实现了监控温度情况。

3)用STARES598PCI单板开发机设计并开发能监控反应釜温度,每天监控至少40个时间点的温度信息,并将温度存储的系统

(1)由键盘输入10个数据做为模拟温度,并将10个数据存储,断电后判别是否有数据存储,若有数据将10个数据通过LED以5S的时间间隔显示出来;

(2)若有数据更新,应该能够更新存储系统。

分析:

本课题中,由于用键盘进行模拟温度的输入,不用进行实际的温度的采集,本设计中要解决的问题是如何解决温度的输入,怎么控制温度的输入结束,怎么控制输入结束,断电后温度数据怎么用LED灯显示,怎么解决温度数据的更新问题,怎么判断数据输入错误,发警报

2.解决问题方法及思路

1)硬件部分

用4X4小键盘进行模拟温度数据的输入,8279作为键盘和LED的驱动芯片,8255的pc6与pc1控制SCL与SDA的拉高或拉低并可以接受返回信号,用AT24C02作为温度的存储芯片。

断电后用LED间隔5S显示温度数据。

2)软件部分

首先要对8279进行初始化设计,设置8279的工作方式并确定8279的端口地址

由键盘输入10个数据,送入AT24CO2存储

断电后若有数据存储,将10个数据在LED中一一显示出来

键盘如再输入数据可进行存储更新

二、硬件设计

1.可编程并行接口芯片8279

1)8279的作用

在本设计中用8279芯片控制键盘输入和LED显示。

2)8279的功能分析

8279A芯片是一种通用的可编程序的键盘/显示接口器件,单个芯片就能完成键盘输入和LED显示控制两种功能。

可与任何8位机接口。

8279A芯片包括键盘输入和显示输出两个部分。

若采用8279作为键盘/显示器接口,则可以实现对键盘、显示器自动扫描,8279主要是管理键盘输入和显示器输出的。

8279可编程键盘显示器接口芯片具有动态显示驱动电路简单、不占用CPU的时间、可自动进行键盘扫描、与计算机接口方便、编程容易、系统灵活等特点.当今已成为设计计算机应用系统,特别是实时性较高的测控系统的首选器件之一。

图2-18279的内部框图

图中,IRQ:

中断请求输出线,DB0~DB7:

双向数据总路线(传送命令、数据、状态),

读写控制输入端,RESET:

复位输入端,CLK:

时钟输入端,

片选,C和/D(A0):

片内寄存器选址,OUTA0~A1、OUTB0~B3:

8位显示输出端,

熄灭显示输出端,SL0~SL3:

公用扫描输出线,RL0~RL7:

键盘回馈输入线,SHIFT:

抵挡键输入线,CNTL/STB:

控制/选通输入线。

另外,8279的键盘接口部分内部有一个8×8位先进先出的堆栈(FIFO),用来存放键盘输入代码,显示器接口部分内部有一个16×8位显示RAM,用来显示段数据,能为16位LED显示器(或其它显示器)提供多路扫描接口。

3)8279的引脚信号和功能

8279可编程键盘显示器接口芯片具有动态显示驱动电路,不占用CPU的时间、可自动进行键盘扫描、与计算机接口方便、编程容易、系统灵活等特点。

8279A是可编程的键盘/显示接口芯片。

它既具有按键处理功能,又具有自动显示功能,在单片机系统中应用很广泛。

8279A内部有键盘FIFO(先进先出堆栈)/传感器,双重功能的8×8=64BRAM,键盘控制部分可控制8×8=64个按键或8×8阵列方式的传感器。

该芯片能自动消抖并具有双键锁定保护功能。

显示RAM容量为16×8,即显示器最大配置可达16位LED数码显示。

4)8279的命令字及其格式

8279三种工作方式:

键盘工作方式、显示工作方式和传感器工作方式。

键盘工作方式:

双键互锁和N键轮回。

双键互锁是指当有两个以上按键同时按下时,只能识别最后一个被释放的按键,并把其键值送入内部FIFORAM中。

N键轮回是指当有多个按键同时按下时,所有按键的键值均可按扫描顺序依次存入FIFORAM中。

显示工作方式:

是指CPU输入至8279内部FIFORAM的数据的输出格式,有8个字符左端入口显示、16个字符左端入口显示、8个字符右端入口显示、16个字符右端入口显示四种方式。

传感器方式:

是指扫描传感器阵列时,一旦发现传感器的状态发生变化就置位INT向CPU申请中断。

选择不同的工作方式均是通过CPU对8279送入命令来进行控制。

8279共有8种命令,命令寄存器为8位,其中D7~D5为命令特征位,D4~D0为命令的控制位。

CPU对8279写入的命令数据为命令字,读出的数据为状态字。

8279共有八条命令,其功能及命令字格式分述如下。

(1)键盘/显示方式设置命令字

命令格式:

D7D6D5D4D3D2D1D0

0

0

0

D

D

K

K

K

其中:

D7、D6、D5=000为方式设置命令特征位。

DD(D4、D3):

用来设定显示方式,如表1-2所示。

表2-1显示方式选择

D4

D3

显示方式

0

0

8个字符显示,左端入口

0

1

16个字符显示,左端入口

1

0

8个字符显示,右端入口

1

0

16个字符显示,右入口

所谓左入口,即显示位置从最左一位(最高位)开始,以后逐次输入的显示字符逐个向右顺序排列;所谓右入口,则是显示位置从最右一位(最低位)开始,以后逐次输入显示字符时,已有的显示字符依次向左移动。

KKK(D2、D1、D0):

用来设定七种键盘/显示扫描方式,如表2-2所示。

 

表2-2键盘/显示扫描方式

D2

D1

D0

键盘/显示扫描方式

0

0

0

编码扫描键盘,双键锁定

0

0

1

译码扫描键盘,双键锁定

0

1

0

编码扫描键盘,N键轮回

0

1

1

译码扫描键盘,N键轮回

1

0

0

编码扫描传感器矩阵

1

0

1

译码扫描传感器矩阵

1

1

0

选通输入,编码显示扫描

1

1

1

选通输入,译码显示扫描

(2)时钟编程命令

命令格式:

D7D6D5D4D3D2D1D0

0

0

1

P

P

P

P

P

其中:

D7、D6、D5=001为时钟命令特征位。

PPPPP(D4、D3、D2、D1、D0)用来设定外部输入CLK时钟脉冲的分频系数N。

N取值范围为2~31。

如CLK输入时钟频率为2MHZ,PPPPP应被置为10100(N=20),才可获得8279内部要求的100KHZ的时钟频率。

(3)读FIFO/传感器RAM命令

命令格式:

D7D6D5D4D3D2D1D0

0

1

0

AI

X

A

A

A

其中:

D7、D6、D5=010为读FIFO/传感器RAM命令特征位。

该命令字只在传感器方式时使用。

在CPU读传感器RAM之前,必须用这条命令来设定所读传感器RAM中的地址。

AAA(D2、D1、D0)为传感器RAM中的八个字节地址。

AI(D4)为自动增量特征位。

当AI=1时,每次读出传感器RAM后地址自动加1使地址指向下一个存储单元。

这样,下一个数据便从下一个地址读出,而不必重新设置读FIFO/传感器RAM命令。

在键盘工作方式中,由于读出操作严格按照先入先出顺序,因此,不需使用这条命令。

(4)读显示RAM命令

命令格式:

D7D6D5D4D3D2D1D0

0

1

1

AI

A

A

A

A

其中:

D7、D6、D5=011为读显示RAM命令字的特征位。

该命令字用来设定将要读出的显示RAM地址。

AAAA(D3、D2、D1、D0)用来寻址显示RAM中的存储单元。

由于位显示RAM中有16个字节单元,故需要4位寻址。

AI(D4)为自动增量特征位。

AI=1时,每次读出后地址自动加1,指向下一地址。

(5)写显示RAM命令

命令格式:

D7D6D5D4D3D2D1D0

1

0

0

AI

A

A

A

A

其中:

D7、D6、D5=100为写显示RAM命令字的特征位。

在写显示RAM之前用这个命令字来设定将要写入的显示RAM地址。

AAAA(D3、D2、D1、D0)为将要写入的显示RAM中的存储单元地址。

AI(D4)为自动增量特征位。

AI=1时,每次写入后地址自动加1,指向下一次写入地址。

(6)显示禁止写入/消隐命令

命令格式:

D7D6D5D4D3D2D1D0

1

0

1

X

IW/A

IW/B

BL/A

BL/B

其中:

D7、D6、D5=101为显示禁止写入/消隐命令特征位。

IW/A、IW/B(D3、D2)为A、B组显示RAM写入屏蔽位。

当A组的屏蔽位D3=1时,A组的显示RAM禁止写入。

因此,从CPU写入显示器RAM数据时,不会影响A的显示。

这种情况通常在采用双4位显示器时使用。

因为两个四位显示器是相互独立的。

为了给其中一个四位显示器输入数据而又不影响另一个四位显示器,因此必须对另一组的输入实行屏蔽。

BL/A、BL/B(D1、D0)为消隐设置位。

用于对两组显示输出消隐。

若BL=1,对应组的显示输出被消隐。

当BL=0,则恢复显示。

(7)清除命令

命令格式:

D7D6D5D4D3D2D1D0

1

1

0

CD

CD

CD

CF

CA

其中:

D7、D6、D5=110为清除命令特征位。

表2-3显示RAM清除方式

D4

D3

D2

清除方式

1

0

×

将全部显示RAM清为00H

1

1

0

将全部显示RAM置为20H,A组输出0010,B组输出0000

1

1

1

将全部显示RAM置为FFH

0

×

×

D0=0不清除,D0=1按上述方法清除

CF(D1)用来置空FIFO存储器,当CF=1时,执行清除命令后,FIFORAM被置空,使INT输出线复位。

同时,传感器RAM的读出地址也被置为0。

CA(D0)为总清的特征位。

它兼有CD和CF的联合效能。

在CF=1时,对显示的清除方式由D3、D2的编码决定。

显示RAM清除时间约需160us。

在此期间状态字的最高位Du=1,表示显示无效。

CPU不能向显示RAM写入数据。

(8)结束中断/错误方式设置命令

命令格式:

D7D6D5D4D3D2D1D0

1

1

1

E

X

X

X

X

其中:

D7、D6、D5=111为该命令的特征位。

此命令有两种不同的作用。

①作为结束中断命令。

在传感器工作方式中使用。

每当传感器状态出现变化时,扫描检测电路就将其状态写入传感器RAM,并启动中断逻辑,使INT变高,向CPU请求中断,并且禁止写入传感器RAM。

此时,若传感器RAM读出地址的自动递增特性没有置位(AI=0),则中断请求INT在CPU第一次从传感器RAM读出数据时就被清除。

若自动递增特征已置位(AI=1),则CPU对传感器RAM的读出并不能清除INT,而必须通过给8279写入结束中断/错误方式设置命令才能使INT变低。

因此,在传感器工作方式中,此命令用来结束传感器RAM的中断请求。

②作为特定错误方式设置命令。

在8279已被设定为键盘扫描N键轮回方式以后,如果CPU给8279又写入结束中断/错误方式设置命令(E=1),则8279将以一种特定的错误方式工作。

这种方式的特点是:

在8279的消抖周期内,如果发现多个按键同时按下,则FIFO状态字中的错误特征位S/E将置1,并产生中断请求信号和禁止写入FIFORAM。

上述八种用于确定8279操作方式的命令字皆由D7D6D5特征位确定,输入8279后能自动寻址相应的命令寄存器。

因此,写入命令字时唯一的要求是使数据选择信号A0=1。

5)8279的状态字及其格式

8279的FIFO状态字,主要用于键盘和选通工作方式,以指示FIFORAM中的字符数和有无错误发生。

其格式为:

D7D6D5D4D3D2D1D0

DU

S/E

O

U

F

N

N

N

其中:

Du(D7)为显示无效特征位。

当Du=1表示显示无效。

当显示RAM由于清除显示或全清命令尚未完成时,Du=1,此时不能对显示RAM写入。

S/E(D6)为传感器信号结束/错误特征位。

该特征位在读出FIFO状态字时被读出。

而在执行CF=1的清除命令时被复位。

当8279工作在传感器工作方式时,若S/E=1,表示传感器的最后一个传感器信号已进入传感器RAM;而当8279工作在特殊错误方式时,若S/E=1则表示出现了多键同时按下错误。

O、U(D5、D4)为超出、不足错误特征位。

对FIFORAM的操作可能出现两种错误:

超出或不足。

当FIFORAM已经充满时,其它的键盘数据还企图写入FIFORAM,则出现超出错误,超出错误特征位O(D5)置1;当FIFORAM已经置空时,CPU还企图读出,则出现不足错误,不足错误特征位U(D4)置1。

F(D3)表示FIFORAM中是否已满标志,若F=1表示已满。

NNN(D2、D1、D0)表示FIFORAM中的字符数据个数。

6)数据输入/输出格式

对8279输入/输出数据不仅要先确定数据地址口,而且数据存放也要按一定格式,其格式在键盘和传感器方式有所不同。

(1)键盘扫描方式数据输入格式

键盘的行号、列号及控制键格式如下:

图2-2键盘控制键格式

控制键CNTL、SHIFT为单独的开关键。

CNTL与其它键连用作特殊命令键,SHIFT可作上、下挡控制键。

(2)传感器方式数据输入格式

此种方式8位输入数据为RL0~RL7的状态。

格式如下:

D7D6D5D4D3D2D1D0

RL7

RL6

RL5

RL4

RL3

RL2

RL1

RL0

2.可编程并行接口芯片8255A

1)8255A的作用

利用8255A的PC口,因为PC口可以进行位操作,pc0与scl连接,pc1与sda连接,完成对at24c02的读写。

2)8255A的功能分析

8255A是可编程并行接口,内部有3个相互独立的8位数据端口,即A口、B口和C口。

三个端口都可以作为输入端口或输出端口。

A口有三种工作方式:

即方式0、方式1和方式2,而B口只能工作在方式0或方式1下,而C口通常作为联络信号使用。

8255A的工作只有当片选CS效时才能进行。

而控制逻辑端口实现对其他端口的控制。

3)8255A的方式控制字

D7D6D5D4D3D2D1D0

1

0

0

0

1

0

0

1

1:

工作方式A口方式0输出B口方式0输出

C口高4位输入C口低4位输入

图2-38255A的方式控制字表

1方式0的工作特点:

是这种方式通常不用联络信号,不使用中断,三个通道中的每一个都有可以由程序选定作为输入或输出。

2通道的功能为:

两个8位通道:

通道A和B。

两个四位通道:

通道C高4位和低四位,任何一个通道可以作输入/输出,输入是不锁存的,输出是锁存的,在方式0时各个通道的输入/输出可有16种不同的组合。

D7D6D5D4D3D2D1D0

0

X

X

X

写入位编码

写入内容

写入位编码0写入0

D0-D7000-1111写入1

图2-48255A的置位/控制字表

3.选择芯片AT24C02

1)AT24C02的作用

利用AT24C02芯片将从键盘输入的数据(即模拟温度)进行存储。

2)AT24C02的功能分析

AT24C02是一个2K位串行CMOSE2PROM,内部含有256个8位字节,AT24C02有一个16字节页写缓冲器。

该器件通过IIC总线接口进行操作,有一个专门的写保护功能。

AT24C02支持IIC,总线数据传送协议IIC,总线协议规定任何将数据传送到总线的器件作为发送器。

任何从总线接收数据的器件为接收器。

数据传送是由产生串行时钟和所有起始停止信号的主器件控制的。

主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据(发送或接收)的模式,通过器件地址输入端A0、A1和A2可以实现将最多8个AT24C02器件连接到总线上。

3)AT24C02的技术参数

(1)管脚配置

  管脚封装如右图2-5所示。

  

图2-5管脚封装

(2)极限参数

  工作温度工业级-55℃+125℃

  商业级0℃+75℃

  贮存温度-65℃+150℃

  各管脚承受电压-2.0Vcc+2.0V

  Vcc管脚承受电压-2.0+7.0V

  封装功率损耗(Ta=25℃)1.0W

  焊接温度(10秒)300℃

  输出短路电流100mA

表2-4可靠性参数

符号  

参数  

最小  

最大  

单位  

参考测试模式  

NEND

耐久性

1,000,000

  

周期/字节  

MIL-STD-883测试方法1033  

TDR  

数据保存时间  

100  

  

年  

MIL-STD-883测试方法1008  

VZAP  

ESD  

2000  

  

V  

MIL-STD-883测试方法3015  

ILTH  

上拉电流  

100  

  

mA  

JEDEC标准17  

(3)管脚描述

表2-5管脚描述  

管脚名称  

功能  

A0A1A2

器件地址选择  

SDA

串行数据/地址  

SCL

串行时钟  

WP 

写保护  

Vcc  

+1.8V~6.0V工作电压  

Vss  

地  

SCL串行时钟

  AT24C02串行时钟输入管脚用于产生器件所有数据发送或接收的时钟,这是一个输入管脚。

SDA串行数据/地址

  AT24C02双向串行数据/地址管脚用于器件所有数据的发送或接收,SDA是一个开漏输出管脚,可与其它开漏输出或集电极开路输出进行线或(wire-OR)。

A0、A1、A2器件地址输入端

  这些输入脚用于多个器件级联时设置器件地址,当这些脚悬空时默认值为0。

当使用AT24C02时最大可级联8个器件。

如果只有一个AT24C02被总线寻址,这三个地址输入脚(A0、A1、A2)可悬空或连接到Vss,如果只有一个AT24C02被总线寻址这三个地址输入脚(A0、A1、A2)必须连接到Vss。

WP写保护

  如果WP管脚连接到Vcc,所有的内容都被写保护只能读。

当WP管脚连接到Vss或悬空允许器件进行正常的读/写操作

4.七段LED显示器

1)七段LED显示器的作用

本次设计需要用到LED显示器显示AT24C02中的温度数据,并当输入错误时有错误显示。

2)七段LED显示器功能分析

LED显示器有共阳极和共阴极两类。

其中共阴极原理图如下:

图2-6LED显示器原理图

七段LED显示器可以控制在哪几个数位上,哪几个发光二极管亮,从而显示数字。

其工作原理:

如果发光二极管共阳极,则输入为0时亮,为1时不亮,反之如果发光共阴极,则输入1时亮,0时不亮。

发光二极管时一种外加电压超过额定电压时发生击穿,并因此能产生可发光的器件,数码显示器通常由多个发光二极管来组成七段或八段笔画显示器,当段组合发光时,便会显示某一个数码管或字符,七段代码的各位用作a—g和DP的输入

3)七段LED显示器技术参数

表2-6LED显示的技术参数

PCW

LF

Vr

Ir

If

p

对应变量

散射颜色

BT235

70

25

5

≥1.5

≤2.5

200

SEL-10

BT144

100

40

5

≥0.5

≤2.5

565

绿

BT134

100

40

5

≥0.5

≤2.5

585

主要参数:

此时的驱动电流为25mA。

七段LED显示器内部结构

 

 

图2-7LED显示器内部结构

七段LED显示器真值表

表2-7LED字型显示原理(共阳极)

数字

Dp

g

f

e

d

c

b

a

二进制编码

0

1

1

0

0

0

0

0

0

C0H

1

1

1

1

1

1

0

0

1

F9H

2

1

0

1

0

0

1

0

0

A4H

3

1

0

1

1

0

0

0

0

B0H

4

1

0

0

1

1

0

0

1

99H

5

1

0

0

1

0

0

1

0

92H

6

1

0

0

0

0

0

1

0

82H

7

1

1

1

1

1

0

0

0

F8H

8

1

0

0

0

0

0

0

0

80H

9

1

0

0

0

0

1

1

0

90H

5.选择器件(4)小键盘

1)小键盘在本设计中的作用

本设计中,小键盘用于输入模拟温度,用十进制表示。

温度从0~255,用温度用0~9,用a表示一个温度输入结束,用b表示输入十个温度数据完毕后再存储到AT24C02,用c表示温度数据要在led上显示。

2)小键盘的功能分析

通常使用的键盘是矩阵结构的。

对于4×4=16个键的键盘,采用矩阵方式只要用8条引线和2个8位端口便完成键盘的连接。

如图,这个矩阵分为4行4列,如果键5按下,则第1行和第1列线接通而形成通路。

如果第1行线接低电平,则键5的闭合,会使第1列线也输出低电平。

矩阵式键盘工作时,就是按行线和列线的电平来识别闭合键的。

图2-84×4键盘矩阵图

行扫描法识别按键的原理如下:

先使第0行接低电平,其余行为高电平,然后看第0行是否有键闭合。

这是通过检查列线电位来实现的,即在第0行接低电平时,看是否有哪条列线变成低电平。

如果有某列线变为低电平,则表示第0行和此列线相交位置上的键被按下;如果没有任何一条列线为低电平,则说明第0行没有任何键被按下。

此后,再将第1行接低电平,检测是否有变为低电平的列线。

如此重复地扫描,直到最

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

当前位置:首页 > 求职职场 > 笔试

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

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