完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
最近在用STM32F051调试ADS1247这款AD芯片,花了一段时间把单片机和AD芯片的SPI通讯搞定,现在的现象是,采集的值与输入值差一个符号。
芯片数字电源DVDD为3.3V,模拟电源AVDD为5V,AIN0通过一个电容接地,AIN1为信号输入口,串接一个电阻。在寄存器里配置AIN0为负输入,AIN1为正输入,在AIN0端口输出一个偏置电压【(AVDD + AVSS)/2】,AIN1输入正弦波,采样结果也是正弦波,但是正负与输入信号相反。即输入信号在2.5V以上的时候,采集到的值为负值,反之为正值。 将AIN0与AIN1配置反过来,即AIN0为正输入,AIN1为负输入,其他情形不变,采集到的值也是一样。 麻烦各位大神帮忙指点下。 补充内容 (2016-7-8 09:18): 配置程序如下: /******************************************************************************* * ³ÌÐòÃû³Æ : ADS1247_Init() * ³ÌÐò¹¦ÄÜ : ADS1247оƬ³õʼ»¯ * ÊäÈë²ÎÊý : ÎÞ * ·µ »Ø Öµ : ÎÞ *******************************************************************************/ void fnADS1247_Init(void) { SPI_CS_LOW(); //使能引脚置低 SPI_ADS1247_WriteREG(REG_MUX0,0x08); SPI_ADS1247_WriteREG(REG_VBIAS,0x01); SPI_ADS1247_WriteREG(REG_MUX1,0x30); SPI_ADS1247_WriteREG(REG_SYS0,0x09); SPI_ADS1247_WriteREG(REG_IDAC0,0x00); SPI_SendByte(0x62); SPI_SendByte(Dummy_Byte); SPI_CS_HIGH(); //使能引脚置高 } 补充内容 (2016-7-11 15:22): 已找到原因,首个寄存器配置时因延时不够,没有配置成功,所以造成输入信号与计算出的数值符号不对,且更改正负输入配置也无效。 谢谢大家! |
|
相关推荐
7个回答
|
|
自己顶一下!没人用过这款芯片么?
|
|
|
|
学习中。。。。。。。。。。
|
|
|
|
芯片引脚,不对啦
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
LDO线性稳压器产生了模拟电源与数字电源,模拟电源去给运放供电,他们的地是不是同一个地?
1319 浏览 2 评论
1206 浏览 1 评论
1023 浏览 0 评论
2306 浏览 1 评论
ad把一个15mm*1.5mm的灯放到直径15mm的圆形pcb板上,可以实现吗
2063 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-20 08:30 , Processed in 0.896678 second(s), Total 98, Slave 78 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号