日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

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

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

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

國民技術(shù)N32WB031驅(qū)動HS3003采集溫濕度

華仔的編程隨筆 ? 來源:華仔的編程隨筆 ? 作者:華仔的編程隨筆 ? 2023-05-02 17:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

目的

驅(qū)動hs3003溫濕度計(jì)

步驟

  1. 在原來墨水屏的工程基礎(chǔ)上添加HS3003的驅(qū)動。
  2. 新建hs3003.c/hs3003.h,并打hs3003.c加入工程。

fd8cc1a28c5d67ef66e037e3c21171e759f96974db736e7e671030a56d06ba5c.png

  1. 我償試用硬件驅(qū)動i2c,但scl即使使用了上位電阻,也不起振,用邏輯分析儀檢測如下圖:

3b7bd1190103d79d558d5bcbf321b5cea8bc24bce67a64d53cdbaaa3fd3008b5.png

  1. 周轉(zhuǎn)了半天,還得改回來用軟件i2c來驅(qū)動。hs3003.c驅(qū)動程序如下:
#include "hs3003.h"
#include "software_i2c.h"
#include "log.h"

#define I2CT_FLAG_TIMEOUT ((uint32_t)0x1000)
#define I2CT_LONG_TIMEOUT ((uint32_t)(20 * I2CT_FLAG_TIMEOUT))

#define SI2C_SDA_GPIOx 	GPIOB
#define SI2C_SCL_GPIOx 	GPIOB
#define SI2C_SDA_Pin 	GPIO_PIN_8
#define SI2C_SCL_Pin    GPIO_PIN_9

static SI2C_HANDLE SI2C_handle;

void i2c_master_init(){
log_info("\\n this is a software i2c master demo\\r\\n");
if(SI2C_Init(&SI2C_handle,SI2C_SDA_GPIOx, SI2C_SCL_GPIOx, SI2C_SDA_Pin, SI2C_SCL_Pin, 5) == false)
{
log_info("software i2c init fail \\r\\n");
while(1);
}
}

uint32_t Humiture_HS3003_ReadData_Raw(void )
{
uint8_t rx_buf[4] = {0};
uint16_t humi, temp;
float    tmp_f   = 0.0;
float humi_f,temp_f;
SI2C_MasterWrite(&SI2C_handle,I2C_SLAVE_ADDR, NULL, 0);
//8bit->1.2ms
//10bit->2.72ms
//12bit->9.10ms
//14bit->33.90ms
Delay_ms(40);
__retry:		
SI2C_MasterRead(&SI2C_handle, I2C_SLAVE_ADDR, rx_buf, 4);

//		log_info("%x,%x,%x,%x\\n", rx_buf[0], rx_buf[1], rx_buf[2], rx_buf[3]);
//    log_info("state:%x\\n", rx_buf[0] & RM_HS300X_MASK_STATUS_0XC0);
if ((rx_buf[0] & RM_HS300X_MASK_STATUS_0XC0) != RM_HS300X_DATA_STATUS_VALID)
{
Delay_ms(100);
goto __retry;
}
humi = (rx_buf[0] & RM_HS300X_MASK_HUMIDITY_UPPER_0X3F) << 8 | rx_buf[1];
temp = (rx_buf[2] << 8 | (rx_buf[3] & RM_HS300X_MASK_TEMPERATURE_LOWER_0XFC)) >> 2;

humi_f = (float)humi;

humi_f = (humi_f * RM_HS300X_CALC_HUMD_VALUE_100) / RM_HS300X_CALC_STATIC_VALUE;

temp_f = (float)temp;
temp_f = ((temp_f * RM_HS300X_CALC_TEMP_C_VALUE_165) / RM_HS300X_CALC_STATIC_VALUE) - RM_HS300X_CALC_TEMP_C_VALUE_40;

log_info("Temp:%d.%d   ",(int)temp_f,(int)(temp_f*100)%100);
log_info("HUMI:%d.%d\\r\\n",(int)humi_f,(int)(humi_f*100)%100);

return 1;

}

bool Humiture_HS3003_init(void)
{
i2c_master_init();

}
  1. hs3003.h:
#ifndef __HS3003_H__
#define __HS3003_H__

#include "n32wb03x.h"

#define I2C_MASTER_ADDR   0x30
#define I2C_SLAVE_ADDR        0x44<<1
#define HS300X_HUMD_MULTY           0.00006163516
#define HS300X_TEMP_MULTY           0.00006163516

/* Definitions of Mask Data for A/D data */
#define RM_HS300X_MASK_HUMIDITY_UPPER_0X3F       (0x3F)
#define RM_HS300X_MASK_TEMPERATURE_LOWER_0XFC    (0xFC)
#define RM_HS300X_MASK_STATUS_0XC0               (0xC0)

/* Definitions for Status Bits of A/D Data */
#define RM_HS300X_DATA_STATUS_VALID              (0x00) // Status-bit: Valid data

/* Definitions for Calculation */
#define RM_HS300X_CALC_STATIC_VALUE              (16383.0F)
#define RM_HS300X_CALC_HUMD_VALUE_100            (100.0F)
#define RM_HS300X_CALC_TEMP_C_VALUE_165          (165.0F)
#define RM_HS300X_CALC_TEMP_C_VALUE_40           (40.0F)
#define RM_HS300X_CALC_DECIMAL_VALUE_100         (100.0F)

bool Humiture_HS3003_init(void);

uint32_t Humiture_HS3003_ReadData_Raw(void );

#endif

7、在主程序中調(diào)用一下:

#include "main.h"
#include "led.h"
#include "key.h"
#include "log.h"
#include "hs3003.h"

unsigned char BlackImage[4736];//Define canvas space

int main(void)
{
unsigned char fen_L,fen_H,miao_L,miao_H;
log_init();

Humiture_HS3003_init();

Humiture_HS3003_ReadData_Raw();

while (1)

{

Humiture_HS3003_ReadData_Raw();

Delay_ms(1000);

}

}

實(shí)驗(yàn)效果

152488a4470e169d54322890c576d2a0cb51d8d89a83d67ea4982d2d3f0d9ac8.png

總結(jié)

不知道是不是硬件i2c的驅(qū)動是不是有問題,反正我的浪費(fèi)了半天的時(shí)間,各種工具用上,最后還是得用軟件才搞定。

審核編輯 黃宇

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

    關(guān)注

    12

    文章

    1994

    瀏覽量

    88735
  • THS3000
    +關(guān)注

    關(guān)注

    0

    文章

    3

    瀏覽量

    6382
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    動環(huán)監(jiān)控核心組件:溫濕度變送器的電子技術(shù)與設(shè)計(jì)研產(chǎn)理念

    在動環(huán)監(jiān)控系統(tǒng)中,溫濕度變送器作為關(guān)鍵的環(huán)境監(jiān)測設(shè)備,其設(shè)計(jì)、研發(fā)與生產(chǎn)直接關(guān)系到監(jiān)控?cái)?shù)據(jù)的準(zhǔn)確性和系統(tǒng)的穩(wěn)定性。本文將以溫濕度變送器(型號是TH100)為例,客觀闡述其背后的技術(shù)理念與生產(chǎn)細(xì)節(jié)
    的頭像 發(fā)表于 04-28 09:08 ?470次閱讀

    STM32 驅(qū)動 SHT40 溫濕度測量

    SHT40是一款高精度數(shù)字溫濕度傳感器,采用I2C接口輸出數(shù)據(jù),具有快速響應(yīng)、穩(wěn)定性好等特點(diǎn)。文章詳細(xì)介紹了其引腳功能、測量指令、加熱器指令及使用場景。驅(qū)動時(shí)序圖解析數(shù)據(jù)讀取流程,包括6字節(jié)數(shù)
    的頭像 發(fā)表于 04-15 10:14 ?192次閱讀
    STM32 <b class='flag-5'>驅(qū)動</b> SHT40 <b class='flag-5'>溫濕度</b>測量

    低功耗+LCD常顯單芯片藍(lán)牙溫濕度計(jì)方案

    藍(lán)牙溫濕度計(jì)是一款將藍(lán)牙BLE低功耗無線通信技術(shù)與高精度溫濕度傳感功能相融合的智能設(shè)備。它可以實(shí)時(shí)、穩(wěn)定地采集所處環(huán)境的溫度和濕度數(shù)據(jù),并通
    的頭像 發(fā)表于 04-07 16:13 ?184次閱讀
    低功耗+LCD常顯單芯片藍(lán)牙<b class='flag-5'>溫濕度</b>計(jì)方案

    使用STM32F103ZET6采集DHT11溫濕度串口顯示

    DHT11是一款數(shù)字溫濕度傳感器,DHT11是一款含有已校準(zhǔn)數(shù)字信號輸出的溫濕度復(fù)合傳感器。它應(yīng)用專用的數(shù)字模塊采集技術(shù)溫濕度傳感
    的頭像 發(fā)表于 03-18 17:06 ?3772次閱讀
    使用STM32F103ZET6<b class='flag-5'>采集</b>DHT11<b class='flag-5'>溫濕度</b>串口顯示

    紡織車間溫濕度數(shù)據(jù)采集遠(yuǎn)程監(jiān)控系統(tǒng)方案

    對精細(xì)化的紡織工業(yè)來說,確保適宜的溫濕度是保證成紗質(zhì)量的關(guān)鍵。保持適宜的溫濕度條件,可以有效提高纖維剛性和彈性,減少纖維與機(jī)器部件之間的摩擦及堵塞現(xiàn)象。如果車間相對濕度過低,不僅容易產(chǎn)生靜電,導(dǎo)致棉
    的頭像 發(fā)表于 02-05 15:07 ?353次閱讀
    紡織車間<b class='flag-5'>溫濕度數(shù)據(jù)采集</b>遠(yuǎn)程監(jiān)控系統(tǒng)方案

    冷庫溫濕度監(jiān)控系統(tǒng)物聯(lián)網(wǎng)解決方案

    冷庫作為生鮮食品、醫(yī)藥試劑、化工原料等物資的核心存儲載體,溫濕度的穩(wěn)定性直接決定物資品質(zhì)與安全。傳統(tǒng)冷庫溫濕度管理存在諸多痛點(diǎn):人工巡檢效率低、誤差大,難以實(shí)現(xiàn) 24 小時(shí)全覆蓋監(jiān)測;溫濕度異常后
    的頭像 發(fā)表于 01-19 16:57 ?756次閱讀

    低功耗藍(lán)牙芯片N32WB031系列斷路器應(yīng)用

    在智能化電氣設(shè)備快速發(fā)展的今天,斷路器已不再是簡單的電路保護(hù)裝置,而是集監(jiān)測、控制、交互于一體的智能節(jié)點(diǎn)。實(shí)現(xiàn)這一升級,離不開一顆高性能、高可靠性的核心芯片。國民技術(shù)推出的N功耗藍(lán)牙芯片N32
    的頭像 發(fā)表于 12-23 17:18 ?1054次閱讀

    溫濕度傳感器HTU31D在溫濕度控器中的應(yīng)用優(yōu)勢

    溫濕度控制器是一種用于監(jiān)測和調(diào)節(jié)環(huán)境溫度與濕度的設(shè)備,廣泛應(yīng)用于農(nóng)業(yè)、倉儲、工業(yè)生產(chǎn)、家庭等多個(gè)領(lǐng)域。其主要功能是維持特定環(huán)境條件,以確保產(chǎn)品質(zhì)量和舒適的居住環(huán)境。 溫濕度控制器的工作過程是傳感器
    的頭像 發(fā)表于 11-06 14:38 ?470次閱讀
    <b class='flag-5'>溫濕度</b>傳感器HTU31D在<b class='flag-5'>溫濕度</b>控器中的應(yīng)用優(yōu)勢

    基于LORA無線通訊的祥控多點(diǎn)式煙葉溫濕度監(jiān)測系統(tǒng)

    XKCON祥控多點(diǎn)式煙葉溫濕度監(jiān)測系統(tǒng)基于LORA無線通訊技術(shù),無需復(fù)雜的布線工作,縮短了工期,節(jié)省了成本;系統(tǒng)可以根據(jù)煙廠的實(shí)際布局和需求進(jìn)行靈活配置,實(shí)現(xiàn)對各單點(diǎn)無線溫濕度檢測桿測量信號的
    的頭像 發(fā)表于 09-23 17:02 ?931次閱讀
    基于LORA無線通訊的祥控多點(diǎn)式煙葉<b class='flag-5'>溫濕度</b>監(jiān)測系統(tǒng)

    一款適用于粉塵、易結(jié)露等惡劣環(huán)境溫濕度監(jiān)控中的溫濕度傳感芯片

    溫濕度監(jiān)控系統(tǒng)在惡劣環(huán)境中通過傳感器實(shí)時(shí)監(jiān)測溫濕度參數(shù),當(dāng)達(dá)到預(yù)設(shè)閾值時(shí)自動觸發(fā)預(yù)警或調(diào)節(jié)機(jī)制,確保環(huán)境狀態(tài)維持在安全范圍內(nèi)。
    的頭像 發(fā)表于 07-09 09:41 ?908次閱讀
    一款適用于粉塵、易結(jié)露等惡劣環(huán)境<b class='flag-5'>溫濕度</b>監(jiān)控中的<b class='flag-5'>溫濕度</b>傳感芯片

    常見的溫濕度傳感器類型?

    溫濕度傳感器是一種用于測量環(huán)境溫度和濕度的設(shè)備,廣泛應(yīng)用于工業(yè)、農(nóng)業(yè)、氣象等領(lǐng)域。以下是幾種常見的溫濕度傳感器類型及其優(yōu)缺點(diǎn): 電容式濕度傳感器 電容式
    發(fā)表于 06-24 09:24

    溫濕度變送器功能有哪些?一文詳細(xì)解析

    對于很多行業(yè)來說,精確的測量以及控制溫度和濕度至關(guān)重要。想要達(dá)到這個(gè)目的,往往需要用到溫濕度變送器。那么,溫濕度變送器究竟有哪些功能呢?下面為大家詳細(xì)介紹。 一、精確測量溫濕度
    發(fā)表于 06-03 10:56

    智能倉儲:溫濕度監(jiān)控方案應(yīng)用

    隨著倉儲環(huán)境要求提高,溫濕度監(jiān)控對保障貨物品質(zhì)至關(guān)重要。本文介紹一個(gè)工廠倉庫溫濕度監(jiān)控方案,利用溫濕度變送器、LoRa技術(shù)和智能監(jiān)測平臺,為倉庫業(yè)主提供高效、可靠的監(jiān)測解決方案。倉庫
    的頭像 發(fā)表于 05-29 11:35 ?960次閱讀
    智能倉儲:<b class='flag-5'>溫濕度</b>監(jiān)控方案應(yīng)用

    LoRa無線技術(shù)溫濕度監(jiān)測預(yù)警系統(tǒng)

    LoRa無線技術(shù)溫濕度監(jiān)測預(yù)警系統(tǒng)采用LoRa采集器和LoRa網(wǎng)關(guān)實(shí)現(xiàn)監(jiān)控區(qū)域內(nèi)的全覆蓋,同時(shí)在倉儲區(qū)各個(gè)數(shù)據(jù)采集節(jié)點(diǎn)安裝溫濕度傳感器,實(shí)
    的頭像 發(fā)表于 05-14 16:06 ?1017次閱讀
    LoRa無線<b class='flag-5'>技術(shù)</b>的<b class='flag-5'>溫濕度</b>監(jiān)測預(yù)警系統(tǒng)

    【RA-Eco-RA4M2開發(fā)板評測】RT-Thread上驅(qū)動I2C溫濕度傳感器

    框架加進(jìn)來。 最后把溫濕度傳感器的組件包選上。 四、驅(qū)動 有了RT-Thread的sensor驅(qū)動框架和hs300x驅(qū)動組件包,對
    發(fā)表于 05-08 22:42
    沙河市| 山西省| 华池县| 竹北市| 游戏| 高密市| 偏关县| 桂林市| 修水县| 长岭县| 泸定县| 苗栗市| 屏东市| 娱乐| 温州市| 古田县| 青阳县| 林州市| 灵石县| 玉林市| 东丽区| 龙海市| 江阴市| 沛县| 通州区| 贵港市| 兰西县| 嫩江县| 宜兴市| 上林县| 孟连| 夏津县| 华宁县| 苗栗县| 五台县| 新竹市| 奉节县| 平乐县| 泸定县| 金塔县| 且末县|