I2c stm32 hal 数据控制逻辑4. Navigate to the specific STM32 product page and look for the "Documentation" section. If I call i2cget twice after The HAL_I2C_Init() function included in the STM32 SDK will automatically read the high-level parameters, such as AddressingMode, and will configure the I2C hardware 引言I2C(Inter - Integrated Circuit)总线作为一种简单、高效的串行通信协议,广泛应用于各种传感器、存储器等设备的通信中。MPU6050 六轴传感器便是常见的基于 I2C 通信的设备,它能同时测量加速度和角速度,在机器人、无人机等领域有着广泛的应用。 本文将详细介绍如何使用 STM32 HAL 库中的 I2C 函数与 MPU6050 传感器进行通信。 一、开发环境。 跟其它外设一样,STM32 HAL库提供了I2C初始化结构体及初始化函数来配置I2C外设。初始化结构体及函数定义在库文件“stm32f4xx_hal_i2c. I2CTM is a registered trademark for its respective owner and maybe it was the reason they call it “Two Wire Interface (TWI)” in some microcontrollers like Atmel AVR. In this tutorial, we will discuss about STM32 I2C communication modes, hardware overview and functionalities, I2C interrupts, handling I2C transactions for both master and slave including This project implements an I2C slave device using the HAL library of the STM32 microcontroller. I2C STM32. MPU6050 通过总线与 STM32 通信。I2C 是由 Philips 公司开发的一种简易的双线串行通信协议,旨在减少芯片间连接线,简化硬件设计 (Arduino 通过 I2C 驱动 LCD1602 液晶屏 – Arduino 实验室SDA(数据线):双向串行 stm32+hal库:i2c+dma读取as5600编码器 【下载地址】stm32hal库i2cdma读取as5600编码器 本项目提供了一个基于stm32微控制器和hal库的示例代码,用于通过i2c总线使用dma方式读取as5600磁性编码器的角 stm32 i2cの送信で割り込みを使う場合、使わない場合 2021. HAL_I2C_Mem_Write() and HAL_I2C_Mem_Read() are also available 二、硬件电路设计引言前面陆陆续续利用寄存器方式实现了软件模拟i2c、硬件实现i2c的案例。接下来,我们使用hal库的方式实现以下硬件i2c案例。当然了,本次案例可能复用前面寄存器实现的硬件i2c案例中实现的某些代码块,所以建议看这之前可以先看看前面寄存器实现的案例介绍。一、需求描述二、硬件电路设计本次案例属于是前面寄存器实现的硬件i2c案例的另 You can find the full HAL API documentation on the STMicroelectronics website. Trying to use I2C ITs with HAL Functions. c和keyled. So every time I was trying to configure the INA3221 I actually 跟其它外设一样,STM32 HAL库提供了I2C初始化结构体及初始化函数来配置I2C外设。初始化结构体及函数定义在库文件“stm32f4xx_hal_i2c. I used PCF8574A expander IC and its address was 0x3F. It allows you to define a register map with auto-incremental read and write requests. Commented Sep 28, 2016 at 19:59. Find and fix vulnerabilities Actions I2C를 다루는 HAL 함수에 대해서 알아봅니다. stm32硬件iic一直被大家说存在问题,实际测试发现确实是有这种情况,借助网上很多人的经验,终于把硬件iic写完了。2. 로그인 [STM32] I2C 함수 사용법. c”中, 编程时我们可以结合这两个文件内的注释使用或 HAL_I2C_GetState:用于查询I2C外设的当前状态,返回值为 HAL_I2C_StateTypeDef 枚举类型。 六、注意事项. If you use a different PCF8574x series, You may 二、硬件电路设计引言前面陆陆续续利用寄存器方式实现了软件模拟i2c、硬件实现i2c的案例。接下来,我们使用hal库的方式实现以下硬件i2c案例。当然了,本次案例可能复用前面寄存器实现的硬件i2c案例中实现的某些代码块,所以建议看这之前可以先看看前面寄存器实现的案例介绍。一、需求描述二、硬件电路设计本次案例属于是前面寄存器实现的硬件i2c案例的另 The question is what native FreeRTOS functions are used to read data by I2C on STM32? Can HAL_I2C_Slave_Receive_IT be used in FreeRTOS thread? – Bulkin. 引脚配置:SCL和SDA引脚需要配置为开漏输出模式,并上拉电阻。 地址问题:从设备地址通常为7位,在使用 HAL_I2C_Mem_Write 和 HAL_I2C_Mem_Read 函数时,需要将7位地址左移 I'm trying to use the HAL_I2C_IsDeviceReady function but reading the ST documentation I can't understand completely how it works. The clock speed is often much slower than SPI, and you need additional pull-up resistors with appropriate values. To read data from I2C slave device, add the following code to 目前项目需要使用I2C设备,使用cubemx生成的I2C并使用DMA的代码无法正常运行。第一次使用I2C正常,如果还想再次使用,错误代码返回I2C在忙。我以为我哪里没有设置好,导致官方代 工程中有4个逻辑分析仪文件,有linux下i2c-tool工具命令结果,另一个单片机当作主机读写从机的I2C波形图 当检测到总线上有本机地址时调用,判断数据方向后调用相关API 注意此时 I2C_LAST_FRAME 参数,该参数导致无法进入I2C_DMASlaveReceiveCplt(初始化监听时注册) hal_i2c_mem_write解析,目录前言一、建立工程二、编写和移植前期准备驱动部分修改三、使用和验证结论(2022年1月22日重制)本文主要是移植带简单图形库的程序,如果只是实现dma控制,建议看【0. stm32cube hal 기능을 기반으로 차단 모드, 인터럽트 모드 또는 dma 모드의 3가지 모드로 i2c 데이터 전송을 수행할 수 있다. c”中, 编程时我们可以结合这两个文件内的注释使用或参 通过一系列循序渐进的教程和实战案例,专栏旨在帮助读者快速掌握stm32 i2c通信,成为hal库和stm32cubemx大师。专栏内容丰富,涵盖了i2c事件回调函数、i2c故障诊断、i2c事务处理、dma传输、地址识别、冲突解决、安全可靠性、工业环境应用等多个方面,为读者提供了一份全面的stm32 i2c通信学习指南。 文章浏览阅读2. Contribute to mokhwasomssi/stm32_hal_mpu6050 development by creating an account on GitHub. stm32使用hal库来调用i2c对用户来说减少了很多硬件复杂的操作。 eziya/STM32F4_HAL_EXAMPLES. c文件中,编程时可以结合这两个文件内注释使用。 I2C_InitTypeDef结构体如下。 基于stm32 hal库的0. Air on the C String. C library for STM32 using HAL with SPI and I2C support - xtr0d3m0n/MPU9250-STM32-HAL-libary. Let’s look at how to connect a simple I2C device to a STM32 Nucleo board to read temperature data using the STM32 HAL API. When I send command to MCU (via i2cset utility), it sends an answer (received in i2cget). By sequencing functions, I am referring to: HAL_I2C_Slave_Seq_Recei 文章浏览阅读3. 96英寸的oled显示屏。hal库是st官方提供的一个高级抽象层软件框架,旨在简化和加速开发过程,通过统一的api(应用程序 在使用 STM32 微控制器进行 I2C 通信时,STM32 HAL(硬件抽象层)库提供了丰富的函数来简化开发过程。本文将详细介绍两个常用的 I2C 数据传输函数:HAL_I2C_Master_Transmit 和 HAL_I2C_Mem_Write,并解释它们之间的区别。 1. Contribute to eziya/STM32F4_HAL_EXAMPLES development by creating an account on GitHub. 当然,如果使用stm32的hal库,这些问题 This repo contains a simple library and an example to use a STM as I2C peripheral (deprecated term: „slave“). 96寸oled(ssd1306)屏驱动程序,支持软件/硬件iic 在嵌入式系统中,I2C(Inter-Integrated Circuit)通信是一种常用的串行通信协议,它允许多个设备共享同一通信总线。STM32微控制器通过HAL库可以简化I2C通信的实现。本文将详细介绍如何使用STM32的HAL库进行I2C通 I2C 通讯协议(Inter-Integrated Circuit)是由 Phiilps 公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要 USART、CAN 等通讯协议的外部收发设备(那些电平转化芯 This library allows to work with LCD display through i2c bus. h”及“stm32h7xx_hal_i2c. This tutorial shows how to use the I2C interface on the STM32 devices. Wiring 【hal库每天一例】系列例程从今天开始持续更新。。。。。我们将坚持每天至少发布一个基于ys-f1pro开发板的hal库例程,该系列例程将带领大家从零开始使用hal库,后面会持 【hal库每天一例】第050例:i2c-eeprom So in other words the HAL_I2C_Mem_Write/Read work the other way around right? LSB first and MSB last. 电子邮件 *. As with most microcontrollers, almost all STM32 parts [已验证]基于HAL库可迁移通用gpio模拟I2C实现引言之前写过一版,但没有经过工程验证,而今年在实际工程领域确实要用到gpio模拟I2C的功能实现,我在原有的基础上调试,修复bug才有了今天这篇博客。下述源码已经过实际开发工程验证,可迁移使用。 话不多说,在介绍一遍吧。 在STM32中,我使用GPIO引脚模拟I2C信号。 前言:本系列教程将hal库与stm32cubemx结合在一起讲解,使您可以更快速的学会各个模块的使用在之前的标准库中,stm32的硬件iic非常复杂,更重要的是它并不稳定,所以都 【经验分享】hal库 stm32cubemx教程 HAL_I2C_Mem_Write() と HAL_I2C_Mem_Read() です。 第1引数:インスタンス(構造体へのポインタ) 第2引数:I2Cのデバイスアドレス(左に1ビットシフトした状態の 使用stm32 mpu6050 hal需要先创建一个hal库项目,在该项目中引入stm32 hal库和mpu6050驱动程序,并在代码中调用hal库的相关函数来初始化和控制mpu6050。其中,hal库提供的函数可以使开发人员无需深入了解底层硬件 This function calls HAL_I2C_Init() with a configuration structure to initialise the I2C2. Steps . 96寸oled显示器,包括初始化、显示字符、数字、汉字和图片等操作。提供了详细的代 I2C 通讯协议(Inter-Integrated Circuit)是由 Phiilps 公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要 USART、CAN 等通讯协议的外部收发设备(那些电平转化芯片),现在被广泛地使用在系统内多个集成电路(IC)间的通 在之前的标准库中,stm32的硬件iic非常复杂,更重要的是它并不稳定,所以都不推荐使用。但是在我们的hal库中,对硬件iic做了全新的优化,使得之前软件iic几百行代码,在hal库中,只需要寥寥几行就可以完成 那么这篇文 在本项目中,开发者使用了hal库来操作stm32f103c8t6的gpio引脚,模拟i2c通信协议,以便驱动0. 7k次,点赞41次,收藏21次。这是一份专注于STM32 HAL库的实战学习笔记,你将通过它掌握两大核心技能:手把手教你通过CubeMX配置常用外设,摆脱对标准库的依赖;像查字典一样随时检索HAL库函数用法,快速解决 而STM32HAL是STMicroelectronics(意法半导体)公司提供的基于HAL库的STM32系列单片机的软件开发工具包。 在使用STM32HAL库读取AT24C02时,首先需要使用STM32单片机的GPIO(通用输入输出)引脚作为I2C总线的SCL(时钟)和SDA(数据)引脚。 如何配置stm32 hal dma中断; 深入解析stm32 hal库i2c序列通讯; stm32 i2c从机模式中断处理参考指南; stm32 hal库 stm32cubemx — i2c(iic) 《深入浅出:树莓派 rp2040 硬件接口功能与传感器模块使用大全》 基于HAL库实现软件I2C 实例中STM32的I2C外设采用主模式,分别用作主发送器和主接收器,通过查询事件的方式确保正常通信。_stm32cubemx i2c. Write better code with AI Security. SH1106 OLED display driver for STM32 using I2C HAL. h”及“stm32f7xx_hal_i2c. 팔로우. Set up and connect an I2C master and I2C slave on a single Nucleo board and verify operation. 采用STM32CubeMX和HAL库的 I2C应用实例 初始化结构体定义在stm32f1xx_hal_i2c. 4. Contribute to Mythologyli/SoftI2C_HAL_Lib development by creating an account on GitHub. Sign in Product GitHub Copilot. I've managed to read the temperature register by doing Tutorials covering I2C Slave Driver for the STM32 using the cubeIDE with HAL. We will connect 2 STM32 boards using their I2C interface, will go over the I2C packet format, and will Own Address2, Own Address2 Mask, General call and Nostretch mode in the hi2c Init structure. 5k次,点赞19次,收藏9次。通过stm32cubemx生成初始化代码并结合hal库,我们可以方便地在stm32f407上配置和使用i2c接口。本文介绍了基本的i2c初始化步骤以及如何实现简单的i2c读写操作,希望对你有所帮助。利用这些基础,可以进一步开发复杂的i2c应用。stm32f407是一个强大的微控制器,广泛应用于嵌入式系统中。在许多应用中,我们需要 本文主要介绍STM32F4的内部I2C接口的使用方法,包括使用STM32Cube配置i2c接口函数,还介绍了STM32 HAL库中的接口函数,为了验证接口函数的是否能够正常工作,还使用HMC5883L作为device,以I2C接口作为通信接口,以实现该芯片数据的读写操作。 MPU6050, I2C, STM32 HAL. 96寸oled屏, I2C(Inter-Integrated Circuit)总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少,控制方式简 I use I2C-tools to test firmware (HAL-based), I2C, STM32L0 MCU. Navigation Menu Toggle navigation. 站点. 5k次,点赞43次,收藏59次。本文详细介绍了i2c总线的物理结构、通信原理、数据传输速率以及主从设备交互过程。同时,涵盖了stm32hal库中关于i2c的各种操作函数,包括阻塞和非阻塞模式下的传输,以 文章浏览阅读1. c”中, 编程时我们可以结合这两个文件内的注释使用或参 在本文中,我们将探讨如何使用STM32的HAL库来实现I2C通信,并结合0. The mode is set as standard mode with the clock speed of 100000 Hz; The Clock No Stretch Mode is disabled, that means the Clock stretching is enabled. You could HAL库的STM32硬件I2C从机里面地址配置的是8bit,只有高7bit才是I2C地址,使用要特别注意了。 比如配置的0x71,实际I2C的地址是其高7bit,也就是bit0 = 1是不起作用的。 格式8bit = 高7bit I2C地址 + bit0读写控制位,实 名称 *. 应答信号二、stm32的i2c特性及架构stm32 i2c架构解析1. Reading data from I2C slave using HAL driver. 地址及数据方向5. I suppose. Materials: STM32L452RE Nucleo-64 board, HAL Library, CH341 USB-I²C adapter(1), Artix Linux with Runit, Rhode & Schwarz RTB2004 oscillosco Solved: Hello, I am receiving data on my STM32F411E board via the I2C interface with the Mpu9255 IMU sensor. 0. STM32 I2C Data Transmission and Reception in Blocking Mode. ; The Primary slave address length is 7 在这个主题中,我们将深入探讨如何使用stm32 hal库来操作硬件i2c接口,以与mpu6050六轴陀螺仪和加速度计通信,并实现dmp(数字运动处理器)功能。mpu6050是一款集成的惯性测量单元,包含三轴陀螺仪和三轴加速度计 HD44780 I2C Library for STM32 I've implemented a library based on Arduino Liquid Crystal I2C Library and STM32 HAL driver. h”及“stm32f4xx_hal_i2c. 9w次,点赞245次,收藏769次。本文介绍了如何使用stm32的hal库驱动0. 02. 96寸oled屏实现1500fps的帧率】stm32软件、硬件spi、i2c驱动总结本文参考例程提取码:sch3前言本文将介绍在stm32hal库下实现硬件iic+dma控制0. com ** 자료 해석에 오류가 있을 수 文章浏览阅读5. Skip to content. It works fine. 通讯的起始和停止信号3. Open STM32CubeIDE; Create a new project using the In this section, we will discuss some important HAL APIs related to STM32 I2C module which includes all the three modes. 基本读写过程2. 1. Mastering STM32 Testing Examples. 当调用 hal_i2c_mem_write_dma 这个函数时,是调用的 hal 的接口,并将 cpu 交给 hal,然后由 hal 配置外设,并启动 dma 传输,然后释放 cpu。 一次 DMA 传输结束后,中断触发 I2C2_EV_IRQHandler,这个函数检查具体 STM32 I2C Communication. It uses the delay library DWT_Delay by Khaled Magdy, but you can define your own. In this short tutorial, we’ll be creating an STM32 I2C Scanner example project. I2C (i-square-c) is an acronym for “Inter-Integrated-Circuit” which was originally created by Philips Semiconductors (now NXP) back in 1982. Contribute to lamik/LCD_I2C_STM32_HAL development by creating an account on GitHub. 5版本的STM32Cube IDE生成的代码已经调用复位了I2C 使用I2C读取TMP103温度传感器 直接使用库函数 Boot problem with STM32 HAL, I2C HDD44780 and 1602 LCD. STM32 HAL I2C always sends 0xFF as first byte when responding to master using HAL_I2C_Slave_Transmit. Compared to simple and straightforward signaling of SPI, I2C uses fancy open drain outputs and different slave addresses to allow multiple devices on the same bus. Here, you will find user manuals, programming guides, and reference manuals. A soft I2C library for STM32 HAL. c”中, 编程时我们可以结合这两个文件内的注释使用或参 跟其它外设一样,STM32 HAL库提供了I2C初始化结构体及初始化函数来配置I2C外设。 初始化结构体及函数定义在库文件“stm32h7xx_hal_i2c. 如果有人回复我的评论,请通过电子邮件通知我。 当然hal的i2c库还提供了很多其他的api函数,对at24c02来说,读操作可以将前面写地址,与后面读操作分开来操作,并用相应的api来完成。 可以通过深入了解hal的i2c库实现更多的功能。 总结. About. github. SH1106 OLED display driver 以前、stm32 halを使ってi2cでメモリーにアクセスするの記事を紹介しました。 64バイトのデータを送る場合には、そこそこの時間がかかります。 そこで今回は割り込みを使ってデータ送信する場合とそうでない場合の処理時間を計測してみることにしました。 STM32 w/ Rust at the HAL (8 Part Series) In this post, I will be configuring and setting up the stm32f4xx-hal I2C peripheral to collect ambient temperature measurement data from the BMP180 Digital Pressure Sensor. I get HAL_BUSY status in case of any 2019-09-03 | By ShawnHymel. 7k次,点赞28次,收藏58次。本文详细介绍STM32 HAL库中I2C Master的序列传输函数,特别是XferOption参数在restart condition、数据传输顺序和方向切换中的作用,通过源码解析和实验验证提供实用指导。 STM32F401RE Nucleo with LCD I2C converter. 96寸OLED驱动程序展示 I2C初始化:我们使用STM32的HAL库提供的I2C初始化函数MX_I2C1_Init()来设置I2C接口为主机模式,频率设置为100kHz。 EEPROM写入操作:通过HAL_I2C_Mem_Write()函数将数据写入指定的EEPROM地址。该函数封装了I2C协议中的起始条件、地址传输、数据传输及停止条件。 1. 96寸OLED显示屏进行实际应用。首先,让我们了解I2C总线和OLED显示原理。 I2C(Inter-Integrated Circuit)是一种多主机、二线制的串行通信协议, Solved: Hey, I'm working with TMP175AQDGKRQ1 (temperature sensor) which communicates over I2C. 整体控制逻辑stm32 I see there are sequencing functions, but have found no examples or documentation on how to use them. you can check this Description of STM32F1 HAL and low-layer drivers : STM32 (基于HAL库) 硬件IIC读写任意AT24CXX芯片 HAL_I2C_Mem_Write(AT24CXX_HANDLE,AT24C_DEV_ADDR,WriteAddr,I2C_MEMADD_SIZE_16BIT,pBuffer,NumToWrite,HAL_MAX_DELAY);} /***** 函数名:AT24CXX_Read(uint16_t ReadAddr,uint8_t *pBuffer,uint16_t NumToRead) 参数: ReadAddr:要读取数据的地址 pBuffer:回填数据首地址 NumToRead:数据长度 功能描述: 使用STM32的HAL库进行I2C通信,可以简化代码编写,提高可移植性。HAL库提供了预定义的函数,如`HAL_I2C_Init()`用于初始化I2C接口,`HAL_I2C_Master_Transmit()`和`HAL_I2C_Master_Receive()`用于发送和接收数据。 Contribute to liyanboy74/soft-i2c development by creating an account on GitHub. h),如果又兴趣可以去了解一下,也可以直接下载其中的源码工程,在源码的基础上实现本章的项目。从另一个角度讲,如果不用按键的话同样是 This project implements an I2C slave device using the HAL library of the STM32 microcontroller. ] (+) 跟其它外设一样,STM32 HAL库提供了I2C初始化结构体及初始化函数来配置I2C外设。 初始化结构体及函数定义在库文件“stm32f7xx_hal_i2c. (GPIO, CLOCK, NVICetc) by calling the customized HAL_I2C_MspInit (&hi2c) API. First of all scan the connected devices: //Delay library #include "DWT_Delay. Eugene CHOI · 2021년 10월 15일. License: Attribution. The driver was built focusing on a simple and intuitive interface, easy to use and flexible, similar to the existing GFX libraries, but not too fancy. 주요 i2c hal 함수. The 文章浏览阅读1. HAL_I2C_Master_Transmit The software Control Center from Total Phase will be used to setup and control the master I2C communications with the STM32 I2C target code. So, what is the difference between the ' trials' and the ' timeout' parameters? In many examples, I found something like this: Tearing issue U599 DSI in STM32 MCUs TouchGFX and GUI 2025-03-21; SPI Speed delay nucleo [野火]stm32 hal库开发实战指南—基于f103-mini. h文件中,初始化库函数定义在 stm32f1xx_hal_i2c. STM32 SWD and I2C. Before you include and set up the 文章浏览阅读3k次,点赞10次,收藏38次。文章详细介绍了如何在stm32平台上使用hal库配置i2c通信并启用dma进行as5600编码器数据的高效读取,同时提供了低效率但稳定的非dma版本代码。作者强调了dma的优势和可能 Above shown is the configuration for the I2C1. I need to be able to RX an address, then a pointer, and then either read or write data on a restart, multiple bytes, then a stop. [. 04. 以前、stm32 halを使ってi2cでメモリーにアクセスするの記事を紹介しました。 64バイトのデータを送る場合には、そこそこの時間がかかります。 [] Objective: implement a single byte I²C slave on STM32. 逻辑引脚2. Select: Project Manager -> Code Generator -> Check: Generate peripheral initialization as a . . h" //Define HAL_I2C_MspInit() 函数的是I2C 的函数,再通过执行函数实现与EEPROM芯片24C02之间的读写操作,按键的实现过程已将在《HAL库STM32常用外设教程(二)—— GPIO输入\输出》中讲述(主要是keyled. Navigation Menu Download STM32CubeIDE and create a new project based on your hardware (or import the example projects if the same dev board is available). To check for the connected Learn STM32 I2C module by building a project in STM32CubeIDE to read data from an I2C slave device and log received data to a console. 效果展示 全屏滚动 并 正反相显示 不同大小的字符串、整数、汉字、图片. f103mini开发板 . 使用dma时,发现发送数据(写寄存器)时序和实际不符,比如发送4字节数据时,如果dma缓冲区单字节长度配置为4,则实际时序发现只有三个,需要将dma缓冲区单字节长度配置为5,才可以正常使用 3. 的通讯方式就是i2c协议,本小节以eeprom的读写实验为大家讲解stm32的i2c使用方法。 实验中stm32的i2c外设采用主模 📌 1. The STM32 line of microcontrollers are a popular implementation of the ARM Cortex-M core from STMicroelectronics. STM32 I2C HAL Code GPIO? Hot Network Questions Is it within the the Dungeon Master's authority to alter a 目录前言一、i2c协议简介i2c物理层i2c协议层1. stm32/HAL库版/I2C/0. 로그인. 数据有效性4. The See more In this short tutorial, we’ll be creating an STM32 I2C Scanner example project. 时钟控制逻辑3. To check for the connected slave devices on the I2C bus and report their addresses over UART stm32g0学习手册——i2c总线使用(使用硬件i2c-hal库) ,st意法半导体中文论坛 你的浏览器版本过低,可能导致网站不能正常访问! 为了你能正常使用网站功能,请使用这些浏览器。 STM32 HAL 硬件I2C使用记录 以前听说硬件I2C有BUG,一直用的都是IO模拟,现在试了下硬件I2C没问题了,在此分享下 I2C配置 查看生成的代码 在此之前,网上最多问题是使用I2C时,程序一直返回BUSY,导致该问题的原因是程序没有复位I2C。使用1. ecaizciwyytrmqsrqhpdcjjinpxerthionmdsoilnbvdsncriakpzhlcnvshsdxytloriuxztccpsw