chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

RA4M2開(kāi)發(fā)(4)----讀取HS3003數(shù)據(jù),并在OLED上顯示,串口打印

嵌入式單片機(jī)MCU開(kāi)發(fā) ? 來(lái)源:嵌入式單片機(jī)MCU開(kāi)發(fā) ? 作者:嵌入式單片機(jī)MCU開(kāi) ? 2023-07-27 10:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

概述

HS3003是一種數(shù)字式溫濕度傳感器,可以測(cè)量環(huán)境中的溫度和濕度。讀取HS3003的數(shù)據(jù)需要連接傳感器到一個(gè)數(shù)據(jù)采集系統(tǒng),一般是微處理器或者單片機(jī)。以下是一個(gè)簡(jiǎn)單的讀取HS3003數(shù)據(jù)的概述:

  1. 連接電路:將HS3003傳感器連接到微處理器或單片機(jī)的GPIO引腳。需要注意HS3003的電氣特性,比如供電電壓和信號(hào)電平等。

  2. 發(fā)送命令:發(fā)送讀取溫濕度數(shù)據(jù)的命令到HS3003傳感器。具體的命令格式和通信協(xié)議需要參考HS3003的數(shù)據(jù)手冊(cè)。

  3. 接收數(shù)據(jù):等待HS3003傳感器回應(yīng),并接收傳感器發(fā)送的數(shù)據(jù)。HS3003傳感器的數(shù)據(jù)一般是經(jīng)過(guò)數(shù)字轉(zhuǎn)換后的二進(jìn)制數(shù)據(jù),需要解析成溫濕度值。

  4. 解析數(shù)據(jù):將接收到的二進(jìn)制數(shù)據(jù)解析成溫濕度值。具體的解析算法需要參考HS3003的數(shù)據(jù)手冊(cè),一般涉及到位移、位運(yùn)算、符號(hào)擴(kuò)展等操作。

  5. 處理數(shù)據(jù):對(duì)得到的溫濕度值進(jìn)行處理,比如校準(zhǔn)、濾波、顯示等。

  6. 循環(huán)讀取:根據(jù)需要循環(huán)執(zhí)行步驟2到5,以實(shí)現(xiàn)連續(xù)讀取HS3003傳感器的溫濕度數(shù)據(jù)。 需要注意的是,HS3003傳感器的使用和讀取數(shù)據(jù)需要按照數(shù)據(jù)手冊(cè)的規(guī)范和建議操作,否則可能會(huì)導(dǎo)致數(shù)據(jù)精度降低、傳感器損壞等問(wèn)題。

  7. 視頻教學(xué)

    [https://www.bilibili.com/video/BV1th4y1R7of/]

csdn課程

csdn課程更加詳細(xì)。
[https://edu.csdn.net/course/detail/36131]

樣品申請(qǐng)

[https://www.wjx.top/vm/wBbmSFp.aspx#]

硬件準(zhǔn)備

首先需要準(zhǔn)備一個(gè)開(kāi)發(fā)板,這里我準(zhǔn)備的是芯片型號(hào)R7FAM2AD3CFP的開(kāi)發(fā)板:

在這里插入圖片描述

樣品申請(qǐng)

[https://www.wjx.top/vm/wBbmSFp.aspx#]

IIC配置

配置RA4M2的I2C接口,使其作為I2C master進(jìn)行通信。 對(duì)于OLED的IIC配置,可以查看往期的博客。 查看HS3003說(shuō)明書(shū),最小電路圖如下所示。

在這里插入圖片描述

由于需要讀取HS3003數(shù)據(jù),需要使用IIC接口,這里使用PMOD2上的接口(P410和P411)。

在這里插入圖片描述

點(diǎn)擊Stacks->New Stack->Connectivity -> I2C Master(r_sci_i2c)。

在這里插入圖片描述

查看說(shuō)明書(shū)可以得知,ISL29035的地址為0x44(1000100)。

在這里插入圖片描述

設(shè)置IIC的配置。

在這里插入圖片描述

R_SCI_I2C_Open()函數(shù)原型

在這里插入圖片描述

R_SCI_I2C_Open()函數(shù)為執(zhí)行IIC初始化,開(kāi)啟配置如下所示。

/* Initialize the I2C module */
        err = R_SCI_I2C_Open(&g_i2c0_ctrl, &g_i2c0_cfg);
        /* Handle any errors. This function should be defined by the user. */
        assert(FSP_SUCCESS == err);

R_SCI_I2C_Write()函數(shù)原型

在這里插入圖片描述

R_SCI_I2C_Write()函數(shù)是向IIC設(shè)備中寫入數(shù)據(jù),寫入格式如下所示。

err = R_SCI_I2C_Write(&g_i2c0_ctrl, &g_i2c_tx_buffer[0], I2C_BUFFER_SIZE_BYTES, false);
    assert(FSP_SUCCESS == err);

R_SCI_I2C_Read()函數(shù)原型

在這里插入圖片描述

R_SCI_I2C_Read()函數(shù)是向IIC設(shè)備中讀取數(shù)據(jù),讀取格式如下所示。

err = R_SCI_I2C_Write(&g_i2c0_ctrl, &g_i2c_tx_buffer[0], I2C_BUFFER_SIZE_BYTES, false);
    assert(FSP_SUCCESS == err);

sci_i2c_master_callback()回調(diào)函數(shù)

對(duì)于數(shù)據(jù)是否發(fā)送完畢,可以查看是否獲取到I2C_MASTER_EVENT_TX_COMPLETE字段。

在這里插入圖片描述

/* Callback function */
i2c_master_event_t i2c_event1 = I2C_MASTER_EVENT_ABORTED;
void sci_i2c_master_callback0(i2c_master_callback_args_t *p_args)
{
    /* TODO: add your own code here */
    i2c_event1 = I2C_MASTER_EVENT_ABORTED;
    if (NULL != p_args)
    {
        /* capture callback event for validating the i2c transfer event*/
        i2c_event1 = p_args- >event;
    }
}

HS3003寫數(shù)據(jù)

對(duì)于HS3003寫數(shù)據(jù),手冊(cè)上的操作方式如下所示。 設(shè)備地址+操作地址+數(shù)據(jù)

在這里插入圖片描述

初始化程序如下所示。

void Humiture_HS3003_writeRegister( int reg_address, uint8_t val)
{
    uint8_t ii[2]={0x00,0x00};
    ii[0] = reg_address;
    ii[1] = val;

    err = R_SCI_I2C_Write(&g_i2c0_ctrl, ii, 0x02, false);
           assert(FSP_SUCCESS == err);
           /* Since there is nothing else to do, block until Callback triggers*/
           //while ((I2C_MASTER_EVENT_TX_COMPLETE != i2c_event) && timeout_ms)
           while ((I2C_MASTER_EVENT_TX_COMPLETE != i2c_event1) && timeout_ms1 >0)
           {
               R_BSP_SoftwareDelay(1U, BSP_DELAY_UNITS_MICROSECONDS);
               timeout_ms1--;
           }
           if (I2C_MASTER_EVENT_ABORTED == i2c_event1)
           {
               __BKPT(0);
           }
           /* Read data back from the I2C slave */
           i2c_event1 = I2C_MASTER_EVENT_ABORTED;
           timeout_ms1           = 100000;


}

HS3003讀數(shù)據(jù)

對(duì)于讀取數(shù)據(jù),可以直接在發(fā)送地址后,進(jìn)行讀取,當(dāng)時(shí)需要注意再發(fā)送完地址后,要有等待時(shí)間。

在這里插入圖片描述

讀取操作函數(shù)如下所示,先發(fā)送操作地址,在進(jìn)行讀取,這里是一次讀取32位。

uint32_t Humiture_HS3003_readRegister32(uint8_t reg_address) {

    uint32_t value;
    uint8_t data[4];
    timeout_ms1           = 100000;

    /* Read data from I2C slave */
    err = R_SCI_I2C_Read(&g_i2c0_ctrl, &data, 0x04, false);
    assert(FSP_SUCCESS == err);
    while ((I2C_MASTER_EVENT_RX_COMPLETE != i2c_event1) && timeout_ms1)
    {
        R_BSP_SoftwareDelay(1U, BSP_DELAY_UNITS_MILLISECONDS);
        timeout_ms1--;
    }
    if (I2C_MASTER_EVENT_ABORTED == i2c_event1)
    {
        __BKPT(0);
    }

    i2c_event1 = I2C_MASTER_EVENT_ABORTED;
    timeout_ms1           = 100000;


    value=data[0];
    value< <=8;
    value|=data[1];
    value< <=8;
    value|=data[2];
    value< <=8;
    value|=data[3];
    return value;
}

HS3003初始化

首先需要將HS3003進(jìn)行喚醒,默認(rèn)情況下是睡眠模式。 喚醒需要對(duì)Measurement Requests (MR)進(jìn)行操作,MR命令用于將HS300x從休眠模式喚醒。通過(guò)發(fā)送7位從地址和第8位=0 (WRITE)來(lái)發(fā)起測(cè)量請(qǐng)求。

在這里插入圖片描述

對(duì)于不同精度的數(shù)據(jù)讀取,等待時(shí)間是不同的。

在這里插入圖片描述

對(duì)于等待的時(shí)間,可以參考下圖紅框的數(shù)據(jù)。

在這里插入圖片描述

HS3003讀取溫濕度

對(duì)于讀取數(shù)據(jù),可以直接在發(fā)送地址后,進(jìn)行讀取,當(dāng)時(shí)需要注意再發(fā)送完地址后,要有等待時(shí)間。

在這里插入圖片描述

讀取操作函數(shù)如下所示,先發(fā)送操作地址,在進(jìn)行讀取。

void Humiture_HS3003_init(void)
{
    Humiture_HS3003_writeRegister(HS300X_ADR,0);

}
//讀取原始的數(shù)據(jù)
uint32_t Humiture_HS3003_ReadData_Raw(uint8_t resolution )
{
    uint8_t rx_buf[ 4 ];
    uint32_t data=0;
    Humiture_HS3003_init();//喚醒
    //8bit- >1.2ms
    //10bit- >2.72ms
    //12bit- >9.10ms
    //14bit- >33.90ms
    if(resolution==8)
    R_BSP_SoftwareDelay(1200U, BSP_DELAY_UNITS_MICROSECONDS);
    else if(resolution==10)
    R_BSP_SoftwareDelay(2720U, BSP_DELAY_UNITS_MICROSECONDS);
    else if(resolution==12)
    R_BSP_SoftwareDelay(9100U, BSP_DELAY_UNITS_MICROSECONDS);
    else
    R_BSP_SoftwareDelay(34U, BSP_DELAY_UNITS_MILLISECONDS);
    data=Humiture_HS3003_readRegister32(HS300X_ADR);
    return data;
}

對(duì)于讀取的數(shù)據(jù),需要進(jìn)行處理。 濕度在后兩個(gè)字節(jié)的15-2位,溫度在前2個(gè)字節(jié)的13-0位。

在這里插入圖片描述

對(duì)于原始的數(shù)據(jù),要對(duì)他進(jìn)行處理。

在這里插入圖片描述

Data=Humiture_HS3003_ReadData_Raw(14);
    Temp = (float)( (Data & 0xFFFF) > > 2);//只要低十六位
    Temp = Temp*HS300X_TEMP_MULTY*165-40;//HS300X_TEMP_MULTY- >0.00006163516(1/(2^14-1) )

    Humidity = (float)( (Data > > 16) &0x3FFF );//只要高十六位,且最高2位不要
    Humidity = Humidity*HS300X_HUMD_MULTY*100;//HS300X_HUMD_MULTY- >0.00006163516(1/(2^14-1) )

實(shí)現(xiàn)效果

正常顯示數(shù)據(jù)。

在這里插入圖片描述

同時(shí)串口也可以打印數(shù)據(jù)。

在這里插入圖片描述

主程序

#include "hal_data.h"
#include < stdio.h >
#include "Humiture_HS3003.h"
#include "oled.h"
#include "bmp.h"
FSP_CPP_HEADER
void R_BSP_WarmStart(bsp_warm_start_event_t event);
FSP_CPP_FOOTER


fsp_err_t err = FSP_SUCCESS;
volatile bool uart_send_complete_flag = false;
/* Callback function */
void user_uart_callback(uart_callback_args_t *p_args)
{
    /* TODO: add your own code here */
    if(p_args- >event == UART_EVENT_TX_COMPLETE)
     {
         uart_send_complete_flag = true;
     }
}


#ifdef __GNUC__                                 //串口重定向
    #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
    #define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif
PUTCHAR_PROTOTYPE
{
        err = R_SCI_UART_Write(&g_uart9_ctrl, (uint8_t *)&ch, 1);
        if(FSP_SUCCESS != err) __BKPT();
        while(uart_send_complete_flag == false){}
        uart_send_complete_flag = false;
        return ch;
}
int _write(int fd,char *pBuffer,int size)
{
    for(int i=0;i< size;i++)
    {
        __io_putchar(*pBuffer++);
    }
    return size;
}


/* Callback function */
i2c_master_event_t i2c_event1 = I2C_MASTER_EVENT_ABORTED;
void sci_i2c_master_callback0(i2c_master_callback_args_t *p_args)
{
    /* TODO: add your own code here */
    i2c_event1 = I2C_MASTER_EVENT_ABORTED;
    if (NULL != p_args)
    {
        /* capture callback event for validating the i2c transfer event*/
        i2c_event1 = p_args- >event;
    }
}

/* Callback function */
i2c_master_event_t i2c_event = I2C_MASTER_EVENT_ABORTED;
void sci_i2c_master_callback(i2c_master_callback_args_t *p_args)
{
    i2c_event = I2C_MASTER_EVENT_ABORTED;
    if (NULL != p_args)
    {
        /* capture callback event for validating the i2c transfer event*/
        i2c_event = p_args- >event;
    }
}

uint32_t  timeout_ms1 = 100000;
uint32_t  timeout_ms = 100000;
float Temp=0.0f;
float Humidity=0.0f;
uint32_t Data=0;//溫濕度原始數(shù)據(jù)
/*******************************************************************************************************************//**
 * main() is generated by the RA Configuration editor and is used to generate threads if an RTOS is used.  This function
 * is called by main() when no RTOS is used.
 **********************************************************************************************************************/
void hal_entry(void)
{
    /* TODO: add your own code here */

    /* Initialize the I2C module */
    err = R_SCI_I2C_Open(&g_i2c3_ctrl, &g_i2c3_cfg);
    /* Handle any errors. This function should be defined by the user. */
    assert(FSP_SUCCESS == err);

    OLED_Init();            //初始化OLED
    OLED_Clear()    ;
    OLED_ShowCHinese(0,0,0);//記
    OLED_ShowCHinese(16,0,1);//帖
    OLED_ShowString(0,2,"Temp:",16);
    OLED_ShowString(0,4,"Humidity:",16);

    /* Initialize the I2C module */
    err = R_SCI_I2C_Open(&g_i2c0_ctrl, &g_i2c0_cfg);
    /* Handle any errors. This function should be defined by the user. */
    assert(FSP_SUCCESS == err);

    Humiture_HS3003_init();

    /* Open the transfer instance with initial configuration. */
       fsp_err_t err = R_SCI_UART_Open(&g_uart9_ctrl, &g_uart9_cfg);
       assert(FSP_SUCCESS == err);
       printf("hello world!n");

while(1)
{

    Data=Humiture_HS3003_ReadData_Raw(14);
    Temp = (float)( (Data & 0xFFFF) > > 2);//只要低十六位
    Temp = Temp*HS300X_TEMP_MULTY*165-40;//HS300X_TEMP_MULTY- >0.00006163516(1/(2^14-1) )

    Humidity = (float)( (Data > > 16) &0x3FFF );//只要高十六位,且最高2位不要
    Humidity = Humidity*HS300X_HUMD_MULTY*100;//HS300X_HUMD_MULTY- >0.00006163516(1/(2^14-1) )

    OLED_Clear()    ;
    OLED_ShowCHinese(0,0,0);//記
    OLED_ShowCHinese(16,0,1);//帖
    OLED_ShowString(0,2,"Temp:",16);
    OLED_ShowString(0,4,"Humidity:",16);

    if(Temp< 10 && Temp >=0)//0<=Temp< 10
    {
        OLED_ShowNum(48,2,(int)(Temp),1,16);//顯示Temp整數(shù)
        OLED_ShowString(56,2,".",16);
        OLED_ShowNum(64,2,(int)(Temp*100) - ( ((int)Temp) *100),1,16);//顯示Temp小數(shù)
        if(( (int)(Temp*100) - ( ((int)Temp) *100) ) < 10  )
            OLED_ShowString(64,2,"0",16);
    }
    else if (Temp >=10 && Temp< 100)//10<=Temp< 100
    {
        OLED_ShowNum(48,2,(int)(Temp),2,16);//顯示Temp整數(shù)
        OLED_ShowString(64,2,".",16);
        OLED_ShowNum(72,2,(int)(Temp*100) - ( ((int)Temp) *100),2,16);//顯示Temp小數(shù)
        if(( (int)(Temp*100) - ( ((int)Temp) *100) ) < 10  )
            OLED_ShowString(72,2,"0",16);
    }
    else if (Temp >=100 && Temp< 1000)//100<=Temp< 1000
    {
        OLED_ShowNum(48,2,(int)(Temp),3,16);//顯示Temp整數(shù)
        OLED_ShowString(72,2,".",16);
        OLED_ShowNum(80,2,(int)(Temp*100) - ( ((int)Temp) *100),2,16);//顯示Temp小數(shù)
        if(( (int)(Temp*100) - ( ((int)Temp) *100) ) < 10  )
            OLED_ShowString(80,2,"0",16);
    }

    if(Humidity< 10)//0<=Humidity< 10
    {
        OLED_ShowNum(72,4,(int)(Humidity),1,16);//顯示Humidity整數(shù)
        OLED_ShowString(80,4,".",16);
        OLED_ShowNum(88,4,(int)(Humidity*100) - ( ((int)Humidity) *100),2,16);//顯示Temp小數(shù)
        if(( (int)(Humidity*100) - ( ((int)Humidity) *100) ) < 10  )
            OLED_ShowString(88,4,"0",16);
    }
    else if(Humidity >10 && Humidity< 100)
    {
        OLED_ShowNum(72,4,(int)(Humidity),2,16);//顯示Humidity整數(shù)
        OLED_ShowString(88,4,".",16);
        OLED_ShowNum(96,4,(int)(Humidity*100) - ( ((int)Humidity) *100),2,16);//顯示Temp小數(shù)
        if(( (int)(Humidity*100) - ( ((int)Humidity) *100) ) < 10  )
            OLED_ShowString(96,4,"0",16);
    }
    printf("Temp=%.2f,Humidity=%.2fn",Temp,Humidity);
    R_BSP_SoftwareDelay(1000U, BSP_DELAY_UNITS_MILLISECONDS);
}

#if BSP_TZ_SECURE_BUILD
    /* Enter non-secure code */
    R_BSP_NonSecureEnter();
#endif
}

Humiture_HS3003.c

/*
 * Humiture_HS3003.c
 *
 *  Created on: 2023年2月19日
 *      Author: a8456
 * 交流群:615061293
 */
#include "hal_data.h"
#include "Humiture_HS3003.h"
extern fsp_err_t err;
extern int  timeout_ms1;
extern  i2c_master_event_t i2c_event1 ;


uint32_t Humiture_HS3003_readRegister32(uint8_t reg_address) {

    uint32_t value;
    uint8_t data[4];
    timeout_ms1           = 100000;

    /* Read data from I2C slave */
    err = R_SCI_I2C_Read(&g_i2c0_ctrl, &data, 0x04, false);
    assert(FSP_SUCCESS == err);
    while ((I2C_MASTER_EVENT_RX_COMPLETE != i2c_event1) && timeout_ms1)
    {
        R_BSP_SoftwareDelay(1U, BSP_DELAY_UNITS_MILLISECONDS);
        timeout_ms1--;
    }
    if (I2C_MASTER_EVENT_ABORTED == i2c_event1)
    {
        __BKPT(0);
    }

    i2c_event1 = I2C_MASTER_EVENT_ABORTED;
    timeout_ms1           = 100000;


    value=data[0];
    value< <=8;
    value|=data[1];
    value< <=8;
    value|=data[2];
    value< <=8;
    value|=data[3];
    return value;
}


void Humiture_HS3003_writeRegister( uint8_t reg_address, uint8_t *buffer, uint8_t len)
{
    err = R_SCI_I2C_Write(&g_i2c0_ctrl, buffer, len, false);
           assert(FSP_SUCCESS == err);
           /* Since there is nothing else to do, block until Callback triggers*/
           //while ((I2C_MASTER_EVENT_TX_COMPLETE != i2c_event) && timeout_ms)
           while ((I2C_MASTER_EVENT_TX_COMPLETE != i2c_event1) && timeout_ms1 >0)
           {
               R_BSP_SoftwareDelay(1U, BSP_DELAY_UNITS_MICROSECONDS);
               timeout_ms1--;
           }
           if (I2C_MASTER_EVENT_ABORTED == i2c_event1)
           {
               __BKPT(0);
           }
           /* Read data back from the I2C slave */
           i2c_event1 = I2C_MASTER_EVENT_ABORTED;
           timeout_ms1           = 100000;


}

void Humiture_HS3003_init(void)
{
    Humiture_HS3003_writeRegister(HS300X_ADR,NULL,0);

}


//讀取原始的數(shù)據(jù)
uint32_t Humiture_HS3003_ReadData_Raw(uint8_t resolution )
{
    uint8_t rx_buf[ 4 ];
    uint32_t data=0;
    Humiture_HS3003_init();//喚醒
    //8bit- >1.2ms
    //10bit- >2.72ms
    //12bit- >9.10ms
    //14bit- >33.90ms
    if(resolution==8)
    R_BSP_SoftwareDelay(1200U, BSP_DELAY_UNITS_MICROSECONDS);
    else if(resolution==10)
    R_BSP_SoftwareDelay(2720U, BSP_DELAY_UNITS_MICROSECONDS);
    else if(resolution==12)
    R_BSP_SoftwareDelay(9100U, BSP_DELAY_UNITS_MICROSECONDS);
    else
    R_BSP_SoftwareDelay(34U, BSP_DELAY_UNITS_MILLISECONDS);
    data=Humiture_HS3003_readRegister32(HS300X_ADR);
    return data;
}

Humiture_HS3003.h

/*
 * Humiture_HS3003.h
 *
 *  Created on: 2023年2月19日
 *      Author: a8456
 * 交流群:615061293
 */

#ifndef HUMITURE_HS3003_H_
#define HUMITURE_HS3003_H_

#define HS300X_ADR  0x44
#define HS300X_HUMD_MULTY           0.00006163516
#define HS300X_TEMP_MULTY           0.00006163516



//uint8_t HuMIture_HS3003_readRegister8(uint8_t reg_address);
uint32_t Humiture_HS3003_readRegister32(uint8_t reg_address);
void Humiture_HS3003_writeRegister( uint8_t reg_address, uint8_t *buffer, uint8_t len);


void Humiture_HS3003_init(void);
uint32_t Humiture_HS3003_ReadData_Raw(uint8_t resolution);






#endif /* HUMITURE_HS3003_H_ */

審核編輯:湯梓紅

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

    關(guān)注

    2566

    文章

    53008

    瀏覽量

    767673
  • led
    led
    +關(guān)注

    關(guān)注

    242

    文章

    23848

    瀏覽量

    674290
  • OLED
    +關(guān)注

    關(guān)注

    120

    文章

    6286

    瀏覽量

    228112
  • 串口
    +關(guān)注

    關(guān)注

    15

    文章

    1588

    瀏覽量

    79970
  • RA4M2
    +關(guān)注

    關(guān)注

    2

    文章

    20

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    RA-Eco-RA4M2開(kāi)發(fā)板評(píng)測(cè)】RA-Eco-RA4M2 溫濕度傳感器HS3003

    設(shè)備 硬件:PC 機(jī)一臺(tái);RA-Eco-RA4M2開(kāi)發(fā)板一套;HS3003模塊一個(gè) 軟件:Windows 10系統(tǒng),Keil5集成開(kāi)發(fā)環(huán)境、串口
    發(fā)表于 05-03 22:57

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】HS3003讀取數(shù)據(jù)

    HS3003是溫濕度計(jì),I2C接口,這里給大家分享一下基本的驅(qū)動(dòng):時(shí)鐘配置這里要說(shuō)明一下,原來(lái)的RA4M2的晶振是24M,這次大賽拿到的開(kāi)發(fā)
    發(fā)表于 01-17 07:57

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】RTT sensor模塊驅(qū)動(dòng)hs3003

    上層提供統(tǒng)一的操作接口,提高上層代碼的可重用性經(jīng)查看sensor支持包,rtt支持該傳感器的:在【RA4M2設(shè)計(jì)挑戰(zhàn)賽】RTT 移植 這篇帖子基礎(chǔ)加入hs3003的溫濕度采集加入hs3003
    發(fā)表于 02-06 14:37

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】2. 硬件IIC讀取HS3003的溫濕度數(shù)據(jù)

    ),基于FreeRTOS作為OS,實(shí)現(xiàn)硬件IIC采集HS3003的溫濕度數(shù)據(jù)。HS300X原理圖通過(guò)對(duì)比了RA4M2開(kāi)發(fā)板的PMOD接口以及
    發(fā)表于 02-11 20:21

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】讀取HS3003數(shù)據(jù),并在OLED顯示串口打印

    到的二進(jìn)制數(shù)據(jù)解析成溫濕度值。具體的解析算法需要參考HS3003數(shù)據(jù)手冊(cè),一般涉及到位移、位運(yùn)算、符號(hào)擴(kuò)展等操作。處理數(shù)據(jù):對(duì)得到的溫濕度值進(jìn)行處理,比如校準(zhǔn)、濾波、
    發(fā)表于 02-22 15:11

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】低功耗遠(yuǎn)距離無(wú)線溫度監(jiān)控項(xiàng)目

    一次數(shù)據(jù),長(zhǎng)達(dá)1年左右的工作時(shí)間。項(xiàng)目用到的硬件1、瑞薩RA4M2開(kāi)發(fā)板 1塊2、瑞薩RA2E1開(kāi)發(fā)
    發(fā)表于 02-23 15:03

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】HS3003模塊IIC通信

    HS3003_Task再添加線程功能,選擇SCI_IIC添加后設(shè)置IIC功能然后找到了官方提供的資料,有讀取HS3003的相關(guān)代碼,稍微做億點(diǎn)點(diǎn)改造,改成模塊的形式(模塊的接口先這么處理,等后面研究ST
    發(fā)表于 02-26 00:06

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】基于瑞薩RA4M2開(kāi)發(fā)板設(shè)計(jì)的多參數(shù)物聯(lián)網(wǎng)采集終端(作品提交)

    的影響。根據(jù)比賽規(guī)則,本次主要采用瑞薩R7FA4M2AD3CFP作為主控芯片,通過(guò)瑞薩HS3003低功耗MEMS高精度傳感器采集溫濕度數(shù)據(jù),通過(guò)瑞薩ISL29035傳感器采集環(huán)境光照強(qiáng)度數(shù)據(jù)
    發(fā)表于 03-04 18:40

    基于RA4M2HS3003的溫濕度測(cè)量

    一、前言HS3003是一種數(shù)字式溫濕度傳感器,可以測(cè)量環(huán)境中的溫度和濕度。讀取HS3003數(shù)據(jù)需要連接傳感器到一個(gè)數(shù)據(jù)采集系統(tǒng),一般是微處
    發(fā)表于 03-05 23:38

    【精品合集】瑞薩RA4M2物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)計(jì)挑戰(zhàn)賽作品合集

    】使用串口進(jìn)行打印RA4M2設(shè)計(jì)挑戰(zhàn)賽】基于IIC驅(qū)動(dòng)OLEDRA4M2設(shè)計(jì)挑戰(zhàn)賽】讀取IS
    發(fā)表于 03-07 14:33

    RA4M2數(shù)據(jù)手冊(cè)(英)

    RA4M2數(shù)據(jù)手冊(cè)(英)
    發(fā)表于 11-07 19:49 ?1次下載
    <b class='flag-5'>RA4M2</b><b class='flag-5'>數(shù)據(jù)</b>手冊(cè)(英)

    RA4M2數(shù)據(jù)手冊(cè)(中英)

    RA4M2數(shù)據(jù)手冊(cè)(中英)
    發(fā)表于 11-07 19:49 ?4次下載
    <b class='flag-5'>RA4M2</b><b class='flag-5'>數(shù)據(jù)</b>手冊(cè)(中英)

    RA4M2數(shù)據(jù)

    RA4M2數(shù)據(jù)
    發(fā)表于 02-03 19:05 ?0次下載
    <b class='flag-5'>RA4M2</b> 組<b class='flag-5'>數(shù)據(jù)</b>表

    RA4M2數(shù)據(jù)

    RA4M2數(shù)據(jù)
    發(fā)表于 07-04 19:38 ?0次下載
    <b class='flag-5'>RA4M2</b>組<b class='flag-5'>數(shù)據(jù)</b>表

    RA4M2開(kāi)發(fā)(1)----使用串口進(jìn)行打印

    本篇文章主要介紹如何使用e2studio對(duì)瑞薩RA4M2開(kāi)發(fā)板進(jìn)行串口打印配置。
    的頭像 發(fā)表于 07-27 10:00 ?1948次閱讀
    <b class='flag-5'>RA4M2</b><b class='flag-5'>開(kāi)發(fā)</b>(1)----使用<b class='flag-5'>串口</b>進(jìn)行<b class='flag-5'>打印</b>