|
发表于 2014-2-12 15:13:11
|
显示全部楼层
版主,同样的问题,关于ADC中有两个寄存器,有一些疑问:
在寄存器AD_SC1中,ADCH(bit0~bit4)功能是选择一个通道作为ADC的输入通道。
寄存器ADC_APCTL1功能是disable/enable ADC Pin.而且是:
0 ADx pin I/O control enabled.
1 ADx pin I/O control disabled.
我在ADC的例程里面找到了对ADCH的操作,没有见到对ADC_APCTL1的操作。
问题1:在引脚图中,ADCx_SEn的优先级都是最高的(ALT 4),那么,在使能ADC模块的情况下(SIM->SCGC |= SIM_SCGC_ADC_MASK;),如果要使用FTM0_CH0(ADC0_SE0)功能,
是不是就要对ADC_APCTL1操作,disable AD0?
问题2:在AN4796这份文档中,有下面一段:
6.3.4 AD转换
ADC模块用来进行相反电动势,直流母线电压和直流母线电流的采样及转换,配置如下:
输入时钟为总线时钟
单次转换模式
转换结果12位,右对齐
ADC->SC3 = ADC_SC3_MODE(2) | ADC_SC3_ADIV(2);
使用外部PWM信号触发
ADC->SC2 |= ADC_SC2_ADTRG_MASK;
采样通道设置为:直流母线DC_Bus电压为通道AD11,直流母线DC_Bus电流为通道AD14,
A相反电势为通道AD10,B相反电势为通道AD3,C相反电势为通道AD7
ADC->APCTL1 = 0xC488;
这里面使能 AD3,AD7,AD11,AD14是通过对ADC->APCTL1 寄存器赋值0xC488;也就是置高bit3,bit7,bit14,bit15
这个操作好像和寄存器的说明矛盾,而且为什么通过置高bit15来使能AD11? |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|