[PIC®/AVR®/dsPIC®产品] AD转换值的计算

[复制链接]
1205|12
 楼主| chuandaoxy 发表于 2020-12-11 11:15 | 显示全部楼层 |阅读模式
现在AD的值已经可以传出来了,我的代码如下
    while(GO_DONE) continue;  // Wait conversion done
    iDelay=ADRESL;           // Get the 8 bit LSB result
    iDelay += (ADRESH << 8); // Get the 2 bit MSB result
     if(tf==1)
{tf=0;
   reslutad[0]=iDelay /256;
   reslutad[1]=iDelay %256;

AD管脚的电压是0.06V,AD转换过来的数值是FA80,这是如何换算过来的?如果抛弃高位址换算80
(128/1023)*5=0.6和上面测量电压对不上啊
  
 楼主| chuandaoxy 发表于 2020-12-11 11:50 | 显示全部楼层
问题是不是出现在这里
cd_byte((adc_result >> 8) & 0x03); //write upper byte
lcd_byte(adc_result & 0xFF); //write lower byte

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
lcczg 发表于 2020-12-11 15:31 | 显示全部楼层
AD配置说的不清楚,什么单片机? 几位ADC?左对齐 右对齐? 差分 单端?
 楼主| chuandaoxy 发表于 2020-12-11 15:42 | 显示全部楼层
cpu是16f690,单端输入,10位AD
我参考的这个链接https://pic-microcontroller.com/pic-analog-digital-converter-c-programming/
 楼主| chuandaoxy 发表于 2020-12-13 10:40 | 显示全部楼层
chuandaoxy 发表于 2020-12-11 15:42
cpu是16f690,单端输入,10位AD
我参考的这个链接https://pic-microcontroller.com/pic-analog-digital-con ...

配置错误,OK了
CoolSilicon 发表于 2020-12-14 10:00 | 显示全部楼层

哪里错了?左对齐 右对齐??
 楼主| chuandaoxy 发表于 2020-12-14 10:05 | 显示全部楼层
CoolSilicon 发表于 2020-12-14 10:00
哪里错了?左对齐 右对齐??

寄存器AIN配置有错
CoolSilicon 发表于 2020-12-14 10:19 | 显示全部楼层
磨砂 发表于 2021-1-11 21:17 | 显示全部楼层
接地得到的是什么值呢
晓伍 发表于 2021-1-11 21:19 | 显示全部楼层
应该使用前进行校准
八层楼 发表于 2021-1-11 21:22 | 显示全部楼层
哈哈 楼主在哪里配置错了呢
观海 发表于 2021-1-11 21:26 | 显示全部楼层
差的不少  好在已经找到问题了
guanjiaer 发表于 2021-1-11 21:28 | 显示全部楼层
楼主给一个代码的全貌啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

856

主题

1046

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部