1、第三章 过程通道和数据采集系统 之三,杨根科 上海交通大学自动化系 2005年9月,内容提要,概述 模拟量输入通道 D/A与A/D转换技术-之二 数据采集系统 模拟量输出通道 过程通道的抗干扰措施 小结,概述,过程通道:计算机和生产过程之间设置的信息传送和转换的连接通道。(AI、AO、DI、DO),微机控制系统组成框图,3 D/A与A/D转换技术(11),常用A/D转换方式: 逐次逼近式:转换时间短,抗扰性差(电压比较) ADC0809(8位),AD574(12位) 双斜率积分式:转换时间长,抗扰性好(积分)MC14433(11位),ICL7135(14位) 计数比较式:转换速度慢,抗扰性差,
2、较少采用,3.2 单片A/D转换器及其 与微处理器的接口,8位AD转换器ADC0809 带8通道模拟开关的8位逐次逼近A/D转换器 转换时间100us, 总的不可调误差为1/2LSB和1LSB 可直接与微机相连,不需另加接口逻辑 输入、输出引脚电平与TTL电路兼容 当模拟电压范围为05v时可使用单一的5v电源 一般不需要调零和增益校准,单片A/D转换器及其 与微处理器的接口(2), ADC0809引脚结构: 采用双列直插式封装,共有28条引脚 8条模拟量输入通道 地址输入和控制线4条 数字量输出及控制线11条 电源线及其他:5条,单片A/D转换器及其 与微处理器的接口(3), 是转换后的二进制
3、输出端,它们受输出允许信号OE的控制:OE0, 呈高阻态;OE1,输出转换后的数据 A、B、C是三个采样地址输入端,它们的8种组合用来选择8个模拟量输入通道 中的一个通道并进行转换,单片A/D转换器及其 与微处理器的接口(4), 输入通道选通地址表,单片A/D转换器及其 与微处理器的接口(5), ALE是地址锁存选通信号,该信号上升沿把地址状态选通入地址锁存器。也可以作为开始转换的启动信号 START为启动转换脉冲输入端,其上跳变复位转换器,下降沿启动转换。它可由程序或外部设备产生。当START与EOC端短接时,实现自动连续转换,单片A/D转换器及其 与微处理器的接口(6), EOC为转换结束
4、信号,从START信号上升沿开始经8个时钟周期后由高电平变为低电平。该信号也可作为中断请求信号 CLK为时钟信号输入端,最高可达1280kHz REF(+) 和REF()为基准电压输入端,它们决定了输入模拟电压的最大值和最小值。通常REF(+)和电源Vcc一起接基准电压,REF()接地端GND,单片A/D转换器及其 与微处理器的接口(8), 转换时序,单片A/D转换器及其 与微处理器的接口(9),MCS-51系列单片机和ADC0809的接口,单片A/D转换器及其 与微处理器的接口(10), 单片机的端口0作为复用数据总线,与ADC0809的数据输出端 相连 单片机的低3位数据线(选通abc)用
5、于选择8路模拟量输入 ADC0809的时钟信号CLK由单片机的ALE信号提供 转换的启动信号START和8路模拟输入开关的地址锁存允许信号ALE由单片机的写信号WR及地址译码输出信号逻辑提供。 本接口用P2.7作 I/O 地址选择信号,相当于用ADC0809的片选信号作启动信号,其地址为7FFFH,单片A/D转换器及其 与微处理器的接口(11), 转换开始时,EOC端降为低电平,当转换结束后,EOC升为高电平。本电路用中断方式通知单片机转换已经结束。也可采用查询方式和等待方式,但这两种方式单片机的利用率低。 对本接口电路可编出相应的程序。在主程序中要对外部中断进行预置,然后启动ADC0809进
6、行A/D转换。设由IN0路开始,8路模拟量轮流输入。转换结束后,转入中断服务子程序,把转换结果读入8031的累加器,并存入相应缓冲存储单元50H57H,再由主程序进行处理,单片A/D转换器及其 与微处理器的接口(12), 转换程序如下:ORG 2000HSETB IT0 ;外中断请求信号为下跳沿触发方式SETB EA ;总中断开放SETB EX0 ;开外中断0MOV DPTR,#7FFFH ;ADC0809口地址MOV R0,#50H ;R0作存数缓冲器指针MOV R1,#00H ;R1作通道数指针MOV A,R1 ;从IN0路开始MOVX DPTR,A ;启动A/D转换 ;继续主程序,等待中
7、断,单片A/D转换器及其 与微处理器的接口(13), 中断子程序:ORG 0003H ;外中断0的入口地址AJMP RDDAT ;转移至读入数据处 RDDAT: MOVX A,DPTR ;读取A/D转换数据MOV R0,A ;存入缓冲器INC R0 ;增量缓冲器指针INC R1; 指向下一通道 REP: MOV A,R1 ;MOVX DPTR,A ;启动下一路转换CJNE A,#07H,RMP0; 所有路都转换过吗?MOV R1,#00H; 是,重新从IN0路开始SJMP REP REMP0: RETi ;否,中断返回,单片A/D转换器及其 与微处理器的接口(14),12位A/D转换器AD57
8、4 单通道12位逐次逼近A/D转换器 转换时间25us, 误差1/2LSB,单极性或双极性输入,量程10V或20V 内部集成有转换时钟、参考电压源和三态输出锁存器,因此可直接和微机接口,不需要外接时钟电路 AD574的数字量的位数可以设定为8位,也可设定为12位,单片A/D转换器及其 与微处理器的接口(15),AD574引脚结构: 28脚双列直插式封装,单片A/D转换器及其 与微处理器的接口(16), 单、双极性应用:单极性时BIP OFF接0V,双极性时BIP OFF接10V,单片A/D转换器及其 与微处理器的接口(17), 转换结果输出: 引脚12/8=1:D11-D0并行输出; 引脚12
9、/8=0:D11-D8和D7-D0分时输出; 转换进行:STS为高电平 转换结束:STS从高电平转为低电平,单片A/D转换器及其 与微处理器的接口(18), 控制逻辑,单片A/D转换器及其 与微处理器的接口(19), 转换时序: 启动,单片A/D转换器及其 与微处理器的接口(20), 转换时序:读,单片A/D转换器及其 与微处理器的接口(21),8031与AD574的接口,单片A/D转换器及其 与微处理器的接口(22), 、 、 的状态由地址锁存器74LS373锁存 单片机的读写信号 、 相与非后送入CE 直接接地,使输出变换结果格式采用分高8位低4位两次读取的方法 STS接单片机的一条静态端
10、口线,单片机采用查询的方法,待STS为低后再读A/D变换结果 编写程序,使AD574进行12位A/D转换,并把转换后的12位数字量存入内部20H和21H单元。设20H单元存放高8位,21H单元存放低4位,单片A/D转换器及其 与微处理器的接口(23), 程序如下:ORG 0000H MOV R0,#20H ;数据区首址MOV DPTR,#0FF7CH MOVX DPTR,A ;启动A/D转换LOOP:JB P1.0,LOOP ;转换是否结束,未结束,等待MOV DPTR,#0FF7DHMOVX A,DPTR ;读高8位数据MOV R0,A ;存高8位数据INC DPTRINC DPTRMOVX A,DPTR ;读低4位数据ANL A,#0FH ;屏蔽高4位随机数INC R0MOV R0,A ;存低4位数据END,