OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 17853|回复: 6

ad7656采样问题

[复制链接]

6

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2013-4-29
在线时间
0 小时
发表于 2013-8-11 14:50:45 | 显示全部楼层 |阅读模式

原子哥,你好!在调试用stm32控制ad7656进行采样时,遇到了麻烦。我是用直流电压进行测试,ad7656输出的采样结果大部分正确,但是有时候完全不符合实际值(采样1000个,大约有10个出错),恳请原子哥解惑!多谢啦!
附上程序:
1、ad7656初始化程序
void AD_init(void)
{

   CONVST_High;         //ad7656初始化           
   
   Reset_High;            
   delay_us(1);

   Reset_Low;
   delay_us(1);

   CS_High;
   SCK_Low; 
   CONVST_Low;   
}

2、ad7656采样程序
void read_ad7656(void)
{
    unsigned char i;
    CONVST_High;                                                               //需要60ns的延时
    for(i=0;i<20;i++);

 
 while(GPIO_ReadInputDataBit(GPIOD,GPIO_Pin_2)==1);       //检测busy管脚的电平

   
 
 for (AD_count=0;AD_count<6;AD_count++)     
      {

    SPI_Cmd(SPI2, ENABLE);
    for(i=0;i<10;i++);
    CS_Low;                                        
    SPI_I2S_ClearFlag(SPI2,SPI_I2S_FLAG_RXNE);  
    
                     
    while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_RXNE) == RESET);      
    AD_SPI_rx_buff[AD_count]=SPI_I2S_ReceiveData(SPI2);
    
    SPI_Cmd(SPI2,DISABLE); 
    CS_High;
    for(i=0;i<40;i++);  
                  
   } 
  
     SCK_Low; 
     Reset_High;      //100ns的复位脉冲
     for(i=0;i<20;i++);
     Reset_Low;
     for(i=0;i<20;i++);
     CONVST_Low;
     (i=0;i<20;i++);  
 
}

生命只在须臾,好好做人、做事!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2013-8-11 20:06:31 | 显示全部楼层
没搞过这个哦,你既然能读数据了,应该不是读数据的问题了.看看是不是可能外部采集的电压有问题呢?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

6

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2013-4-29
在线时间
0 小时
 楼主| 发表于 2013-8-13 20:09:40 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
好的,谢谢原子哥!
生命只在须臾,好好做人、做事!
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
23
金钱
23
注册时间
2014-12-9
在线时间
0 小时
发表于 2014-12-9 11:19:21 | 显示全部楼层
我现在也准备用这个芯片~  楼主可以发个STM32程序给我参考下么? 947149824@qq.com   感谢啦~
study hard! day day up!
回复 支持 反对

使用道具 举报

7

主题

105

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1027
金钱
1027
注册时间
2016-1-28
在线时间
135 小时
发表于 2016-10-20 10:18:57 | 显示全部楼层
本帖最后由 qjp1988113 于 2016-10-20 14:27 编辑

求大神,能把程序发我参考下么?邮箱:657888527@qq.com
回复 支持 反对

使用道具 举报

2

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
90
金钱
90
注册时间
2020-7-21
在线时间
13 小时
发表于 2021-6-17 20:59:43 | 显示全部楼层
大佬,问题解决了吗?我也遇到相似的问题,采集一次后,数据和实际相差挺大的,多采集几次后数据差距不大,但是偶尔有几个数据差距挺大的
回复 支持 反对

使用道具 举报

6

主题

44

帖子

0

精华

高级会员

Rank: 4

积分
835
金钱
835
注册时间
2021-6-20
在线时间
89 小时
发表于 2021-6-23 09:28:25 | 显示全部楼层
我之前用7699的时候 遇到过类似的问题,我当时是采样间隔 ,转换延时设置的不对。你可以把转换的延时加大一下再试试
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-23 00:04

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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