Board logo

标题: ADUC812单片机的12位AD可以完全利用吗? [打印本页]

作者: 基洛级    时间: 2007-12-11 23:15     标题: ADUC812单片机的12位AD可以完全利用吗?

小弟最近在利用ADUC812上的12位AD做连续的数据采集,采用单步采样每隔2ms采集一次.其基准电压为2.5V,一个LSB约为0.6mv.也就是2.5V/4096=0.6mv,4096就是2的12次方.当我输入的模拟电压小于150mv也就是最多用12位中的8位表达时,单片机的DA输出正常没有信号跳变.但当输入的模拟电压大于150mv时,也就是用8为数据无法表达得采用12为数据表达时,此时的DA输出虽然能正常工作,但是输出的信号总有很多小的信号跳变.请问各位高手,这样的DA输出情况正常吗?

我的数据采集程序和DA输出程序如下:各位高手请指点.如果不是程序的问题,硬件方面会有什么问题吗?

$MOD812
CHAN EQU 00
CSEG
ORG 0000H
LJMP START
ORG 0033H ;ADC转化结束
LJMP INT
ORG 0080H
START:MOV ADCCON1,#70H ; 设置控制
MOV ADCCON2,#CHAN ; 选择0通道
MOV DACCON,#2DH
SETB EA
SETB EADC ; 打开ADC中断
SETB ES
AGAIN:CALL DELAY
SETB SCONV
LJMP AGAIN
DELAY:MOV R7,#4
DLY1:MOV R6,#229
DJNZ R6,$
DJNZ R7,DLY1
RET
ORG 0200H
INT:MOV R2,ADCDATAL ;
MOV R3,ADCDATAH
MOV DAC0L,R2
MOV DAC0H,R3
RETI

END






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0