您好,我开始为新项目使用此AD,现在我将此值写入寄存器 1 - 0x40,2 - 0x0A,3 - 0x80,4 - 0x01,5 - 0x48;
您是否有使用销DRDY的示例? 我尝试了一些代码,但没有成功。
谢谢
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.
您好,Roberto:
在ADS122U04的寄存器设置中选择的是 转换结果的自动输出(传输)以及 使用GPIO2的DRDY输出。 通常,您可以使用一种方法或另一种方法,并且不必同时使用这两种方法。
在自动输出模式下,您将轮询 (或使用中断) Micro上的RX输入,以了解是否有新字符到达接收缓冲区。 使用此方法,转换数据将自动发送到微。 您不会发送命令来读取结果。
监控DRDY可能是对微输入的轮询,或者您可能会将中断操作分配给微输入的高到低转换。 当DRDY从HIGH (高)转换为LOW (低)时,您可以发送RDATA命令来读出结果。
如上所示,您可以使用一种方法,也可以使用另一种方法,并且不需要同时使用这两种方法。 您希望通过DRDY实现哪些具体目标,或许我可以帮助您了解代码或提供一些进一步的建议?
此致,
Bob B
你好,Bob。
我是PIC的AD和CSS程序员,我不知道TI的CPU,这是我的下一个愿望清单...
让我为您解释一下我的想法:
我选择了这个广告,因为它更容易制作一个接口,UART。
我读数据表,做一个寄存器,现在我可以做个读数,我成功地做了。
对于Pin DRDY,我的想法是:
启动AD,配置,发送重置comand,发送同步,开始读数...
我想使用100SPS,我的想法,接收这100个样本,放置在矢量上,并为该矢量生成一个中值,例如:(1;2;3;4;6;8;23;37...)中值= xxx。
我认为,这样我就能得到更精确的价值。
我需要使用此图钉,因为我知道我有一个结果,因为我看到我收到了3个六角词,例如: 0x11 0x11 0x11,在CSS中有一个函数make (),我尝试使用它,但Make Result Int32,对于测试,它是正常的,这个Pin状态选择我的3个单词,然后放在vector上,我不知道我是否在走最好的方式去做它。
您是否有此示例?
您好,Roberto:
根据您报告的配置设置,您的工作速度为20sps,采用自动数据输出模式。 这意味着您将看到大约每50毫秒从ADS122U04传输的数据。 在每个转换期结束后,DRDY也会从高转换到低。 因此,数据将在大约与DRDY变换相同的时间传输。
如果在传输数据时收集数据,并且要应用平均值,则有许多不同的方法可以执行此操作。 似乎您想要采集100个样本并将其平均值。 当你说100SPS时,我感到困惑。 如果ADS122U04以20sps的速度发送数据,则无法在一秒内捕获100个样本。 所以也许我不清楚你想做什么。
如果将示波器或逻辑分析器放在ADS122U04 TX上,则应看到大约每50毫秒传输一次的数据。 您需要捕获此数据,然后在下一个数据到达之前进行处理。
如果您希望使用DRDY作为数据正在传输的信号,则需要为您的微控制器设置中断,或轮询微控制器的输入引脚以获得逻辑低状态,然后在数据进入时对其进行处理。
此致,
Bob B