W801 的 ADC 采样 PGA 怎么设置?

发布于 2022-10-03 00: 50: 21

使用 W801 的 ADC 采样时, PGA 放大倍数的设置没有看明白, 怎么设置都不对, SDK 中设置的是
tls_adc_set_pga (1, 1) ;
看代码应该是 0 倍放大, 改成 tls_adc_set_pga (1, 4) ; 或者 tls_adc_set_pga (16, 4) ; 或者 tls_adc_set_pga (16, 2) ; 后, average = tls_read_adc_result () ;
printf ("adc_result: 0x%xrn", average) ;
这里的读数不但没有增加反而减小了, 实际电压大约是 14mV.
而且文档中说 adc_get_offset 时 PGA 倍数要与采样一直, 但是 adc_get_offset 时无论怎么修改 tls_adc_set_pga 的值, 返回的 adc_offset 都是 0x143a3 附近的值, 上下偏差不会超过+-10.
在 tls_adc_set_pga 函数里测试几种不同参数组合, 输出 tls_reg_write32 (HR_SD_ADC_PGA_CTRL, val) ; 的 val 值也是对的, 和手册写的一直 0x08 要求一致
0000 1000 0011
0001 1001 0011
0001 0001 0011
0000 0000 0011

到底是哪里出问题了呢? 大侠们帮帮忙吧, 晕菜了

查看更多

关注者
0
被浏览
2. 6k
1 个回答
qqww
qqww 2023-02-02
毕业设计的学生

你对了

撰写答案

请登录后再发布答案, 点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览