首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

我无法使用I2C从STM32F103上的mpu6050获取数据

I2C是一种串行通信协议,用于在微控制器和外部设备之间传输数据。STM32F103是一款常用的微控制器,而MPU6050是一种常见的六轴传感器,用于测量加速度和角速度。

在使用I2C从STM32F103上的MPU6050获取数据时,可能会遇到以下问题和解决方法:

  1. 硬件连接问题:确保正确连接MPU6050和STM32F103的I2C引脚。通常,MPU6050的SDA引脚连接到STM32F103的SDA引脚,SCL引脚连接到STM32F103的SCL引脚。同时,确保电源和地线连接正确。
  2. I2C初始化问题:在使用I2C之前,需要初始化I2C控制器。这包括设置时钟频率、使能I2C控制器、配置引脚等。具体的初始化代码取决于使用的开发环境和编程语言。以下是一个示例代码片段,用于初始化I2C1控制器:
代码语言:txt
复制
// 初始化I2C1控制器
I2C_InitTypeDef I2C_InitStruct;
I2C_InitStruct.I2C_Mode = I2C_Mode_I2C;
I2C_InitStruct.I2C_DutyCycle = I2C_DutyCycle_2;
I2C_InitStruct.I2C_OwnAddress1 = 0x00;
I2C_InitStruct.I2C_Ack = I2C_Ack_Enable;
I2C_InitStruct.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;
I2C_InitStruct.I2C_ClockSpeed = 100000;

I2C_Init(I2C1, &I2C_InitStruct);
I2C_Cmd(I2C1, ENABLE);
  1. MPU6050寄存器配置问题:MPU6050有一系列寄存器,用于配置和读取传感器数据。在使用I2C读取数据之前,需要配置MPU6050的寄存器。以下是一个示例代码片段,用于配置MPU6050的寄存器并读取加速度和角速度数据:
代码语言:txt
复制
// 配置MPU6050寄存器
uint8_t configData[2];
configData[0] = MPU6050_REGISTER_PWR_MGMT_1;
configData[1] = 0x00; // 将MPU6050从睡眠模式唤醒
I2C_WriteBytes(I2C1, MPU6050_ADDRESS, configData, 2);

// 读取加速度和角速度数据
uint8_t accelData[6];
uint8_t gyroData[6];
I2C_ReadBytes(I2C1, MPU6050_ADDRESS, MPU6050_REGISTER_ACCEL_XOUT_H, accelData, 6);
I2C_ReadBytes(I2C1, MPU6050_ADDRESS, MPU6050_REGISTER_GYRO_XOUT_H, gyroData, 6);

// 解析数据
int16_t accelX = (accelData[0] << 8) | accelData[1];
int16_t accelY = (accelData[2] << 8) | accelData[3];
int16_t accelZ = (accelData[4] << 8) | accelData[5];
int16_t gyroX = (gyroData[0] << 8) | gyroData[1];
int16_t gyroY = (gyroData[2] << 8) | gyroData[3];
int16_t gyroZ = (gyroData[4] << 8) | gyroData[5];

以上代码片段仅供参考,具体的实现取决于使用的开发环境和编程语言。

关于云计算和IT互联网领域的名词词汇,以下是一些常见的术语和相关信息:

  1. 云计算(Cloud Computing):一种通过网络提供计算资源和服务的模式。它允许用户根据需要获取和使用计算资源,而无需拥有和维护物理硬件。
  2. 前端开发(Front-end Development):指开发用户界面的技术和工作。它涉及使用HTML、CSS和JavaScript等技术创建和优化网站或应用程序的外观和交互。
  3. 后端开发(Back-end Development):指开发应用程序的服务器端逻辑和功能的技术和工作。它涉及处理数据、与数据库交互、实现业务逻辑等。
  4. 软件测试(Software Testing):指对软件进行验证和验证的过程。它旨在发现和修复软件中的错误和缺陷,以确保其质量和可靠性。
  5. 数据库(Database):用于存储和管理数据的系统。它提供了一种结构化的方式来组织和访问数据,以满足应用程序和用户的需求。
  6. 服务器运维(Server Administration):指管理和维护服务器和相关基础设施的任务和职责。它包括安装、配置、监视和维护服务器,以确保其正常运行和高效性能。
  7. 云原生(Cloud Native):一种构建和部署应用程序的方法论,旨在充分利用云计算的优势。它强调容器化、微服务架构、自动化和可伸缩性。
  8. 网络通信(Network Communication):指在计算机网络中传输数据和信息的过程。它涉及使用各种协议和技术来实现数据的传输和交换。
  9. 网络安全(Network Security):指保护计算机网络和系统免受未经授权的访问、攻击和损害的措施和实践。它包括防火墙、加密、身份验证等安全措施。
  10. 音视频(Audio and Video):指处理和传输音频和视频数据的技术和方法。它涉及编码、解码、流媒体、音视频传输协议等。
  11. 多媒体处理(Multimedia Processing):指处理和操作多媒体数据(如图像、音频、视频等)的技术和方法。它包括压缩、编辑、转码等操作。
  12. 人工智能(Artificial Intelligence):一种模拟人类智能的技术和方法。它涉及机器学习、深度学习、自然语言处理等领域,用于实现自主决策和智能行为。
  13. 物联网(Internet of Things,IoT):指将物理设备和对象连接到互联网的网络。它允许设备之间相互通信和交换数据,以实现自动化和智能化。
  14. 移动开发(Mobile Development):指开发移动应用程序的技术和工作。它涉及使用移动平台(如Android和iOS)的工具和语言来创建应用程序。
  15. 存储(Storage):指存储和管理数据的技术和设备。它包括硬盘驱动器、闪存、云存储等,用于持久保存和访问数据。
  16. 区块链(Blockchain):一种分布式账本技术,用于记录和验证交易和数据。它具有去中心化、不可篡改和透明等特点,被广泛应用于加密货币和智能合约等领域。
  17. 元宇宙(Metaverse):指虚拟现实和增强现实技术的结合,创造出一个虚拟的、与现实世界相似的数字空间。它提供了交互、沟通和创造的机会,被认为是下一代互联网。

以上是对问题的完善和全面的回答,希望能对您有所帮助。如果需要了解更多关于腾讯云相关产品和服务的信息,请访问腾讯云官方网站:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

长亭wiki获取想要数据

,所以这就是一个比较好资源库,有大量喜欢分享朋友在上面,所以这就是目标。...今天主题是长亭 wiki,也就是 wiki.ioin.in。 获取 wiki 平台上所有的文章链接 这个工作肯定不是通过纯手工可以搞定,必须使用工具,那么自己写工具吗?...保存完之后,就可以用我们 emeditor,这个编辑器是最喜欢,功能很强大,把所有短链接提取出来,如下图: ?...分析获取链接数据 拿到结果之后,我们要把这里面涉及网站做个统计,看看哪些网站出现次数最多,发布文章最多,这里可以使用 linux 下两个命令:sort 、 uniq。...下面就可以看小伙伴博客,如果内容比较好就联系大家了。

1.8K00

数据手套设计与实现

硬件设备包括弯曲度传感器、MPU6050六轴传感器、HC-05蓝牙串口通信模块、TFT显示屏、STM32F103最小系统开发板,数据手套软件开发平台为Keil uVision5,所用开发语言为C语言,...它集成了3MEMS陀螺仪,3轴MEMS加速度计,以及一个可扩展数字运动处理器DMP(Digital Motion Processor),可以使用I2C接口连接一个第三方数字传感器。...在使用时候,首先将蓝牙模块处于AT指令模式,在PC通过串口调试助手进行AT指令配置。蓝牙配置好后, 主控芯片将获取弯曲度传感器数据MPU6050数据信息用特定数据包格式通过蓝牙发送。...图片 结束语 本课题理论出发,完成了UCOS嵌入式操作系统在ARM平台上移植,提高了系统稳定性,一步步设计到实现,通过获取手指弯曲度数据、手部在空间中姿态数据,进行了数据分析及处理,给出了与五轴机械臂交互及与虚拟手交互映射方法...手套代码去下载查看 数据手套上位机代码 数据手套控制虚拟手代码 数据手套控制机械臂代码

1.3K42
  • 【附源码+原理图】看懂智能硬件原理,DIY一个简易智能手环!

    最后给大家推荐一款比较容易买到MPU6050,如图8,该模块将核心芯片和外围电路集成到一个模块并留出八个引脚,本次使用只需用到上面四个即可(具体连接参考图4)。 ?...上面是宏观I2C总线介绍了下,接下来将深入细节研究其通信过程: 串行数据传送 在总线备用时SDA和SCL都必须保持高电平状态,只有关闭I2C总线时才能使SCL钳位在低电平。...图16 一个完整数据读写操作 MPU6050驱动设计 至此,我们基本已经将I2C知识学完了,下面将结合MPU6050驱动进一步讲解其原理(该部分代码参见工程mpu6050.c部分)。...这里7-bit地址就好像指明了哪个柜子,而第6到25行内部地址就像柜子抽屉编号,而不一样之处是位于mpu6050“小抽屉”一部分存放着其采集实时数据,另一部分等着外部放一些数据来设置其采样属性...一章已经把uart.c讲解了,前几节也把i2c.c和mpu6050,c介绍了。这里直接main.c对整个工程流程进行分析:主函数中先初始化串口和MPU6050,接着进入无限循环。

    5.9K20

    基于单片机设计水平仪(STC589C52+MPU6050)

    整个系统设计思路是通过MPU6050获取设备姿态数据,然后利用STC89C52进行数据处理和计算,最后将计算得到水平偏移值通过SPI接口传输到0.96寸OLED显示屏上进行实时显示。...(3)界面设计:在OLED显示屏实时显示水平偏移值,需要设计一个简洁直观用户界面,使用户能够清楚地了解设备姿态状态。...MPU6050提供了陀螺仪和加速度计数据,可以通过读取寄存器获取这些数据。 (3)姿态计算:利用获取陀螺仪和加速度计数据,进行姿态计算。常见姿态计算算法包括互补滤波算法和卡尔曼滤波算法。...MPU6050SDA引脚(数据线)连接到STC89C52P1.1引脚,作为I2C总线数据线。 MPU6050VCC引脚连接到电源正极(3.3V或5V)。...软件方面,编写嵌入式C程序来实现系统功能。通过STC89C52与MPU6050进行通信,获取姿态传感器原始数据。根据这些原始数据进行姿态计算,得到水平偏移值。

    30930

    arduino mpu9250_arduino模拟输出

    大家好,又见面了,是你们朋友全栈君。...——Wire 类库 4)SPI总线使用——SPI 类库 MPU6050数据接口用I2C总线协议,因此我们需要Wire类库帮助来实现Arduino与MPU6050之间通信。...在arduino平台上完成MPU6050测试后,应该转而在其他平台上使用MPU6050。当然能够实现设备通信只是迈出了其中一小步,更重要是在获得惯性测量单元数据后,会对数据进行处理。...7) Wire.read():读取1B数据 在主机中,使用requestFrom()函数发送数据请求信号后,需要使用read()函数来获取数据;在从机中需要使用read()读取主机发送来数据...实例中未使用中断功能。读取数据只经过单位转换,未做其他数据处理(如果要应用在项目,可能要对原始数据进行滤波处理、数学演算等,才能给程序使用。)

    1.4K20

    基于单片机设计水平仪(STC589C52+MPU6050)

    整个系统设计思路是通过MPU6050获取设备姿态数据,然后利用STC89C52进行数据处理和计算,最后将计算得到水平偏移值通过SPI接口传输到0.96寸OLED显示屏上进行实时显示。...(3)界面设计:在OLED显示屏实时显示水平偏移值,需要设计一个简洁直观用户界面,使用户能够清楚地了解设备姿态状态。...MPU6050提供了陀螺仪和加速度计数据,可以通过读取寄存器获取这些数据。 (3)姿态计算:利用获取陀螺仪和加速度计数据,进行姿态计算。常见姿态计算算法包括互补滤波算法和卡尔曼滤波算法。...MPU6050SDA引脚(数据线)连接到STC89C52P1.1引脚,作为I2C总线数据线。 MPU6050VCC引脚连接到电源正极(3.3V或5V)。...软件方面,编写嵌入式C程序来实现系统功能。通过STC89C52与MPU6050进行通信,获取姿态传感器原始数据。根据这些原始数据进行姿态计算,得到水平偏移值。

    29760

    【STM32项目】在FreeRtos背景下实战项目的实现过程(二)

    ,这时我们就可以用到取模工具 要是想要生成图片,就是下面这个图形模式 其实取模软件上面都自带教程这里就不赘述了 获得点阵数据存储到数组当中,按照循环打印方式让像素亮起,这样就在视觉形成了自己想要图像...),一个是地址线(AD0) 电源线就不必多说了,VCC可接3.3V或5V SCL:I2C通信时钟线,用于同步数据传输,在I2C通信中,SCL由主设备控制,用于确定数据传输速率。...SDA:I2C通信数据线,用于在主设备和设备之间传输数据。...在MPU6050中,SDA引脚用于接收和发送数据 XDA和XCL:这些是MPU6050辅助I2C接口引脚,用于连接其他外部设备或传感器,并非所有版本MPU6050都包含这些引脚,具体取决于模块封装和配置...AD0:地址选择引脚,用于设置MPU6050I2C地址,通过将该引脚连接到VCC或GND,可以选择不同I2C设备地址,从而允许在同一I2C总线上连接多个MPU6050模块而不会发生地址冲突 4、语音模块

    10410

    RT-Thread实战笔记|MPU6050使用详解及DMP姿态解算

    有钱,不想受那鸟气,看这个,自己画一个,对比价格,劝你买个吧,知道自己行就行了......一个片1024字节FIFO,有助于降低系统功耗。和所有设备寄存器之间通信采用 400kHz I2C接口或 1MHz SPI接口( SPI仅MPU-6000可用)。...LSB I2C 地址地址由引脚9(AD0)设置(一般接地),本次采用是IIC通讯方式,顺便学习一下rt-threadIIC设备驱动。...它还有用于第三方数字传感器接口辅助 I2C 串行接口,比如当辅助 I2C 串行接口连接到一个三轴磁力计,MPU6050 能提供一个完整九轴融合输出到其主 I2C 端口。...,自己看着选就可以啦 硬件连接OK 软件编写 介绍2两种方式,一种是使用rt-thread平台软件包获取MPU6050数据,自己解算,另一种就是移植DMP库进行解算,小飞哥用是移植DMP库来解算

    3.2K30

    开发者成长激励计划-基于TencentOS Tiny和CH32V307_EVB星球大战BB-8机器人控制系统

    刚好借着这次使用TencentOS Tiny和CH32V307_EVB机会,结合之前研究,实现一个能够隔空操纵BB-8控制系统。...实现功能在这个控制系统中,核心板试用CH32V307_EVB,运行TencentOS Tiny,通过I2CMPU6050运动传感器获取运动姿态信息,然后生成控制指令,通过mqtt发送控制指令,发送指令控制...在这个控制系统中,通过I2C获取传感器数据使用卡尔曼过滤来优化运动姿态数据,虽然目前用于控制BB-8,经过改造,也可以用于其他类似场合控制。...硬件框架硬件框架图片硬件资源该控制系统中,所使用硬件设备如下:CH32V307_EVB开发板MPU6050传感器:DFRobot版本,连接到CH32V307_EVB开发板E53对应I2C接口BB-8...总体而言,使用TencentOS Tiny开发难度并不大,但是有一点需要注意是,各项组件使用,并不是那么方便,有的组件提供了,并不一定能在新适配板子直接用上。

    980160

    基于单片机简易智能电动车设计

    主控单元还负责与其他模块之间通信和数据交换。 【2】电动机驱动 电动机驱动模块使用适当电机驱动芯片,根据主控单元指令控制电动机启动、停止和速度调节。...通过传感器获取数据,可以用于电动车自动控制和保护。 【6】功能实现 本设计功能包括电动车启动和停止、速度调节、转向控制和状态监测等。...驱动代码 #include // 引入STC89C52头文件 // 定义MPU6050连接引脚 sbit SDA = P2^0; // I2C数据线引脚 sbit SCL =...i2cSendByte 函数用于通过 I2C 总线发送一个字节数据,并返回设备应答状态。 i2cReceiveByte 函数用于通过 I2C 总线接收一个字节数据。...【5】读取 MPU6050 加速度值和陀螺仪值: mpu6050ReadData 函数通过 I2C 总线向 MPU6050 发送读取命令,并接收加速度值和陀螺仪值。

    25430

    嵌入式系统原理课后习题练习

    嵌入式系统原理及应用—-基于ARM Cortex-M3内核STM32F103系列微控制器 (答案仅供参考,不喜勿喷~~) (本人比较懒,后面的就没仔细整) (注:如果你完成了“太懒啦”,可以把你加进去...1.使用 DMA SPI数据发送 当 SPL_CR2 寄存器 TXDMAEN 位被设置时,STM32F103 微控制器 SPI模块可以发出 DMA 发送传输请求。...因此,软件编程时需要先等待 TXE=1,然后等待 BSY=0. 2.使用 DMA SPI 数据接收 当 SPI_CR2 寄存器 RXDMAEN 位被设置时,STM32F103...10、分别画出 STM32F103 微控制器 I2C 作为主发送器和接收器数据包(含事件)传输序列图。...这样,在同一时刻可以使用 DMA 对 STM32F103系列微控制器所有的 I2C 进行数据传输。

    5.5K40

    树莓派基础实验31:MPU6050陀螺仪加速度传感器实验

    DMP加速度计,陀螺仪以及其他第三方传感器(如磁力计)获取数据,并处理数据。结果数据可以DMP寄存器中读取,或者可以在FIFO中缓冲。...在睡眠模式和唤醒之间以LP_WAKE_CTRL(寄存器108)确定速率活动传感器获取单个样本数据。 TEMP_DIS设置为1时,该位禁用温度传感器。 CLKSEL 3位无符号值。...在周期模式下,器件在休眠模式和唤醒之间循环,以由 LP_WAKE_CTRL(寄存器108)确定速率加速计获取单个采样。...是谁 注:位0和7保留。 (硬编码为0) 参数:   WHO_AM_I包含MPU-60X06位I2C地址。   位6:位1电复位值为110 100。...MPU6050实验实物接线图 第2步:PCF8591模块采用I2C(IIC)总线进行通信,但是在树莓派镜像中默认是关闭,在使用该传感器时候,我们必须首先允许IIC总线通信。 ?

    5.6K30

    通过无法检测到网络(Covert Channel)目标主机获取数据

    通常,黑客会使用隐蔽网络来躲避防火墙和IDS等。在本文中,你将学习如何通过不可检测网络目标主机窃取数据。...这种类型网络被称为隐蔽信道,而这些流量在网络监控设备/应用和网络管理员看来像是一般正常流量。两个端点用户可以利用隐蔽信道,进行无法被检测到网络通信。...经常使用还有第7层(应用)协议诸如HTTP和DNS。这种机制用于在不提醒网络防火墙和IDS情况下传送信息,而且netstat无法检测到。...现在,我们需要为数据泄露创建一个隐藏信道,因此我们需要在两个端点安装tunnelshell。...从下图中你可以看到,在ps命令帮助下已经检查了tunnelshell进程,并尝试通过netstat检查其进程ID。 ps |grep .tunneld netstat –ano ?

    2.8K40

    Arduino学习笔记(12) — MPU6050与卡尔曼滤波算法实践「建议收藏」

    大家好,又见面了,是你们朋友全栈君。 01 简介:Why MPU6050? MPU 6050等IMU传感器用于自平衡机器人,无人机,智能手机等。...它集成了陀螺仪和加速度计于一体芯片,它极大程度上免除了独立使用陀螺仪和加速度计在时间误差,而且减少了占用 PCB 板空间。...一个片 1024 字节 FIFO,有助于降低系统功耗。和所有设备寄存器之间通信采用400kHzI2C接口或1MHzSPI接口(SPI 仅 MPU-6000 可用)。...通讯方面,MPU6050 保留了 IIC 接口,高级用户能够采样底层测量数据。...值得一提是,芯片集成了 DMP (Digital Motion Processor)数字动态处理器(以后会用到,实现平衡小车姿体平衡)陀螺仪、加速度计以及外接传感器接收并处理数据,处理结果可以

    4.9K32

    IIC通信协议总结

    大家好,又见面了,是你们朋友全栈君。...(1)概述 I2C(Inter-Integrated Circuit BUS) 集成电路总线,该总线由NXP(原PHILIPS)公司设计,多用于主控制器和器件间主从通信,在小数据量场合使用,传输距离短...图(4) d.数据帧格式 I2C总线上传送数据信号是广义,既包括地址信号,又包括真正数据信号。...{ 这里小编在驱动MPU6050模块时候,就犯过这样错误,它写MPU6050机地址是0x68,因为发送机地址时候,要加一位读写方向位,因为刚开始应该是向这个MPU6050里写机里某个寄存器地址...MPU6050模块, 发送起始信号 等待机应答 写一个机地址+0(表示写), 等待机应答 发送一个字节MPU6050加速度存储寄存器地址

    1K20

    直立智能车(平衡车)毕业论文

    大家好,又见面了,是你们朋友全栈君。...方案一: 卡尔曼滤波,可以在有大量干扰情况下,已知测量方差存在噪声数据中预测估算出系统最优状态[3],利用卡尔曼滤波可以MPU6050原始数据中得到一组接近真值、较为准确智能车姿态数据...这样,通过使用MPU6050DMP既可以得到一个较为准确角度值,又可以减轻微处理器运算负担,但为了使最后数据更接近真值,在速度控制仍然使用了低通滤波算法。...最后采用方案是在方案二基础上调用了MPU6050DMP,虽然程序要移植大量MPU6050固件库,但数据更加准确。...单片机和MPU6050通过I2C方式进行通信,如下图所示,四根接口线分别为电源、地、数据线和时钟线。

    1.8K12

    在DongshanPI-D1开箱使用分享与折腾记录&实现MPU6050数据读取

    前言 一篇文章使用RT-SmartIIC驱动OLED屏幕,进行基本字符串显示,在使用过程中对RT-Smart有了一定熟悉,准备使用SPI驱动ST7789,但SPI接口没有引出,本次使用手上已有的传感器...MPU6050进行使用。...使用IIC0进行陀螺仪数据读取,在RT-Thread Compents 下选择Device Drivers 使能I2C device drivers 在RT-Thread online packages...在次更新,下载成功 将mpu使用I2C设备修改为I2C0 保存,使用scons编译 将sd.bin拖到xfel同级目录下 替换掉原来sd.bin 三、固件下载 先将SD卡格式化 然后插入开发板中,先安全...按一下复位按键,查看串口输出 输入help命令 输入mpu5xxx_test 将陀螺仪换个位置读取,数据读取成功 硬件连接 对应芯片引脚: 对应排针: 五、总结 本次完成了MPU6050数据读取,成功使用该外设

    16310

    嵌入式Linux系列第20篇:驱动编写入门

    2.环境介绍 2.1.硬件 网上一个第三方做NUC972开发板,这里会用到板子MPU6050传感器芯片,相关部分原理图如下: ?...第4步:将生成hello.ko放到板子,然后登录板子输入: insmod hello.ko 如果模块加载成功的话,可以查看模块加载情况,使用lsmod命令 ?...4.MPU6050驱动 本章以板子MPU6050 传感器为例,来介绍驱动编写。由于板子使用是PE10和PE11,它们不是真正I2C引脚,所以这里我们使用GPIO来模拟I2C时序。...上面我们加速度计z轴读到数字是3723,那么对应加速度数据是3723/4096≈0.91g。g为加速度单位,重力加速度定义为1g, 等于9.8米每平方秒。...5.结束语 本期给大家介绍关于Linux驱动最简单使用,可以看到驱动开发和应用开发还是有很大差异,驱动需要关注底层,需要深入阅读芯片数据手册,同时也得具备内核相关知识。

    2.5K30

    IIC协议

    IIC协议解释 (1)概述 I2C(Inter-Integrated Circuit BUS) 集成电路总线,该总线由NXP(原PHILIPS)公司设计,多用于主控制器和器件间主从通信,在小数据量场合使用...图(4) d.数据帧格式 I2C总线上传送数据信号是广义,既包括地址信号,又包括真正数据信号。...{这里小编在驱动MPU6050模块时候,就犯过这样错误,它写MPU6050机地址是0x68,因为发送机地址时候,要加一位读写方向位,因为刚开始应该是向这个MPU6050里写机里某个寄存器地址...等待机应答 写一个机地址+1(表示读) 等待机应答 读取MPU6050传感器数据 主机非应答 e.IIC信号模拟 主机可以采用不带I2C总线接口单片机,如80C51、AT89C2051等单片机...,利用软件实现I2C总线数据传送,即软件与硬件结合信号模拟。

    1.1K10
    领券