设计一个基于.单片机的具有AD和DA功能的信号测控装置

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 题目背景与意义
本课程设计以《计算机控制系统》课程理论为基础.以其他电子类、计算机及接口类相关课程内容为辅助.在实践中锻炼学生的系统设计能力、理论应用能力、总结归纳能力以及自我学习能力.提高其实践能力、创新意识与创业精神。

2 设计内容
设计一个基于单片机的具有A/D和D/A功能的信号测控装置。

要求该信号测控装置能够接入典型传感器、变送器信号.同时可输出标准电压/电流信号。

并满足抗干扰、通用性、安全性、性价比等原则性要求。

标准电压/电流信号此处定为:0~5V/4~20mA (0~20mA
3 系统总体框架
计算机控制系统由计算机、外部设备、操作台、输入通道、输出通道、检测装置、执行机构、被控对象以及相应的软件组成.如图1所示。

图1 计算机控制系统的组成
4 系统硬件设计
系统的整体结构如图2所示.系统由单片机系统和输入通道.输出通道组成。

输入通道包括信号处理和A/D转换.输出通道则由D/A转换器组成。

图2系统的整体结构图
4.1 单片机最小系统设计
单片机是在一个尺寸有限的芯片上把运算器电路、控制器电路、一定容量的存储器.以及输入输出的接口电路集成为一体的微型计算机。

它在制作上既要求高性能、结构简单灵活.又要求工作稳定可靠。

尽管单片机种类繁多.但无论从世界范围还是从国内范围来看.使用最为广泛的应该数MCS51单片机。

MCS-51 是intel公司生产的一个单片机系列名称。

在本次设计中我采用的单片机就是intel公司生产的MCS51系列单片机中的8051单片机.它的引脚图如下
图3 8051单片机引脚图
表面上看它很简单.但它仍由运算器、控制器、存储器、输入设备和输出设备五部分组成。

单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。

电源: (1) VCC - 芯片电源.接+5V;
(2)VSS - 接地端;
时钟: 外接晶振或外部振荡器引脚
XTAL1-(19脚):当采用芯片内部时钟信号时.接外部晶振的一个引脚;当采用外部时钟信号时.此脚应接地。

XTAL1-(18脚):当采用芯片内部时钟信号时.接外部晶振的一个引脚;当采用外部时钟信号时.外部信号由此脚输入。

控制线:控制线共有4根.
ALE/PROG: 地址锁存允许/片内EPROM编程脉冲
ALE功能:用来锁存P0口送出的低8位地址。

PROG功能:片内有EPROM的芯片.在EPROM编程期间.此引脚输入编程脉冲。

PSEN: 访问外部程序存储器选通信号.低电平有效.用于实现外部程序存储器的读操作
RST/VPD:复位/备用电源。

RST(Reset)功能:复位信号输入端。

VPD功能:在Vcc掉电情况下.接备用电源。

EA/Vpp:内外ROM选择/片内EPROM编程电源。

① EA功能:内外ROM选择端。

② Vpp功能:片内有EPROM的芯片.在EPROM编程期间.施加编程电源Vpp。

多功能I/O引脚
P0口-(32~39脚):P0数据/地址复用总线端口。

P1口-(1~8脚):P1静态通用端口。

P2口-(21~28脚):P2动态端口。

P3口-(10~17脚):P3双功能静态端口。

除作I/O端口外.它还提供特殊的第二功能.其具体含义为:
P3.0-(10脚)RXD:串行数据接收端。

P3.1-(11脚)TXD:串行数据发送端。

P3.2-(12脚)INT0:外部中断0请求端.低电平有效。

P3.3-(13脚)INT1:外部中断1请求端.低电平有效。

P3.4-(14脚)T0:定时器/计数器0计数输入端。

P3.5-(15脚)T1:定时器/计数器1计数输入端。

P3.6-(16脚)WR:外部数据存储器写选通.低电平有效。

P3.7-(17脚)RD:外部数据存储器读选通.低电平有效。

4.2 A/D转换电路
本次设计采用的是ADC 0809是 Nsc公司生产的 CMOS逐次比较式 A /D 转换器。

ADC0809是8通道8位CMOS逐次逼近式A/D转换芯片.片内有模拟量通道选择开关及相应的通道锁存、译码电路.A/D转换后的数据由三态锁存器输出.由于片内没有时钟需外接时钟信号。

通过P2.7来控制A/D是否开始工作。

图4A/D转换电路
A/D转换内部结构
ADC 0809的内部结构框图如图5所示。

通过引脚 IN0~ IN7 可输入 8路模拟电压.但每次只能转换一路.其通道号由地址信号 ADDA、ADDB、ADDC 译码后选定.如表 10- 4所示.片内有地址锁存和译码器。

转换结果送入三态输出锁存缓冲器.当输出允许信号 OE 有效时才输出到数据总线上。

图5 ADC0809内部结构图
ADC0809引脚信号及功能如下所示。

ADC0809为28引脚。

其主要引脚信号如下:
图6 ADC0809引脚及引脚功能
ST为启动模/数转换引脚.当该引脚收到高电平时.开始启动A/D转换。

EOC为模/数转换结束输出引脚.转换结束时.该引脚输出高电平。

在启动 A/D转换后.可以通过对该引脚状态查询(读入)得知模/数转换是否完成
OE为输出允许控制.该引脚用于控制选通三态门。

A/D转换完成得到的数字量存在芯片内。

当OE=1时.三态门打开.A/D转换后得到的数字量才可通过三态门到达数据总线.进而被读入CPU。

CLK为外加时钟输入引脚。

其频率为50~800kHz.使用时常接500~600Kh
ALE为模拟通道锁存信号。

当此引脚由低电平到高电平跳变时.将加到 ADDC、ADDB、ADDA引脚的数据锁存并选通相应的模拟通道。

4.ADC 0809的转换控制。

ADC0809的转换时序如下图。

首先给出ADC通道地址A、B和 C.它们在ALE的上升沿被锁存;然后在 ST(StartConversion)的下降沿开始转换且EOC变低;EOC变高时表示转换结束.这时令OE有效.即可读到转换结果。

图7 ADC0809时序图
4.2 D/A转换电路
4.2.1 D/A 转换的工作原理
D/A 转换有多种方法.如权电阻网络法、T形电阻网络法和开关树法.但最常见的是 T形电阻网络法。

4.2.2 D/A 转换器的主要性能指标
(1)分辨率
分辨率指 D /A 转换器所能分辨的最小量化信号的能力。

这是对微小输入量变化的敏感程度的描述.一般用转换器的数字量的位数来表示。

对于一个分辨率为 n 位的 DAC.它能对满刻度的 2- n倍的输入变换量做出反应。

常见的分辨率有 8位、10位、12位等。

(2)建立时间
建立时间是 DAC转换速度快慢的一个重要参数.指 DAC 的数字输入有满刻
度值的变化时.输出模拟信号电压(或电流)达到满刻度值1/2LSB 时所需要的时间。

对电流输出形式的DAC.建立时间是很短的;而对电压输出形式的 DAC.建立时间主要是其输出运放所需的响应时间。

一般 DAC的建立时间为几个纳秒至几个微秒。

本次设计选用8位 DAC 芯片———DAC 0832
图8 DAC0832引脚图
1.技术参数
内部采用 R -2R 梯形电阻网络.片外为 20引脚双列直插式封装。

分辨率:8位。

建立时间:1μs.电流型输出。

单电源:+5~ +15 V。

低功耗:200 mW。

精度:+1 LSB。

线性误差:+0.1% 。

基准电压范围:-15~ +15 V。

2.内部结构和引脚
DAC 0832由 8位输入锁存器、8位 DAC寄存器、8位 D /A 转换电路组成.内部逻辑结构如图8所示
图9 内部逻辑结构
4.2.3 DAC 0832的工作方式
根据对 DAC 0832的输入锁存器和 DAC寄存器的不同的控制方法.DAC 0832有如下三种工作方式。

(1)单缓冲方式
此方式控制输入寄存器和 DAC 寄存器同时跟随或锁存数据.或只控制这两个寄存器之一.而另一个接成直通方式。

此方式适用于只有一路模拟量输出或几路模拟量非同步输出的情形。

参考电路如下图10所示
图10 0832单缓冲方式接口
(2)双缓冲方式
此方式分别控制输入寄存器和DAC寄存器.适用于多路D/A同时输出的情形。

它使各路数据分别锁存于各输入寄存器.然后同时(相同控制信号)打开各DAC 寄存器.实现同步转换。

参考线路如下图11所示.程序片段如下:
图11 0832双缓冲方式接口
4.2.4 锁存器
本设计采用74LS373锁存器芯片.它实质是一个是带三态缓冲输出的8D触发器.在单片机系统中为了扩展外部存储器.通常需要一块74LS373芯片。

74LS373引脚图如下图所示
图12 74LS373引脚图
图13 74LS373内部逻辑图
(1).1脚是输出使能(OE),是低电平有效,当1脚是高电平时,不管输入3、4、7、8、13、14、17、18如何,也不管11脚(锁存控制端,G)如何,输出2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q6)、19(Q7)全部呈现高阻状态(或者叫浮空状态);
(2).当1脚是低电平时,只要11脚(锁存控制端,G)上出现一个下降沿,输出2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q6)、19(Q7)立即呈现输入脚3、4、7、8、13、14、17、18的状态.
74ls373与单片机接口: 1D~8D为8个输入端。

1Q~8Q为8个输出端。

G是数据锁存控制端;当G=1时.锁存器输出端同输入端;当G由“1”变为“0”时.数据输入锁存器中。

OE为输出允许端;当OE=“0”时.三态门打开;当OE=“1”时.三态门关闭.输出呈高阻状态。

在MCS-51单片机系统中.常采用74LS373作为地址锁存器使用.其连接方法如上图所示。

其中输入端1D~8D接至单片机的P0口.输出端提供的是低8位地址.G端接至单片机的地址锁存允许信号ALE。

输出允许端OE接地.表示输出三态门一直打开。

4.3 8051扩展I/O接口设计
选择8255A与8051单片机的接口电路。

4.3.1 选择8255芯片依据
8051单片机是Intel公司的产品.而Intel公司的配套可编程I/O接口芯片的种类齐全.这就为MCS-51单片机扩展I/O接口提供了很大的方便。

Intel公司常用的外围I/O接口芯片有:
⑴8255A:可编程的通用并行接口电路(3个8位I/O口)
⑵8155H:可编程的IO/RAM扩展接口电路(2个8位I/O口.1个6位I/O 口.256个RAM字节单元.1个14位减法定时器/计数器)
由于本次设计不用到定时器/计数器.而且8051单片机本身的定时器/计数器就已经足够.前边又已经设计了扩展静态RAM.数据存储器的容量也已足够.因此.选择较为简单的8255A接口芯片就可以了。

4.3.2 8255芯片说明
8255A是Intel公司生产的可编程并行I/O接口芯片.它具有3个8位的并行I/O口.3种工作方式.可通过编程改变其功能.因而使用灵活方便.通用性强.可作为单片机与多种外围设备连接时的中间接口电路.8255A的引脚及内部结构如图14、15所示。

① 8255A引脚说明
8255A共有40只引脚.采用双列直插式封装.其引脚说明如下:
⑴D7-D0:三态双向数据线
⑵CS:片选信号线.低电平有效.表示本芯片被选中
⑶RD:读出信号线.低电平有效.控制8255A中数据的写入
⑷WR:写入信号线.低电平有效.控制向8255A数据的写入
⑸Vcc:+5V电源
⑹PA0-PA7:A口输入/输出线
⑺PB0-PB7:B口输入/输出线
⑻PC0-PC7:C口输入/输出线
⑼A0-A1:地址线.用来选择8255A内部的4个端口
图14 8255A引脚图
② 8255A内部结构说明
8255A内部结构包括3个并行数据输入/输出端口.2个工作方式的控制电路、1个读/写控制逻辑电路和8位数据总线缓冲器。

其各部件功能如下:
⑴端口A、B、C
PA口:1个8位数据输出锁存器和缓冲器.1个8位数据输入锁存器
PB口:1个8位数据输出锁存器和缓冲器.1个8位数据输入缓冲器
PC口:1个8位输出锁存器.1个8位数据输入缓冲器
通常PA口、PB口作为输入/输出口.PC口可作为输入/输出口.也可在软件的控制下.分为2个4位端口.作为端口A、B选通方式操作时的状态控制信号。

⑵A组和B组控制电路
这是2组根据CPU写入的命令字控制8255A工作方式的控制电路。

A组控制PA口和PC口的上半部(PC4-PC7);B组控制PB口和PC口的下半部(PC0-PC3),并根据命令字对端口的每一位实现按位置位或复位。

⑶数据总线缓冲器
数据总线缓冲器是1个三态双向8位缓冲器.作为8255A与系统总线之间的接口.用来传送数据、指令、控制命令以及外部状态信息。

⑷读/写控制逻辑电路
读/写控制逻辑电路接受CPU发来的控制信号RD、WR、RESET、地址信号A0-A1等。

然后根据控制信号的要求.将端口数据读出.送往CPU或者将CPU送来的数据写入端口。

图15 8255A的内部结构
表1 8255A端口工作状态选择表
4.4 稳压电源
为了使单片机能更稳定的工作.必须保证有一个稳定的电压输入。

图16 稳压电源
4.5 调理电源
在工业控制中各类传感器常输出标准电流信号4~20mA.为此.常要先将其转换成±10V的标准电压信号.以便送给各类设备进行处理。

这种转换电路以4mA 为满量程的0%对应-10V;12mA为50%对应0V;20mA为100%对应5V。

参考电路见图17所示。

图17调理电路
经对图17电路分析.可知流过反馈电阻Rf的电流为(Vo-VN)/Rf与VN/R1+(VN-Vf)/R5相等.由此.可推出输出电压Vo的表达式:
Vo=(1+Rf/R1+Rf/R5)×VN-(R4/R5)×Vf。

由于VN≈Vp=Ii×R4.上式中的VN即可用Ii×R4替换.若R4=200Ω.R1=18kΩ.Rf=7.14kΩ.R5=43kΩ.并调整Vf≈7.53V.输出电压Vo的表达式可写成如下的形式:
当输入4-20mA电流信号时.对应输出0-5V的电压信号。

4.6 报警指示灯电路
当系统正常运行时.绿灯亮。

当传感器所采集的信息通过单片机处理.如果超过设置的上限值或低于下限值时.蜂鸣器进行报警.红灯亮起。

其电路图如图18所示。

图18报警电路
4.7 数字显示器及键盘的接口
加入键盘和LED显示为了便于人机互动方便工作人员及时了解此时工况.具体电路见大图。

5总结
本系统以AT89C51单片机为核心.利用少量的I/O接口.采用ADC 0809转换芯片.扩展出一个数据采集系统。

并能和上位机通信.减轻了单片机的负担。

该基于单片机的过程控制系统具有体积小、简单实用、成本低、性能价格比高等。

通过一个多星期的毕业设计.我已经完成了自己的设计。

在设计的过程中.增强了我对单片机应用的进一步了解。

对单片机接口扩展有了更好的认识。

发现问题和解决问题的能力有了提高!由于一开始对编程环境的不熟悉.导致经常犯了一些常识错误.给整个进程带来了不少麻烦.但在老师的指导帮助下问题得到了解决!。

相关文档
最新文档