|
發(fā)布時間: 2019-12-12 17:21
正文摘要:簡單描述一下我遇到的問題:了解到MCP3421是一塊精度很高的AD,而且利用I2C通信。所以想用32做一個簡單表頭。 搭建AD部分電路,我用的是官方應(yīng)用電路: (這里VDD用的是5V電源,stm32用的是3.3V,電源是分開 ... |
Y_G_G 發(fā)表于 2024-1-15 12:44 謝謝,不是應(yīng)答的問題,已經(jīng)解決了,是接收數(shù)據(jù)前需要先拉低數(shù)據(jù)位,或者說先清0 |
lksbbs 發(fā)表于 2024-1-13 21:03 每讀取完一個字節(jié)的數(shù)據(jù),就要應(yīng)答一次 讀取完所有的數(shù)據(jù),就要發(fā)送一個不應(yīng)答信號和一個停止信號,不然數(shù)據(jù)容易亂 要嚴格按照時序圖上的來操作 |
| 我是只讀了第一個字節(jié),后面就讀不出了。。不知道什么原因,配置16位,18位,14位都是這樣。。應(yīng)答程序應(yīng)該沒問題, |
高手在民間![]() |
微兔程序 發(fā)表于 2020-9-24 11:33 支持的,官方手冊是2.7-5.5V! |
微兔程序 發(fā)表于 2020-9-24 11:33 |
mcp3421.png (44.98 KB, 下載次數(shù): 92)
|
哎,只會匯編,咋辦? 板凳,瓜子,啤酒。 |
| MCP3421不兼容3.3V呀,要把MCP3421電源換成3.3V |
| 代碼就懶得看了,實話說MCP3421我正好做過,你首先確定你的I2C通了沒有,上電有默認設(shè)置,你先讀一個字節(jié)看對不對,讀寫地址別搞錯了,D0 D1, |
Y_G_G 發(fā)表于 2019-12-14 11:06 好,那我先單獨做試試,實在是非常感謝 |
Host 發(fā)表于 2019-12-13 15:46 其實這IC沒有那么難操作的,就數(shù)據(jù)處理不太好處理,用C的話就不存在這個問題的 你可以先寫一個專門驗證的函數(shù),功能也不要太多就,就寫入和讀取功能驗證而已,只要能正常寫入和讀取,器件就會有應(yīng)答信號,其它的再慢慢的修改 |
| 還有大佬賜教嗎?小弟感激不盡 |
Y_G_G 發(fā)表于 2019-12-13 11:57 噢噢噢噢,麻煩了,非常感謝 |
| 每一批出廠的IC的IIC地址都是不一樣,用別人的代碼就不一定行,要看你的IC的絲印 |
Host 發(fā)表于 2019-12-13 10:45 那就不知道了,我是用匯編的,C語言是真心看不明白 |
Y_G_G 發(fā)表于 2019-12-13 08:19 我看了下我這個是默認絲印是000,那么問題應(yīng)該不在這對吧? |
Y_G_G 發(fā)表于 2019-12-13 08:19 噢噢噢噢,十分謝謝,我以為器件出廠默認都是000 |
|
這個IC的IIC地址并不是固定的,是根據(jù)IC上絲印來決定的 每一批出廠的IC的IIC地址都是不一樣的,所以,你用別人的代碼就不一定行,要看你手頭上IC的絲印來決定的
|
| 突然想起來這個初始化程序好像也是在51論壇里面看到的,他們也確實能用啊! |
Powered by 單片機教程網(wǎng)