完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛
|
|
相关推荐
7个回答
|
|
|
手册的13 14页开始,对这个每隔8个bit就会出现的ACK信号做了较为详细的描述。第一个ACK就是你说的强制拉低的信号,可以作为单片机判断是否与芯片联系上的信号。如果不想用这个功能,我个人认为直接忽略它即可,但要注意这个需要占用一个bit的时钟。
|
|
|
|
|
|
你是用的是I/O口模拟的I2C吗?把程序上传看一下
|
|
|
|
|
|
你的 init_DAC(void) 中起始条件将SDA和SCL均拉低,这个好像不太对,当总线稳定后主机将SDA拉低但同时保持SCL仍然是高电平表明发送数据开始
|
|
|
|
|
|
芯片手册第16页是这么写的:
I2C protocol starts when the bus is idle, that is, when SDA and SCL lines are stable high. The master then pulls the SDA line low while SCL is still high indicating that serial data transfer has started. This is called a start condition, and can only be asserted by the master. 然后在初始化子函数里延迟一段时间后再将SCL拉低备用。 |
|
|
|
|
|
这样是可以的,一次转换完成后若不进行下次转化且不复位则其输出会保持原来的转换值
|
|
|
|
|
|
DAC8571的I2C通信问题可能是由于以下几个原因导致的:
1. 硬件连接问题:请检查DAC8571与单片机之间的硬件连接是否正确,包括SDA和SCL线是否正确连接,以及是否有适当的上拉电阻。 2. 时序问题:I2C通信对时序要求较高,确保单片机的I2C时序与DAC8571的时序相匹配。你可以尝试调整单片机的I2C时钟频率,以适应DAC8571的时序要求。 3. 单片机I2C驱动问题:检查单片机的I2C驱动代码是否正确实现,特别是SDA和SCL的控制部分。确保在发送数据时,SDA和SCL的控制是正确的。 4. DAC8571的地址问题:确保你发送的DAC8571地址(0x98)是正确的。DAC8571的I2C地址可能因芯片型号和配置而异,请参阅DAC8571的数据手册以确认正确的地址。 5. DAC8571的配置问题:检查DAC8571是否已正确配置,包括控制寄存器和数据寄存器。确保DAC8571处于正确的工作模式,以便接收和处理I2C通信。 6. 干扰问题:I2C通信可能受到电磁干扰的影响。尝试使用屏蔽线或降低I2C通信速度,以减少干扰。 综上所述,要解决DAC8571的I2C通信问题,需要从硬件连接、时序、单片机I2C驱动、DAC8571地址和配置等方面进行排查和调整。希望这些建议能帮助你解决问题。 |
|
|
|
|
|
我驱动dac8571也存在问题,可以看看楼主的代码吗?
|
|
|
|
|
只有小组成员才能发言,加入小组>>
549 浏览 0 评论
1613 浏览 0 评论
2047 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1513 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1337 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1756浏览 29评论
2781浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1723浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1634浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1645浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 22:58 , Processed in 0.897668 second(s), Total 56, Slave 49 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
303