|
实验13
模拟/数字转换器ADC0804
所谓A/D转换器就是模拟/数字转换器(Analog
to Digital Converter 简称ADC)是将输入的模拟信号转换成为数字信号。
|
ADC0804的规格及引脚图
|
试验原理图:
|
|
/CS:芯片选择信号。
VREF:辅助参考电压。
|
/WR:用来启动转换的控制当/WR自HI变为LO时,转换器被清除;当/WR回到HI时,转换正式启动;
|
|
/RD:外部读取转换结果的控制脚输出信号。
|
DB0~DB7:8位数字输出。
|
|
/INTR:中断请求信号输出,低电平动
|
AGND,DGND:模拟信号以及数字信号接地。
|
|
CLK IN,CLK R:时钟输入或接振荡元件(R,C),频率约限制在100KHz~1460KHz
|
VIN(+),VIN(-):差动模拟电压输入。输入单端正电压时,VIN(-)接地;
|
| |
|
|
VCC:电源供应以及作为电路的参考电压。
ADC0804电压输入与数字输出关系如表所示
|
十六进制
|
二进制码
|
与满刻度的比率
|
相对电应值VREF=2.560伏
|
|
高四位字节
|
低四位字节
|
高四位字节电压
|
低四位字节电压
|
|
F
|
1111
|
15/16
|
15/256
|
4.800
|
0.300
|
|
E
|
1110
|
14/16
|
14/256
|
4.480
|
0.280
|
|
D
|
1101
|
13/16
|
13/256
|
4.160
|
0.260
|
|
C
|
1100
|
12/16
|
12/256
|
3.840
|
0.240
|
|
B
|
1011
|
11/16
|
11/256
|
3.520
|
0.220
|
|
A
|
1010
|
10/16
|
10/256
|
3.200
|
0.200
|
|
9
|
1001
|
9/16
|
9/256
|
2.880
|
0.180
|
|
8
|
1000
|
8/16
|
8/256
|
2.560
|
0.160
|
|
7
|
0111
|
7/16
|
7/256
|
2.240
|
0.140
|
|
6
|
0110
|
6/16
|
6/256
|
1.920
|
0.120
|
|
5
|
0101
|
5/16
|
5/256
|
1.600
|
0.100
|
|
4
|
0100
|
4/16
|
4/256
|
1.280
|
0.080
|
|
3
|
0011
|
3/16
|
3/256
|
0.960
|
0.060
|
|
2
|
0010
|
2/16
|
2/256
|
0.640
|
0.040
|
|
1
|
0001
|
1/16
|
1/256
|
0.320
|
0.020
|
|
0
|
0000
|
|
|
0
|
0
|
;//定义ADC的连接端口
ad_cs equ P3.6
ad_wr equ P2.0
ad_rd equ P3.7
ad_input_port equ p1
org 0000h
ajmp main
org 0030h
main:
lcall adc_demo
ajmp main
;// 启动AD转换
Adc_Start:
clr ad_cs
nop
clr ad_wr
nop
setb ad_wr
nop
setb ad_cs
nop
ret
Adc_Read: ;// 读AD转换
mov ad_input_port,#0ffh
clr ad_cs
nop
clr ad_rd
nop
nop
mov a,AD_INPUT_PORT
nop
setb ad_rd
nop
setb ad_cs
ret
;// AD转换读取延时程序,显示读到的数值
Adc_Demo:
lcall Adc_Start
lcall delay1ms
lcall adc_read
clr p2.0
clr p2.3
mov p0,a
ret
delay1ms:
mov r7,#10
tt1:
mov r6,#50
djnz r6,$ ;2us
djnz r7,tt1
ret
end
接线方法:
|
1 用一个2PIN数据线插入CPU部分JP53(P3口)的P3.6,P3.7另一端插入ADC0804部分的输入端J3.
2 用一根8PIN的数据排线, 一端插入ADC0804部分的数据输入端JP35,
另一端插入CPU部分JP44(P1口)
3用一根8PIN的数据排线,
一端插入八路指示灯部分的JP32, 另一端插入CPU部分JP51(P0口)
运行照片,用一个小螺丝刀调整AD转换部分的ADJ3
可以看到P0口引出的8个LED逐次变化。
|
|