2、控制寄存器 ADC 模块包含以下特殊功能寄存器: AD1CON1、AD1CON2和AD1CON3控制寄存器用于控制 ADC 模块的操作。
AD1CHS寄存器用于选择要连接到SHA 的输入引脚。ADC输入通道选择寄存器
AD1PCFG 寄存器用于将模拟输入引脚配置为模拟输入或数字 I/O。
AD1CSSL 寄存器用于选择要顺序扫描的输入。
中断控制的相关位
• “IFS1:中断标志状态寄存器 1”中的中断请求标志状态位 (AD1IF)
• “IEC1:中断允许控制寄存器 1”中的中断允许控制位 (AD1IE)
• “IPC6:中断优先级控制寄存器 6”中的中断优先级控制位(AD1IP<2:0>)和(AD1IS<1:0>) AD1CON1:ADC控制寄存器1
bit 15 ON:ADC 工作模式位
1 = A/D 转换器模块正在工作
0 = A/D 转换器关闭
注: 使用 1:1 PBCLK 分频比时,在清零模块 ON 位的指令之后,用户的软件不应立即在 SYSCLK周期中读 / 写外设的 SFR。
bit 14 FRZ :调试异常模式冻结位
1 = 在 CPU 进入调试异常模式时冻结工作
0 = 在 CPU 进入调试异常模式时继续工作
注: FRZ 仅在调试异常模式下可写。它在正常模式下读为 0。
bit 13 SIDL: : IDLE (空闲)模式停止位
1 = 当器件进入 IDLE (空闲)模式时,模块停止工作
0 = 在 IDLE (空闲)模式下模块继续工作
bit 12-11 保留:写入 0 ;忽略读操作
bit 10-8 FORM<2:0> :数据输出格式位
011 = 有符号小数, 16 位 (DOUT = 0000 0000 0000 0000 sddd dddd dd00 0000)
010 = 小数, 16 位 (DOUT = 0000 0000 0000 0000 dddd dddd dd00 0000)
001 = 有符号整数, 16 位 (DOUT = 0000 0000 0000 0000 ssss sssd dddd dddd)
000 = 整数, 16 位 (DOUT = 0000 0000 0000 0000 0000 00dd dddd dddd)
111 = 有符号小数, 32 位 (DOUT = sddd dddd dd00 0000 0000 0000 0000)
110 = 小数, 32 位 (DOUT = dddd dddd dd00 0000 0000 0000 0000 0000)
101 = 有符号整数, 32 位 (DOUT = ssss ssss ssss ssss ssss sssd dddd dddd)
100 = 整数, 32 位 (DOUT = 0000 0000 0000 0000 0000 00dd dddd dddd)
bit 7-5 SSRC<2:0> :转换触发源选择位
111 = 由内部计数器结束采样并启动转换(自动转换)
110 = 保留 101 = 保留 100 = 保留 011 = 保留
010 = 由 Timer3 周期匹配结束采样并启动转换
001 = 由 INT0 引脚的有效跳变结束采样并启动转换
000 = 由清零 SAMP 位结束采样并启动转换
bit 4 CLRASAM :停止转换序列位 (在产生第一个 A/D 转换器中断时)
1 = 在产生第一个 ADC 中断时停止转换。当产生 ADC 中断时,硬件会清零 ASAM 位。
0 = 正常工作,缓冲区内容会被下一个转换序列覆盖
bit 3 保留:写入 0 ;忽略读操作
bit 2 ASAM:ADC 采样自动启动位
1 = 最后一次转换结束后立即开始采样; SAMP 位自动置 1
0 = SAMP 位置 1 时开始采样
bit 1 SAMP:ADC 采样使能位
1 = ADC SHA 正在采样
0 = ADC SHA 保持
当 ASAM = 0 时,向该位写入 1 将启动采样。
当 SSRC = 000 时,向该位写入 0 将结束采样并启动转换。
bit 0 DONE :A/D 转换状态位
1 = A/D 转换已完成
0 = A/D 转换尚未完成或尚未启动
清零该位不会影响进行中的任何操作。在自动模式下, DONE 位不是持久性的。在下一次采样开始时,硬件会将它清零。
|