This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我在定制 SBC 中使用 MSP430F5638、很难找到一些常量的定义。
ADC12REF_0至_7在哪里定义? DS 或 UG 中没有任何内容、仅在 msp430f5638.h 中列为 ADC12选择参考0至7
ADC12SHT0_0至_15的问题相同
在四个内部 ADC 通道中、A8和 A9有什么作用? 仅找到 A10温度和 A11电压=(AVcc - AVss)/2的说明。
ADC12REF_0等在头文件中定义。 它们只是处理 ADC12SREF0-2的简写方法。 您只需写入 ADC12REF_7、而不是写入 ADC12SREF0|ADC12SREF1|ADC12SREF2。 您几乎可以在每个多位特殊功能寄存器字段中找到这种情况。
对于 A8和 A9、方框图显示了它们连接到 VeREF+和 VeREF-。 这当然是 ADC12INCH 寄存器描述的内容。
David、
感谢您的回答。 好的、我得到 ADC12REF_0是对更长的 常量序列的简写引用、但它是在哪里定义的? UG 或 DS 中的页码是什么、或者 msp430f5638.h 中的行号是什么? 我在头文件中找不到它。
我在 UG 中看到了 ADC12INCH 图表、第755页、所以解决了这个问题。
它不在用户指南中。 从标题中:
#define ADC12SREF_0 (0x0000) /* ADC12 Select Reference 0 */ #define ADC12SREF_1 (0x0010) /* ADC12 Select Reference 1 */ #define ADC12SREF_2 (0x0020) /* ADC12 Select Reference 2 */ #define ADC12SREF_3 (0x0030) /* ADC12 Select Reference 3 */ #define ADC12SREF_4 (0x0040) /* ADC12 Select Reference 4 */ #define ADC12SREF_5 (0x0050) /* ADC12 Select Reference 5 */ #define ADC12SREF_6 (0x0060) /* ADC12 Select Reference 6 */ #define ADC12SREF_7 (0x0070) /* ADC12 Select Reference 7 */
我之前在 msp430f5638.h 中找到 ADC12SREF_0、这会提示我原始帖子。 没有任何 ADC12SREF0或 ADC12SREF1寄存器。 如果这只是一种简略的方法来执行一组按位操作或单个位操作、这是一种糟糕的编写代码的方法。 您必须是航行者才能弄清意图。 向头文件添加注释、以便我们知道目标和顺序是什么。
当然有:
#define ADC12SREF0 (0x0010) /* ADC12 Select Reference Bit 0 */ #define ADC12SREF1 (0x0020) /* ADC12 Select Reference Bit 1 */ #define ADC12SREF2 (0x0040) /* ADC12 Select Reference Bit 2 */
这对我来说一直是显而易见的。
你(们)好
根据 UG、有8种 ADC 基准选择:slau208q
头文件上有3个寄存器位、用于8种参考选项
我认为 MSP430F5638头文件定义与 UG 上的寄存器说明相匹配。
谢谢!
谢谢 Xiaodong、
我在 UG 和头文件中看到了这些内容。 查看 ADC12SREFx 选择的8个电压基准设置、VREF 和 VeREF 在+和-基准上有何区别?
你(们)好
在 F5638中、VeREF 是外部电压基准、VREF 是内部电压基准
谢谢!