Y_G_G 发表于 2024-1-15 12:44 谢谢,不是应答的问题,已经解决了,是接收数据前需要先拉低数据位,或者说先清0 |
lksbbs 发表于 2024-1-13 21:03 每读取完一个字节的数据,就要应答一次 读取完所有的数据,就要发送一个不应答信号和一个停止信号,不然数据容易乱 要严格按照时序图上的来操作 |
我是只读了第一个字节,后面就读不出了。。不知道什么原因,配置16位,18位,14位都是这样。。应答程序应该没问题, |
高手在民间![]() |
微兔程序 发表于 2020-9-24 11:33 支持的,官方手册是2.7-5.5V! |
微兔程序 发表于 2020-9-24 11:33 |
mcp3421.png (44.98 KB, 下载次数: 92)
哎,只会汇编,咋办? 板凳,瓜子,啤酒。 |
MCP3421不兼容3.3V呀,要把MCP3421电源换成3.3V |
代码就懒得看了,实话说MCP3421我正好做过,你首先确定你的I2C通了没有,上电有默认设置,你先读一个字节看对不对,读写地址别搞错了,D0 D1, |
Y_G_G 发表于 2019-12-14 11:06 好,那我先单独做试试,实在是非常感谢 |
Host 发表于 2019-12-13 15:46 其实这IC没有那么难操作的,就数据处理不太好处理,用C的话就不存在这个问题的 你可以先写一个专门验证的函数,功能也不要太多就,就写入和读取功能验证而已,只要能正常写入和读取,器件就会有应答信号,其它的再慢慢的修改 |
还有大佬赐教吗?小弟感激不尽 |
Y_G_G 发表于 2019-12-13 11:57 噢噢噢噢,麻烦了,非常感谢 |
每一批出厂的IC的IIC地址都是不一样,用别人的代码就不一定行,要看你的IC的丝印 |
Host 发表于 2019-12-13 10:45 那就不知道了,我是用汇编的,C语言是真心看不明白 |
Y_G_G 发表于 2019-12-13 08:19 我看了下我这个是默认丝印是000,那么问题应该不在这对吧? |
Y_G_G 发表于 2019-12-13 08:19 噢噢噢噢,十分谢谢,我以为器件出厂默认都是000 |
这个IC的IIC地址并不是固定的,是根据IC上丝印来决定的 每一批出厂的IC的IIC地址都是不一样的,所以,你用别人的代码就不一定行,要看你手头上IC的丝印来决定的 ![]() |
突然想起来这个初始化程序好像也是在51论坛里面看到的,他们也确实能用啊! |