您好!
我正在数据采集系统的原型项目 ,因为我正在使用波共享高精度 AD/da 转换器板(ad1256)覆盆子 PI4模式 B, 我已经从 https://www.waveshare.com/wiki/File:AD1256-bcm2835.zip 中获得了参考代码 、并且按照我的要求进行了修改、例如、我需要用时间戳将 ADC 值写入文件、时间戳从0.000微秒开始、对于时间戳、我使用 clock_gettime(clock_realtime, & OUT_START_TIME);函数从 time.h 库中可以看出、我面临的问题是、假设我已将 SPS 速率选择为1000Hz、我没有获得每秒1000个样本(即、1000SPS 意味着每秒1000个样本、 例如、 如果我已经运行循环1分钟、我需要获得60K 的样本、但我每分钟没有获得60K 的样本)。 我需要在文件中写入 ADC 值和时间戳,样本应与 sps 速率匹配,所以我如何才能得到样本按 sps ,如果你有任何想法/建议,请告诉我, 我选择了 SPI 时钟分频器作为 BCM2835_SPI_setClockDivider (BCM2835_SPI_CLOCK_DIVIDER_128);因此为了获得所需的 SPS 速率 Raspberry PI4模式 B 时钟分频器的值是多少,我如何在指定时间将 SPS 和 ADC 值与匹配。
while (指定时间)
{
Clock_gettime (clock_REALTIME 和 OUT_START_TIME);
ALL_ADC_READ ();
Clock_gettime (clock_REALTIME 和 OUT_END_TIME);
//使用 fprintf 将 ADC 值和时间戳加载到文件中(根据 out_start_time 和 out_end_time 之间的差值获取的时间戳);
}
此致
Raj