一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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ā)(3)----讀取ISL29035數(shù)據(jù),并在OLED上顯示,串口打印

嵌入式單片機(jī)MCU開(kāi)發(fā) ? 來(lái)源:嵌入式單片機(jī)MCU開(kāi)發(fā) ? 作者:嵌入式單片機(jī)MCU開(kāi) ? 2023-07-27 10:11 ? 次閱讀

概述

  1. 首先導(dǎo)入必要的庫(kù)文件,包括I2C驅(qū)動(dòng)和OLED驅(qū)動(dòng)。
  2. 在代碼中配置I2C接口,并初始化I2C驅(qū)動(dòng)。
  3. 配置ISL29035傳感器,包括配置傳感器的工作模式和量程。
  4. 使用I2C讀取ISL29035傳感器的數(shù)據(jù),并將其存儲(chǔ)在變量中。
  5. 初始化OLED驅(qū)動(dòng),并在OLED屏幕上顯示讀取的數(shù)據(jù)。 請(qǐng)注意,這僅是一個(gè)大致的步驟,具體實(shí)現(xiàn)可能因硬件和軟件環(huán)境而異。 對(duì)于OLED的配置,可以查看往期的博客。

視頻教學(xué)

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

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配置,可以查看往期的博客。 查看ISL29035說(shuō)明書,最小電路圖如下所示。

在這里插入圖片描述

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

在這里插入圖片描述

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

在這里插入圖片描述

查看說(shuō)明書可以得知,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;
    }
}

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

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

在這里插入圖片描述

初始化程序如下所示。

void DigitalLightISL29035_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;


}

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

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

在這里插入圖片描述

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

uint8_t DigitalLightISL29035_readRegister(uint8_t reg_address) {

    uint8_t value;
    err = R_SCI_I2C_Write(&g_i2c0_ctrl, ®_address, 0x01, false);
    assert(FSP_SUCCESS == err);
    /* Since there is nothing else to do, block until Callback triggers*/
    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;

    /* Read data from I2C slave */
    err = R_SCI_I2C_Read(&g_i2c0_ctrl, &value, 0x01, 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;
    return value;
}

ISL29035初始化

  1. 讀取設(shè)備ID,查看是否鏈接上
  2. 清除標(biāo)志位
  3. 確保芯片處于停止模式
  4. 設(shè)置分辨率
  5. 設(shè)置模式,如單次模式 讀取設(shè)備ID使用0x0F指令,可以判斷DEVICE ID BITS (B3-B5),之后需要對(duì)BROWNOUT STATUS BIT - BOUT (B7)清0。

在這里插入圖片描述

初始化的時(shí)候需要確保芯片處于停止模式,需要對(duì)0x00指令的OPERATION MODE BITS (B5-B7)寫入000。

在這里插入圖片描述

設(shè)置分辨率可以通過(guò)0x01指令,光照強(qiáng)度有4種模式,1k, 4k, 16k和64k,通過(guò)FULL SCALE LUX RANGE (B0-B1)進(jìn)行設(shè)置;ADC分辨率也有4種模式,通過(guò)ADC RESOLUTION (B3-B2)進(jìn)行設(shè)置。

在這里插入圖片描述

設(shè)置采樣模式,可以通過(guò)0x00指令,對(duì)OPERATION MODE BITS (B5-B7)寫入010。

在這里插入圖片描述

int DigitalLightISL29035_init(void) {
    uint8_t reg = 0;
    reg=   DigitalLightISL29035_readRegister( CHIP_ID);//CHIP_ID- >0x0f
    //Serial.println(reg, HEX);
    uint8_t chip_id = (reg > > 3) & 0x7;
    if (chip_id != 0x5) {
        return -1;
    }

    //清除BOUT位
    DigitalLightISL29035_writeRegister(CHIP_ID, reg & 0x7f);//CHIP_ID- >0x0f

    //確保芯片處于停止模式
    DigitalLightISL29035_writeRegister( COMMAND_I, 0);//COMMAND_I- >0x00
    //設(shè)置分辨率
    DigitalLightISL29035_writeRegister(COMMAND_II, full_scale_lux_range | (integration_time < < 2) );//COMMAND_2- >0x01
    //設(shè)置為單次模式
    DigitalLightISL29035_writeRegister( COMMAND_I, OPMODE_ALS_ONCE);//COMMAND_I- >0x00
    return 0;
}

ISL29035讀取光照強(qiáng)度

設(shè)置采樣模式,可以通過(guò)0x00指令,對(duì)OPERATION MODE BITS (B5-B7)寫入010。

在這里插入圖片描述

不同的ADC精度需要等待的時(shí)間不同,16位的等待時(shí)間最久,需要105ms。

在這里插入圖片描述

對(duì)于讀取數(shù)據(jù),可以使用Data Registers (Addresses: 0x02 and 0x03),高位字節(jié)通過(guò)0x03讀取,低位字節(jié)通過(guò)0x02讀取,之后進(jìn)行組合,就是完整的數(shù)據(jù)。

在這里插入圖片描述

讀取到原始數(shù)據(jù)之后,可以通過(guò)下面公式計(jì)算光照強(qiáng)度。

在這里插入圖片描述

uint32_t DigitalLightISL29035_readIRLux(void) {
    uint16_t data = 0;
    uint8_t l, h;
    //設(shè)置為單次模式
    DigitalLightISL29035_writeRegister( COMMAND_I, OPMODE_ALS_ONCE);
    //等待時(shí)間
    if(integration_time==0)
    {
        R_BSP_SoftwareDelay(105, BSP_DELAY_UNITS_MILLISECONDS);
    }
    else if(integration_time==1 || integration_time==2)
    {
        R_BSP_SoftwareDelay(7, BSP_DELAY_UNITS_MILLISECONDS);
    }
    else if(integration_time==3)
    {
        R_BSP_SoftwareDelay(1, BSP_DELAY_UNITS_MILLISECONDS);
    }

    l=DigitalLightISL29035_readRegister(DATA_L);//DATA_L- >0x02
    h=DigitalLightISL29035_readRegister(DATA_H);//DATA_H- >0x03

    data=(h < < 8) | l;

    uint32_t ranges=0;
    if(full_scale_lux_range==0)
        ranges=1000;
    else if(full_scale_lux_range==1)
        ranges=4000;
    else if(full_scale_lux_range==2)
        ranges=16000;
    else if(full_scale_lux_range==3)
        ranges=64000;

    uint32_t adc_count_max=0;
    if(integration_time==0)
        adc_count_max=65536;
    else if(integration_time==1)
        adc_count_max=4096;
    else if(integration_time==2)
        adc_count_max=256;
    else if(integration_time==3)
        adc_count_max=16;
    return ranges * (uint32_t)data /adc_count_max;


}

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

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

在這里插入圖片描述

同時(shí)可以通過(guò)串口打印數(shù)據(jù)。

在這里插入圖片描述

由于設(shè)置光照采樣為1K,故只能讀取到999。

在這里插入圖片描述

重新設(shè)置光照采樣范圍為4k,就可以讀取0-4K的范圍了,具體設(shè)置需要考慮使用環(huán)境。

在這里插入圖片描述

主程序

#include "hal_data.h"
#include < stdio.h >
#include "Digital_Light_ISL29035.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_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;
    }
}


/* 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;
    }
}


uint32_t  timeout_ms = 100000;
uint32_t  timeout_ms1 = 100000;
uint32_t lux =0;

/*******************************************************************************************************************//**
 * 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);


    /* 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");
        /* 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);


        DigitalLightISL29035_init();
        R_BSP_SoftwareDelay(500U, BSP_DELAY_UNITS_MILLISECONDS);
        lux = DigitalLightISL29035_readIRLux();
        printf("lux=%dn",lux);

        OLED_Init();            //初始化OLED
        OLED_Clear()    ;
        OLED_ShowCHinese(0,0,0);//記
        OLED_ShowCHinese(16,0,1);//帖
        OLED_ShowString(0,2,"Lux:",16);
        OLED_ShowNum(32,2,lux,3,16);


        /* Wait for minimum time required between transfers. */
        R_BSP_SoftwareDelay(2, BSP_DELAY_UNITS_SECONDS);

        while(1)
        {

            OLED_Clear()    ;
            OLED_ShowCHinese(0,0,0);//記
            OLED_ShowCHinese(16,0,1);//帖
            OLED_ShowString(0,2,"Lux:",16);
            lux = DigitalLightISL29035_readIRLux();
            if(lux< 10)
                OLED_ShowNum(32,2,lux,1,16);
            else if(lux >=10&&lux< 100)
                OLED_ShowNum(32,2,lux,2,16);
            else if(lux >=100&&lux< 1000)
                OLED_ShowNum(32,2,lux,3,16);
            else if(lux >=1000&&lux< 10000)
                OLED_ShowNum(32,2,lux,4,16);
            printf("lux=%dn",lux);
            R_BSP_SoftwareDelay(1000U, BSP_DELAY_UNITS_MILLISECONDS);

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

Digital_Light_ISL29035.h

/*
 * Digital_Light_ISL29035.h
 *
 *  Created on: 2023年2月1日
 *      Author: a8456
 */

#ifndef DIGITAL_LIGHT_ISL29035_H_
#define DIGITAL_LIGHT_ISL29035_H_
#include "stdint.h"


#define ISL29035_I2C_ADDRESS    0x44   //the 7bits i2c address

#define COMMAND_I               0x00
#define COMMAND_II              0x01
#define DATA_L                  0x02
#define DATA_H                  0x03
#define INT_LT_L                0x04
#define INT_LT_H                0x05
#define INT_HT_L                0x06
#define INT_HT_H                0x07
#define CHIP_ID                 0x0f

#define OPMODE_ALS_ONCE         ((0x1)< < 5)
#define OPMODE_IR_ONCE          ((0x2)< < 5)
#define OPMODE_ALS_CONTI        ((0x5)< < 5)
#define OPMODE_IR_CONTI         ((0x6)< < 5)

#define FULL_SCALE_LUX_RANGE0   1000
#define FULL_SCALE_LUX_RANGE1   4000
#define FULL_SCALE_LUX_RANGE2   16000
#define FULL_SCALE_LUX_RANGE3   64000
#define DEFAULT_LUX_RANGE_INDEX 1       //should be [0,3]

#define INTEGRATION_TIME3       0.0256  //ms, this also configure the ADC to 4bits
#define INTEGRATION_TIME2       0.41  //ms, this also configure the ADC to 8bits
#define INTEGRATION_TIME1       6.5  //ms, this also configure the ADC to 12bits
#define INTEGRATION_TIME0       105  //ms, this also configure the ADC to 16bits
#define DEFAULT_INTEGRATION_TIME_INDEX 1  //should be [0,3]

uint8_t DigitalLightISL29035_readRegister(uint8_t reg_address);
void DigitalLightISL29035_writeRegister( int reg_address, uint8_t val) ;
int DigitalLightISL29035_init(void) ;
uint32_t DigitalLightISL29035_readIRLux(void);

#endif /* DIGITAL_LIGHT_ISL29035_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)注

    2561

    文章

    52198

    瀏覽量

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

    關(guān)注

    242

    文章

    23614

    瀏覽量

    669094
  • OLED
    +關(guān)注

    關(guān)注

    119

    文章

    6253

    瀏覽量

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

    關(guān)注

    14

    文章

    1580

    瀏覽量

    78338
  • RA4M2
    +關(guān)注

    關(guān)注

    2

    文章

    20

    瀏覽量

    1036
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于RT-Thread+RA6M4的光照監(jiān)控設(shè)備相關(guān)資料介紹

    ISL29035采集光照數(shù)據(jù);LCD1206顯示數(shù)據(jù)及用戶設(shè)置顯示;按鍵開(kāi)關(guān)機(jī)及光照刷新時(shí)間設(shè)置;LED
    發(fā)表于 08-15 15:02

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】3. 硬件IIC讀取ISL29035采集光照強(qiáng)度

    開(kāi)發(fā)板體驗(yàn)】9. 用兩路DAC在示波器顯示一個(gè)愛(ài)心RA4M2挑戰(zhàn)賽分享:【RA4M2設(shè)計(jì)挑戰(zhàn)賽】1. RASC配置FreeRTOS【
    發(fā)表于 02-11 21:02

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

    準(zhǔn)備一個(gè)開(kāi)發(fā)板,這里我準(zhǔn)備的是芯片型號(hào)R7FAM2AD3CFP的開(kāi)發(fā)板:IIC配置配置RA4M2的I2C接口,使其作為I
    發(fā)表于 02-14 10:44

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

    一個(gè)開(kāi)發(fā)板,這里我準(zhǔn)備的是芯片型號(hào)R7FAM2AD3CFP的開(kāi)發(fā)板:IIC配置配置RA4M2的I2C接口,使其作為I
    發(fā)表于 02-22 15:11

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】模擬IIC isl29035驅(qū)動(dòng)

    參照上次文檔添加模擬iichttps://bbs.elecfans.com/jishu_2336359_1_1.html編寫光照模塊 isl29035 模塊驅(qū)動(dòng)#define DBG_TAG
    發(fā)表于 02-23 22:46

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

    這篇來(lái)測(cè)試讀取isl29035模塊數(shù)據(jù),通過(guò)串口輸出照度值。一、i2c接口配置二、ISL29035
    發(fā)表于 02-26 21:26

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】作品提交 - 環(huán)境檢測(cè)網(wǎng)關(guān)設(shè)備

    3. 硬件IIC讀取ISL29035采集光照強(qiáng)度【RA4M2設(shè)計(jì)挑戰(zhàn)賽】4. DA14531藍(lán)牙模塊使用【
    發(fā)表于 02-26 21:50

    RA4M2設(shè)計(jì)挑戰(zhàn)賽】串口打印

    |開(kāi)發(fā)環(huán)境:IDE:MKD 5.30開(kāi)發(fā)板:RA-Eco-RA4M2MCU:R7FA4M2AD3CFP官方資料分享一下串口了解。
    發(fā)表于 03-04 22:35

    【精品合集】瑞薩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)賽】讀取
    發(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>表

    ISL29035 數(shù)據(jù)

    ISL29035 數(shù)據(jù)
    發(fā)表于 04-19 20:01 ?0次下載
    <b class='flag-5'>ISL29035</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 ?1682次閱讀
    <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>