你好对话小组,
我正在尝试从连接在P0_0上的温度传感器中采样值。所有功能正常,但ADC的值从不保持恒定,并在传感器实际值的+/-5%之间跳跃。即使传感器变得稳定,也会发生这种情况。我试着用万用表和高分辨率示波器监测传感器输出引脚上的电压。传感器的输出值变化不大,所以我想知道我是否做错了什么。读取ADC端口上的值基于电池示例(使用单模转换和GP_ADC_ATTN3X降低精度)。
此外,出于文档的目的,我想知道ADC使用哪种时钟。关于这件事,我找不到确切的消息。在数据表中,GP_ADC_CLK_SEL=0表示使用内部高速时钟,而GP_ADC_CLK_SEL=1表示使用数字时钟。这些时钟的准确值是多少?
提前谢谢
设备:
嗨,姆巴科保罗,
请您澄清一下,您是使用DA14583定制板,还是使用我们的任何开发板?传感器和DA14583之间可能添加了噪声。没有关于ADC时钟生成的任何可用文档。正如您正确提到的,ADC使用~200MHz的内部高速。你能提供你正在使用的传感器的信息吗?它是16位输出吗?
谢谢,下午好
对话小组你好,
谢谢你的回复!我正在使用DA14583的定制板,但我尝试将传感器的输出连接到pro板的ADC0上,仍然得到相同的结果。我使用TI的LMT84DCKT来监测温度变化。它的输出是模拟的,提供0到1.5V之间的电压。
关于ADC的时钟生成,是否真的有可能使用16MHz Quarz实现200MHz?我真的搞不懂。是否可以配置ADC用于采样的时钟?
谢谢和问候
保罗·姆巴克
嗨,姆巴科保罗,
请分享您正在读取ADC值的代码片段和配置好吗?正如我在上一篇文章中提到的,ADC使用~200MHz的内部高速,因此该时钟是内部生成的,而不是从16MHz时钟生成的。请查看DA1450数据表中的表177。一个选择(GP_ADC_CLK_SEL=0)将ADC的内部时钟设置为时钟,另一个选择(GP_ADC_CLK_SEL=1)将系统时钟选择为ADC的时钟。使用0选项(内部高速adc时钟),因为这是Dialog建议的,所以内部adc时钟约为200MHz。
谢谢,下午好