您好!
这些文档和 driverlib 代码似乎与一些 ADC 时钟源选项相冲突。
文档 SLAU445I MSP430FR4xx 和 MSP430FR2xx 系列用户指南
图21-1. ADC 方框图显示 ADCSHSx 选择时钟源:
MODOSC
ACLK
MCLK
SMCLK
表21-4. ADCCTL1寄存器说明显示
位4-3 ADCSSELx
00b = MODCLK
01b = ACLK
10b = SMCLK
11b = SMCLK
除了文档"MSP430 DriverLib for MSP430FR2xx_4xx Devices"外、SMCLK 重复出现了一个拼写错误、对于函数 ADC_init、这包含:
void adc_init (uint16_t baseAddress、uint16_t sampleHoldSignalSourceSelect、uint8_t clockSourceSelect、uint16_t clockSourceDivider)
其中 clockSourceSelect 选项包括:
- ADC_CLOCKSOURCE_ADCOSC [默认]-来自时钟系统的 MODOSC 5MHz 振荡器
- ADC_CLOCKSOURCE_ACLK -辅助时钟
- ADC_CLOCKSOURCE_SMCLK -子主控时钟
没有 MCLK 选项、但 ADC_CLOCKSOURCE_SMCLK 选项定义为:
#define ADC_CLOCKSOURCE_SMCLK (ADCSSEL_2)
在 msp430fr2153.f 中、这定义为
#define ADCSSEL_2 (0x0010) /* MCLK */
请注意、该注释表明此选项是 MCLK。
我只会测量它,但它将是一个小小的调子,以获得时间,我有一些其他问题,跟随在其他帖子:) 这意味着我的结果并不是我期望的那样、因此如果有人能澄清这一点、将会有所帮助。
此致
吉姆·怀特豪斯