完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
小弟最近在做一个项目,测麦克风输出的正弦波峰峰值。电路图如附件所示。
在通讯端口DCLK DOUT CS都接有上拉电阻至+5V。 现在存在的问题是CS和DCLK两个引脚都有按照datasheet的时序来配置, DOUT引脚却没有检测到输出的高低电平波形。 请高手帮忙看看问题出在哪里。部分代码如下: u16 AD7683_Dataread(void) { unsigned char i; unsigned int dataread; dataread=0x0000; GPIO_SetBits(GPIOB, GPIO_Pin_15); //CS=1 Delay_Us(100); GPIO_ResetBits(GPIOB, GPIO_Pin_15); //CS=0 for(i=0;i<5;i++) { GPIO_SetBits(GPIOB, GPIO_Pin_13); //DCLK=1 Delay_Us(100); GPIO_ResetBits(GPIOB, GPIO_Pin_13); //DCLK=0 Delay_Us(100); } for(i=0;i<16;i++) { GPIO_SetBits(GPIOB, GPIO_Pin_13); //DCLK=1 Delay_Us(100); GPIO_ResetBits(GPIOB, GPIO_Pin_13); //DCLK=0 采下降沿的数据 Delay_Us(100); if(!GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_14)) //read DOUT { dataread=dataread&0xfffe; } else { dataread=dataread|0x0001; } dataread<<=1; // Delay_Us(100); } GPIO_SetBits(GPIOB, GPIO_Pin_13); //DCLK=1 Delay_Us(100); //GPIO_ResetBits(GPIOB, GPIO_Pin_13); Delay_Us(100); GPIO_SetBits(GPIOB, GPIO_Pin_15); //CS=1 return (dataread); } |
|
相关推荐
1个回答
|
|
您好。
看过您的原理图,AD7683的参考建议您使用大一些的电容,2.2uF到10uF。 DOUT不需要上拉电阻。请您使用示波器抓取时序图,把时序图贴上来看一下。也请检查一下AGND和DGND之间是否会有压差 |
|
|
|
只有小组成员才能发言,加入小组>>
1007 浏览 2 评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1397 浏览 2 评论
ADP5092 SYS端口为2.09V,但是REG_OUT为0是什么原因?
1943 浏览 1 评论
ad7193差分输入ain1与ain2差是正值时,读到电压与实际值误差小,但为负值值,误差就变的很大
4276 浏览 2 评论
9068 浏览 1 评论
ADC3442采集,分析数据出现有规则毛刺,请问是哪方面的问题啊?
1562浏览 3评论
AD7190状态寄存器一直是0x80,连续转换模式下RDY不拉低
1700浏览 2评论
1009浏览 2评论
1684浏览 2评论
给ADUM4223 增加信号驱动15V电压就不正常, 波动很大会被烧是什么情况?
1398浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-29 10:28 , Processed in 0.739089 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号