764 使用内部比较器AD转换采样原理图如下,请看文件
此主题相关图片如下:

我用了PHILIP 51LPC 系列单片机应用和设计中的使用比较器AD转换,按照原理来做的,但是比较器就是没有工作一样,采样不到数据.请看
ADSCAN:
CLR TR0
SETB RS1
MOV TH0,#0f7H ;预置定时器初值
MOV TL0,#0
MOV PT0AD,#30H ;禁止CIN1A CIN2A 和CMPREF 上的数字输入功能
ANL P0M2,#0CFH ;禁止CIN1A CIN2A和CMPREF 上的数字输出功能
ORL P0M1,#30H
MOV CMP2,#00H
MOV CMP1,#20H ;开启比较器1 并进行如下设置
SETB TR0
Keyscan0:
JBC TF0,Keyscan1 ;充电时间过长定时器溢出则退出
MOV A,CMP1 ;比较器翻转测试
JB ACC.1,Keyscan0 ;充电时间未到则继续
Keyscan1:CLR TR0 ;冻结定时器
MOV R3,TL0 ;读取充电时间间隔的单字节
MOV A,TH0
ADD A,#3 ;计算充电时间间隔的高字节
MOV R2,A
ANL PT0AD,#0DFH ;将CMPREF设置成为数字端口状态
ORL P0M2,#20H; 将CMPREF设置成为开漏端口
CLR RC ;将CMPREF置低电平进行放电
CLR RS1
ADOUT: RETI ;定时中断结束
望指点.

此主题相关图片如下:
