3.模拟信号采样/转换
每个ADC在1个A/D转换预定标时钟周期内完成输入的采样,在5个A/D转换预定标时钟周期内完成转换,所以每个采样/转换需要6个ADC时钟周期。ADC模块结构要求采样/转换时间要大于等于6μs以保证正确转换。因此,对所有系统时钟频率,都必须有6个ADC时钟周期大于等于6μs,ADC提供了一个预定标功能,来保证无论DSP时钟如何变化都不得可以确保ADC最佳性能。这样一来,通过学习选择合适的预定标就可以满足上述要求。
预定标值由下式决定:
SYSCLK时钟周期TSYSCLK×预定标值×6≥6μs
预定标值由ADC控制寄存器ADCTRL2的其中三位决定,在编程时,应根据系统时钟周期的取值和上式的关系确定预定标值。
4.数字量输出
ADC的10位数字量结束由下面公式近似给出,进行结果验证。
数字量结果=1023×(输入模拟电压-VREFLO)/(VREFHI-VREFLO)
每个ADC包含一个2级FIFO数字输出寄存器,该寄存器包含一个模拟输入转换后的10位数字量结果,存放在寄存器的高10位,读FIFO时,低6位D5~D0始终为零。FIFO是只读寄存器,复位时被清零。
5.双10位A/D转换器编程
每个DSP的单元模块都有多种功能或多种工作方式,它的功能实现是由相关的寄存器和引脚完成。寄存器分为控制类寄存器、状态寄存器和数据寄存器。每个模块在工作以前,由控制类寄存器对模块进行初始化编程,设置其功能或工作方式等。因此,对于各类寄存器的地址以及格式的了解至关重要的。ADC模块共有4个寄存器,其地址映射在数据存储器空间的7030H~703FH之间。
(1)ADC控制寄存器1(ADCTRL1)——地址7032H
D15:S。仅用于仿真期间。
D15=0 当D14=0时,立即停止;
D15=1 仿真器停止之前,完成本次转换。
D14:F。仅用于仿真期间。
D14=0 操作由位D15确定;
D14 =1 仿真器停止时,ADC继续运行。
D13:ADCIMSTRAT。ADC立即开始转换。
D13=0 无动作;
D13=1 立即开始转换。
D12:ADC2EN。ADC2的禁止/使能位,该位是映象的。可以在转换进行过程中写入,不影响本次转换,写入本位的信息在下一次转换时才生效。
D12=0 ADC2禁止(不进行采样、保持和转换,ADCFIFO内容不变);
D12=1 ADC被使能。
D11:ADC1EN,ADC1的禁止/使能位,作用与ADC2EN一样。
D10:ADCCONRUN。将ADC连续转换设置位。
来源:江西电力职业技术学院学报