久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 移植這個程序時,除了修改I2C.h以外,還需要修改什么? [打印本頁]

作者: bjdhjy888    時間: 2022-8-8 08:47
標題: 移植這個程序時,除了修改I2C.h以外,還需要修改什么?
各位前輩好。
http://www.zg4o1577.cn/bbs/dpj-215528-1.html我下載了上面這個程序,運行后,板子溫濕度數據一切正常,引腳是PB6, PB7
I2C.h文件:
#define SDA_GPIO    GPIO_Pin_7
#define SCL_GPIO    GPIO_Pin_6


我的新項目新增OLED顯示屏占用了引腳PB6, PB7,所以HDC1080的引腳我連接到了STM32的PB10, PB11
所以我修改了I2C.h文件的這里:
#define SDA_GPIO    GPIO_Pin_11
#define SCL_GPIO    GPIO_Pin_10
軟件其他地方我都沒有修改。
然后板子溫濕度數據在串口助手里就異常了,數據總是固定的:125度,100%濕度。


請問是軟件調試問題吧?那么還需要修改軟件哪里?除了I2C.h   
(這是我第一次移植程序,新手)

這是我下載的別人的程序(HDC1080.rar 未修改過):

這是我修改后的程序(HDC1080rev.rar 我修改過引腳):

這是現在的原理圖:
這是現在輸出的錯誤數據:

謝謝!

HDC1080rev.7z

186.84 KB, 下載次數: 0

FW_HDC1080.7z

186.75 KB, 下載次數: 0


作者: hhdsdy    時間: 2022-8-8 11:24
1:確認你更改后才保存并編譯了嗎?
2:查看其它外圍是否使用了STM32的PB10、PB11,只要有1個引腳被占用,HDC1080的數據就無法被正確讀取。
作者: Hephaestus    時間: 2022-8-8 11:42
看了下,是純軟件模擬,沒有用到EXTI、IIC等peripherals,應該沒問題啊。用邏輯分析儀之類的工具檢查下波形吧。
作者: Y_G_G    時間: 2022-8-8 13:15
OLED和HDC1080是可以用一級IIC的,不需要兩個時鐘數據線的呀
而且,你要用兩組的話,你就得兩個IIC驅動了
把SCL和SDA同時連接OLED和HDC1080就可以了
我就是這樣用的,OLED從機地址是0x78,HDC1080的從機地址是0x80
作者: bjdhjy888    時間: 2022-8-8 14:06
Y_G_G 發表于 2022-8-8 13:15
OLED和HDC1080是可以用一級IIC的,不需要兩個時鐘數據線的呀
而且,你要用兩組的話,你就得兩個IIC驅動了
把 ...

“OLED從機地址是0x78,HDC1080的從機地址是0x80”

請問具體修改代碼哪里呢?我沒有設置過從機地址。我怕改錯了啊
作者: haiyang201    時間: 2022-8-8 14:06
PB10, PB11是不是I2C接口
作者: bjdhjy888    時間: 2022-8-8 14:07
Hephaestus 發表于 2022-8-8 11:42
看了下,是純軟件模擬,沒有用到EXTI、IIC等peripherals,應該沒問題啊。用邏輯分析儀之類的工具檢查下波形 ...

我用邏輯分析和示波器都測量過HDC1080的引腳。都是有波形的。
作者: bjdhjy888    時間: 2022-8-8 14:07
hhdsdy 發表于 2022-8-8 11:24
1:確認你更改后才保存并編譯了嗎?
2:查看其它外圍是否使用了STM32的PB10、PB11,只要有1個引腳被占用, ...

是的,保存,編譯,JTAG下載到STM32。
PB10, PB11連接HDC1080,沒有連接其他
作者: zilihangjian    時間: 2022-8-8 16:21
你看下,PB10, PB11 有沒有被占用。
作者: zilihangjian    時間: 2022-8-8 16:30
查看PB10、PB11是否被占用,用示波器抓一下SCL波形是否正常,SDA 是否有數據波形。
作者: Y_G_G    時間: 2022-8-9 00:04
bjdhjy888 發表于 2022-8-8 14:06
“OLED從機地址是0x78,HDC1080的從機地址是0x80”

請問具體修改代碼哪里呢?我沒有設置過從機地址。我 ...

沒有說要改呀
只是告訴你而已了
現在都搞不明白你這問題
1,你下載的原本的IIC引腳是PB10, PB11,原來帖子的就是這兩個IO
2,你上傳的工程引腳是PB6, PB7,那這個是你改過的還是什么?
3,你上傳的工程是可以正確顯示的溫度的還是不能正確顯示溫度的?
"我的新項目新增OLED顯示屏占用了引腳PB6, PB7,所以HDC1080的引腳我連接到了STM32的PB10, PB11"
你這是什么意思?意思是不是說OLED你還要重新寫一個IIC,C文件?
你以前的那個可能正確顯示的SCL和SDA,就是這兩根線,可以同時控制OLED和HDC1080,你明白我意思沒有?
不要什么SDA_HDC,SDA_SSD1309了,就要一個就行了SDA
OLED的1腳,HDC1080的1腳,單片機的PB7,這三個接一塊,再不明白就沒法了
作者: bjdhjy888    時間: 2022-8-9 05:52
Y_G_G 發表于 2022-8-9 00:04
沒有說要改呀
只是告訴你而已了
現在都搞不明白你這問題

謝謝。我理解。我最早就是把2個設備連接到同一對引腳上。如圖:


我的問題是:“OLED從機地址是0x78,HDC1080的從機地址是0x80”這句話,請問代碼里怎么修改呢?軟件怎么知道“OLED從機地址是0x78,HDC1080的從機地址是0x80”呢?這個我還是不明白。
作者: bjdhjy888    時間: 2022-8-9 05:55
zilihangjian 發表于 2022-8-8 16:21
你看下,PB10, PB11 有沒有被占用。

我在工程里搜了,沒有其他地方有GPIO_Pin_10,GPIO_Pin_11的代碼。所以沒有被占用把?

波形是有的。傳感器工作正常,F在就是代碼讀不到傳感器的數據,好像就是因為引腳變化的原因導致的。
作者: bjdhjy888    時間: 2022-8-17 12:38
石沉大海了屬于是 木有下文了




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 激情一区 | 亚洲天天干 | 亚洲精品一区二区三区蜜桃久 | 91精品入口蜜桃 | 国产一区| 国产一级在线观看 | 国产精品自拍av | 久久国产亚洲 | 51ⅴ精品国产91久久久久久 | 99久久婷婷国产精品综合 | 日韩精品一区二区三区老鸭窝 | 黄色国产大片 | 国产精品3区 | a级黄色网| av网站在线免费观看 | 中文福利视频 | 久久综合狠狠综合久久综合88 | 亚州精品天堂中文字幕 | 欧美日韩一区在线观看 | h在线免费观看 | 精品美女在线观看视频在线观看 | 欧美综合一区 | 欧美成人hd| 91精品导航 | 色综合久久久 | 日韩爱爱网 | 超碰在线国产 | 日韩午夜在线播放 | 九色 在线 | 精品中文字幕在线观看 | 蜜臀久久| 久操福利| 偷拍自拍在线观看 | 黑人巨大精品欧美一区二区一视频 | 欧美日产国产成人免费图片 | 久久午夜国产精品www忘忧草 | 成人精品视频99在线观看免费 | 日韩免费成人av | 狠狠ri| 涩涩导航| 日日骚av |