搜索
bottom↓
回复: 9

求助,AD7656并行读取数据完全不对,跳动

[复制链接]

出0入0汤圆

发表于 2017-1-16 09:05:33 | 显示全部楼层 |阅读模式
本帖最后由 dengfeng5357 于 2017-1-16 10:28 编辑

各位前辈和大师们好,我用AD7656并行方式,现在读取回来的值,很乱,跳的厉害,而且分辨不出哪个通道,若有相关代码参考最好,谢谢各位了。

本帖子中包含更多资源

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

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入0汤圆

发表于 2017-1-16 09:28:30 | 显示全部楼层
串行SPI的啊

出0入0汤圆

发表于 2017-1-16 09:29:37 | 显示全部楼层

看错了,也可以是并行的

出0入22汤圆

发表于 2017-1-16 09:34:53 | 显示全部楼层
这个项目 貌似以前做过 。
  for(times=0;times<F6Times;times++)//连续采集10次
          {
           delay_ns(ShutTime);
           GPIOC->BSRR =GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2; // CONV A B C =1;
         while(GPIO_ReadInputDataBit(GPIOD,AD_BUSY)){;}
          delay_ns(1);
         GPIO_ResetBits(GPIOC,AD_CS);//  cs=0
         for(RDI=0;RDI<6;)
               {GPIO_ResetBits(GPIOC,AD_RD);//  rd=0
                delay_ns(1);
                AD_valueTemp[RDI][times]=GPIO_ReadInputData(GPIOB);
                 GPIO_SetBits(GPIOC,AD_RD); // rd=1;
                 RDI++;
                 }
         GPIO_SetBits(GPIOC,AD_CS);  // cs=1
         GPIOC->BRR =GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2;// CONV A B C=0;
         
          }
   SenserAddress=0x00;               
   UpdateSenserAddress()

出0入0汤圆

 楼主| 发表于 2017-1-16 10:19:42 | 显示全部楼层
lixin91985 发表于 2017-1-16 09:34
这个项目 貌似以前做过 。
  for(times=0;timesBSRR =GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2; // CONV A B C = ...

谢谢您的回答,我现在读取回来的数好乱,感觉都不是真实的,每次采集回来的都不一样

本帖子中包含更多资源

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

x

出0入22汤圆

发表于 2017-1-16 12:07:15 | 显示全部楼层
先查硬件,感觉 你这个是硬件配置错误了。
然后把软件上的时序降低一点。

出0入0汤圆

 楼主| 发表于 2017-1-16 12:21:48 | 显示全部楼层
lixin91985 发表于 2017-1-16 12:07
先查硬件,感觉 你这个是硬件配置错误了。
然后把软件上的时序降低一点。 ...

您是指的IO口配置吗?
我用的是LPC1788下的"gpio_17xx_40xx.h"
#define D_AD_RD_3_ON()                 Chip_GPIO_WritePortBit(LPC_GPIO, 0, 31, true)//输出
#define D_AD_BUSY_3()                 Chip_GPIO_GetPinState(LPC_GPIO, 0, 28)//输入
Chip_GPIO_SetPortDIR(LPC_GPIO, 0, 0x0000ffff, false);        //数据P0~P15(这样有问题么?)
感觉上面读数据端口,好象哪感觉不对,望指教,感谢感谢。

出0入0汤圆

 楼主| 发表于 2017-1-16 19:43:55 | 显示全部楼层
搞定了,过来结贴,原因是因为输入端口没有至一个状态,接地或接3V就正常了,不过还没有明白,接地的时候,为什么采集到的值为65520(后面两位数有点跳动)?

出0入31汤圆

发表于 2017-1-17 07:23:35 来自手机 | 显示全部楼层
dengfeng5357 发表于 2017-1-16 19:43
搞定了,过来结贴,原因是因为输入端口没有至一个状态,接地或接3V就正常了,不过还没有明白,接地的时候, ...

负数,差不多吧

出0入0汤圆

发表于 2017-2-15 15:10:27 | 显示全部楼层
刚好看到一些关于AD7656的问题以及ADI工程师的解答,可以参考参考https://ezchina.analog.com/search.jspa?q=AD7656
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-26 02:51

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表