0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

通過GPIO模擬IIC通信對接SHT20溫濕度計

冬至配餃子 ? 來源:兆易創(chuàng)新GD32 MCU ? 作者:飛揚的青春 ? 2022-09-23 17:40 ? 次閱讀

因為是模擬的所以不必拘束IO管腳,我是選擇了PB6,PB7管腳,這兩個管腳旁邊也有3.3V正好可以供電。

之后看下代碼吧。

`void IIC_Init(void)
{

rcu_periph_clock_enable(RCU_GPIOB);

/* configure led GPIO port */
gpio_mode_set(GPIOB, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_6|GPIO_PIN_7);
gpio_output_options_set(GPIOB, GPIO_OTYPE_OD, GPIO_OSPEED_50MHZ, GPIO_PIN_6|GPIO_PIN_7);

IIC_SpeedCtl(5);

SDA_H;                                                    //拉高SDA線,處于空閑狀態(tài)
SCL_H;                                                    //拉高SCL線,處于空閑狀態(tài)

}`

這里是IIC接口初始化,我們初始化成GPIO_OTYPE_OD,開漏輸出,這樣不必在意IO口的方向,方便讀取IO狀態(tài)。

pYYBAGMtflGAW1pRAACORdVVMTE683.png

之后獲取溫濕度值都在SHT20_GetValue函數(shù)中。主要就是讀取兩個寄存器里溫濕度值。

然后我們可以仿真看下效果。

poYBAGMtfm2ACbNNAAF7DdDW2vk730.png




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5253

    瀏覽量

    119212
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1175

    瀏覽量

    51515
  • IIC通信
    +關(guān)注

    關(guān)注

    0

    文章

    18

    瀏覽量

    2992
收藏 人收藏

    評論

    相關(guān)推薦

    【OneNET麒麟座試用體驗】7.溫濕度傳感器SHT20的使用

    `SHT20是一種支持IIC協(xié)議的數(shù)字溫濕度傳感器。 能測量的溫度范圍是-20~100度,濕度范圍是5%~90% 既然它是一個
    發(fā)表于 04-01 12:51

    【OneNET麒麟座試用體驗】3.OneNET之HAL i2c的使用(SHT20溫濕度測量)

    與原理這次主要使用STM32F103的HAL 庫i2c來進行外設(shè)的操作,EEPROM AT24C02,溫濕度傳感器SHT20。AT24C02很熟悉了,256 B 的存儲空間。就不過多說了。SHT20
    發(fā)表于 04-19 18:37

    藍牙溫濕度計常用的場景

    需兩步便可完成連接,非常方便。將溫濕度計部署在應(yīng)用環(huán)境中后,可24小時不間斷監(jiān)測環(huán)境溫濕度,通過藍牙網(wǎng)關(guān)將數(shù)據(jù)上傳到云端,在監(jiān)控后臺或手機App上以可視化圖表展示溫濕度日線、周線、月線
    發(fā)表于 01-05 16:46

    ESP32-S2如何驅(qū)動SHT20獲取溫濕度數(shù)據(jù)?

    ESP32-S2如何驅(qū)動SHT20獲取溫濕度數(shù)據(jù)?
    發(fā)表于 11-08 08:07

    如何利用軟件模擬I2C讀寫SHT20溫濕度傳感器

    下面利用軟件模擬I2C讀寫SHT20溫濕度傳感器。一、SHT20通訊定義(1)設(shè)備I2C地址:0x40;(2)命令:測量溫度和濕度都有兩種模
    發(fā)表于 11-24 07:12

    SHT30溫濕度模塊怎么使用

    的STH30一般是用IIC(I2C)通信使用的,所以我們打開一個IIC通道,IIC默認配置就可以了。4、因為我們需要看見她的效果是什么,我開了一個串口,所有數(shù)據(jù)
    發(fā)表于 02-15 06:28

    【合宙Air105開發(fā)板試用體驗】SHT20溫濕度獲取

    今天繼續(xù)使用歷程完成一下SHT20傳感器的值獲取。工程我們還是從實例工程中獲取下。然后進行編譯下載??梢院附雍门裴樂奖憬泳€。這里讀取答應(yīng)出了寄存器原始值,以及溫濕度轉(zhuǎn)換值。這里的計算公式感覺簡化了實際手冊中是這樣的。本次通過手冊
    發(fā)表于 06-24 09:39

    SHT20溫濕度傳感器數(shù)據(jù)讀取異常如何解決?

    使用SHT20溫濕度傳感器,用模擬IIC通信,不能正確的讀取數(shù)據(jù)?,F(xiàn)象有3個 第一,讀取溫度的低8位始終是0xFF。 第二,讀取溫度的高8位
    發(fā)表于 10-19 06:32

    如何自己設(shè)計一款溫濕度計

    家好,今天筆者要跟大家分享一款“溫濕度計”的制作,一說到溫濕度檢測,或許大家第一個想到的就是DHT11了吧,單總線接口,操作方便,或者就是SHT2X系列的,IIC總線接口,編程也是比較
    的頭像 發(fā)表于 11-23 12:02 ?1w次閱讀
    如何自己設(shè)計一款<b class='flag-5'>溫濕度計</b>

    溫濕度計校準(zhǔn)_溫濕度計選購指南

    本文主要闡述了溫濕度計校準(zhǔn)的方法及選購指南。
    發(fā)表于 02-28 11:13 ?2769次閱讀

    溫濕度計怎么使用_溫濕度計怎么調(diào)

    本文首先闡述了溫濕度計的使用方法,其次介紹了溫濕度計的調(diào)節(jié),最后介紹了家用指針式溫濕度計調(diào)校方法。
    發(fā)表于 02-28 11:16 ?10.2w次閱讀

    HP6心率血壓、SHT20溫濕度、MPU6050傳感器使用

    多個傳感器使用HP6心率血壓IIC復(fù)習(xí)IIC簡介:IIC數(shù)據(jù)接口IIC通訊速度器件地址軟件模擬起始信號結(jié)束信號應(yīng)答信號讀字節(jié)/寫字節(jié)
    發(fā)表于 12-06 15:51 ?26次下載
    HP6心率血壓、<b class='flag-5'>SHT20</b><b class='flag-5'>溫濕度</b>、MPU6050傳感器使用

    溫濕度計(物聯(lián)網(wǎng))開源

    電子發(fā)燒友網(wǎng)站提供《溫濕度計(物聯(lián)網(wǎng))開源.zip》資料免費下載
    發(fā)表于 11-08 09:37 ?2次下載
    <b class='flag-5'>溫濕度計</b>(物聯(lián)網(wǎng))開源

    CW32飯盒派開發(fā)板 日歷溫濕度計

    CW32創(chuàng)建日歷+溫濕度計
    的頭像 發(fā)表于 05-27 14:07 ?4340次閱讀
    CW32飯盒派開發(fā)板 日歷<b class='flag-5'>溫濕度計</b>

    sht20校驗對讀出的溫度偏高

    溫度讀數(shù)偏高的原因,并提供解決方案。 第一部分:SHT20傳感器原理及校驗功能介紹 SHT20是一種基于CMOSens?技術(shù)的數(shù)字式溫濕度傳感器,具有高準(zhǔn)確性和可靠性。其原理是通過測量
    的頭像 發(fā)表于 01-04 11:01 ?1065次閱讀