打印

数据总是不对

[复制链接]
902|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wangzsa|  楼主 | 2023-3-31 23:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
读出数据总是不对,希望大神帮看看:uint ad124s021 ()
{ uint ValH,ValL;
   uint i,j;
   uint return_val=0;//返回值
   uint ad_channel;//ADC通道
   CS1 = 1;
   CS1 = 0; //使能线   
  for (j=0;j<4;j++)//循环读两次数据,取4次的值
  {  
     
     ad_channel = 0xc7;//通道1
      ValH = 0;     //数据高位
      ValL = 0;      //数据低位
      SCLK1 = 1;     //时钟线     
      for (i = 1; i < 17; i++)
      {   
     if(i<9)
     { ad_channel = ad_channel << 1;  //取高位
            DIN = CY;
     }
      SCLK1 = 1;
      SCLK1 = 0;
     SCLK1 = 1;
     if(i>5&&i < 9)
     {  
       ValH =(ValH<<1)|DOUT;
           }     
           if (i >=9)     
           {
      ValL =(ValL<<1)|DOUT;
           }         
      }  
    return_val+= ((ValH<<8)+ValL);   
     }
   CS1 = 1;
   return (return_val>>2);求平均数
}

使用特权

评论回复
沙发
zhenykun| | 2023-3-31 23:38 | 只看该作者

UINT是8位数据吧?

使用特权

评论回复
板凳
huangchui| | 2023-3-31 23:39 | 只看该作者
是啊,return_val就不止8位了吧?

使用特权

评论回复
地板
wenfen| | 2023-3-31 23:42 | 只看该作者

SCLK1 = 1;
      SCLK1 = 0;
     SCLK1 = 1;
时序不对吧,没有延时吗?

使用特权

评论回复
5
wuhany| | 2023-3-31 23:45 | 只看该作者
建议和芯片的规格书时序图对照下

使用特权

评论回复
6
tian111| | 2023-3-31 23:47 | 只看该作者
引脚问题

使用特权

评论回复
7
wangzsa|  楼主 | 2023-3-31 23:48 | 只看该作者
其实还是不大明白,我再琢磨琢磨吧,多谢了哈

使用特权

评论回复
8
小夏天的大西瓜| | 2023-7-26 18:50 | 只看该作者
看下芯片的规格书时序图

使用特权

评论回复
9
LOVEEVER| | 2023-7-26 19:23 | 只看该作者
不对的话建议确认一下整体程序过程

使用特权

评论回复
10
小小蚂蚁举千斤| | 2023-7-26 19:25 | 只看该作者
SCLK1 = 1;
SCLK1 = 0;
SCLK1 = 1;
建议使用延时进行整体程序编写

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

914

主题

9040

帖子

5

粉丝