PIC18F4680 10位AD转换

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

PIC18F4680 10位A/D转换

19.0 10位模数转换器(A/D)模块

PIC18F2X8X器件的A/D转换模块有8路输入,PIC18F4X8X器件的A/D转换模块有11路输入。该模块能将一个模拟输入信号转换成相应的10位数字信号。此模块有五个寄存器:

●A/D转换结果高位寄存器(ADRESH)

●A/D转换结果低位寄存器(ADRESL)

●A/D转换控制寄存器0(ADCON0)

●A/D转换控制寄存器1(ADCON1)

●A/D转换控制寄存器2(ADCON2)

ADCON0寄存器(如寄存器19-1所示)控制A/D模块的工作。ADCON1寄存器(如寄存器19-2所示)配置端口引脚功能。ADCON2寄存器(如寄存器19-3所示)配置A/D时钟源、可编程采样时间和输出结果的对齐方式。

寄存器19-1 ADCON0:A/D控制寄存器0

U-0 U-0 R/W-0 R/W-0 R/W-0R/W-0 R/W-0 R/W-0

bit 7 bit 0 Bit 7-6 未用:读为0

Bit5-2 CHS3:CHS0:模拟通道选择位

0000=通道0(AN0)

0001=通道1(AN1)

0010=通道2(AN2)

0011=通道3(AN3)

0100=通道4(AN4)

0101=通道5(AN5)(1,2)

0110=通道6(AN6)(1,2)

0111=通道7(AN7)(1,2)

1000=通道8(AN8)

1001=通道9(AN9)

1010=通道10(AN10)

1011=未用通道

1100=未用通道

1101=未用通道

1110=未用通道

1111=未用通道

注:1:这些通道在PIC18F2X8X器件上不可用。

2:在未用通道上执行转换会返回不去定的输入值。

Bit1 GO/-DONE:A/D转换状态位

当ADON=1时:

1=A/D转换正在进行

0=A/D空闲

Bit0 ADON:A/D模块使能位

1=使能A/D转换器模块

0=禁止A/D转换器模块

寄存器19-2:ADCON1:A/D控制寄存器1

U-0 U-0 R/W-0 R/W-0 R/W-q(1)R/W-q(1)R/W-q(1)R/W-q(1)

bit 7 bit 0 Bit7-6 未用,读为0

Bit5 VCFG1:参考电压配置位(V REF负参考电压源)

1= V REF-(AN2)

0=A V SS

Bit4 VCFG0:参考电压配置为(V REF正参考电压源)

1= V REF+(AN3)

0= A V DD

Bit3-0 PCFG3:PCFG0:A/D端口配置控制位

注:1:PCFG位的POR值取决于配置寄存器3H中的PBADEN配置为的值。当PBADEN=1时,PCFG<3:0>=0000;当PBADEN=0

时,PCFG<3:0>=0111。

2:AN5到AN7仅在PIC18F4X8X器件上可用。

寄存器19-3:ADCON2:A/D控制寄存器2

R/W-0 U-0 R/W-0 R/W-0 R/W-q(1)R/W-q(1)R/W-q(1)R/W-q(1)

bit 7 bit 0 Bit7 ADFM:A/D结果格式选择位

1=右对齐

0=左对齐

Bit6 未用,读为0

Bit5-3 ACQT2:ACQT0:A/D采样时间选择位

111=20T AD

110=16T AD

101=12T AD

100=8T AD

011=6T AD

010=4T AD

001=2T AD

000=0T AD(1)

Bit2-0 ADCS2:ADCS0:A/D转换时钟选择位

111=F RC(时钟来自A/D模块RC振荡器)(1)

110= F OSC/64

101= F OSC/16

100= F OSC/4

011= F RC(时钟来自A/D模块RC振荡器)(1)

010= F OSC/32

001= F OSC/8

000= F OSC/2

注:1:如果选择了F RC时钟时钟源,在A/D时钟启动之前会加上一个T CY(指令周期)的延时。这可以保证在开始转换之前执行SLEEP指令。

可通过软件选择器件的正电源电压和负电源电压(A V DD和A V SS)或RA3/AN3/ V REF+和RA2/AN2/ V REF-/CV REF引脚上的电压作为A/D转换的模拟参考电压。

A/D转换器具有可在休眠状态下工作的特性。要使A/D转换器在休眠状态下工作,A/D转换时钟必须来自于A/D模块内部的RC振荡器。

采样保持电路的输出时转换器的输入,A/D转换器采用逐次逼近法得到转换结果。

器件复位将强制所有寄存器进入复位状态。这将迫使A/D模块关闭,并中止正在进行的转换。

与A/D转换器相关的每个端口引脚都可以被配置为模拟输入或数字I/O。ADRESH和ADRESL寄存器保存A/D转换的结果。当A/D转换完成时,GO/-DONE位(在ADCON0寄存器中)被清零且A/D中断标志位ADIF位被置1。图19-1给出了A/D模块的框图。

上电复位时,ADRESH/ADRESL寄存器的值保持不变。上电复位后ADRESH/ADRESL寄存器的值不确定。

按要求配置好A/D模块后,在开始转换之前必须采样选定的通道。模拟输入通道的相应TRIS位必须设置为输入。采样时间的确定,请参见第19.1节“A/D采集要求”。在采样完成之后,即可启动A/D转换。采集时间可以被编程置于GO/-DONE位置1和启动转换之间。

相关文档
最新文档