模擬IIC?
發(fā)送設備地址+發(fā)送寄存器地址+發(fā)送設備地址+讀取數據1+讀取數據2
在讀取ACK 時, 1:SDA切換成輸入,2:SDA讀取電平,3:SDA切換成輸出。
讀取的操作。導致了我 發(fā)送寄存器地址、讀取數據1 這兩段代碼異常。
屏蔽了讀取電平的操作就沒什么問題。
搞不清楚是我在設置GPIO還是哪里有了問題。
我的IIC有上拉電阻。 我的初始化的時候 設置的端口為開漏輸出。
附件為完整代碼 。
模擬IIC?
發(fā)送設備地址+發(fā)送寄存器地址+發(fā)送設備地址+讀取數據1+讀取數據2
在讀取ACK 時, 1:SDA切換成輸入,2:SDA讀取電平,3:SDA切換成輸出。
讀取的操作。導致了我 發(fā)送寄存器地址、讀取數據1 這兩段代碼異常。
屏蔽了讀取電平的操作就沒什么問題。
搞不清楚是我在設置GPIO還是哪里有了問題。
我的IIC有上拉電阻。 我的初始化的時候 設置的端口為開漏輸出。
附件為完整代碼 。
您好,讀取SDA引腳電平不需要再重新配置成輸入模式,可直接讀取引腳狀態(tài),在開漏輸出模式下,直接讀取輸入寄存器會得到IO狀態(tài),如下圖手冊介紹。關于GPIO這部分具體介紹,可參考CH32V103應用手冊,下面鏈接為應用手冊下載鏈接:
http://www.findthetime.net/downloads/CH32xRM_PDF.html
下面鏈接為CH32V103模擬IIC 應用例程,可以參考一下:
https://bbs.21ic.com/icview-3060796-1-1.html
后續(xù)若有問題,可通過郵箱(lzs@wch.cn)和我溝通。?