STM32F107VCTx|STM32F107VCTx I2C通信
一、Cube设置 第一章Cube设置
相比第一章的新增加的设置
1.Pinout&Configuration—>System Core—>GPIO : PB0—>_Output 用一个LED灯进行测试
2.Pinout&Configuration—>Connectivity—>USART1 :Mode—>Asynchronous(异步)
然后PB6—>USART1_Tx
PB7—>USART1_Rx
3.Pinout&Configuration—>Connectivity—>I2C1:Mode—>选择I2C
PB8—>I2C1_SCL
PB9—>I2C1_SDA (这些引脚选择要依据原理图)
二、概述 I2C是同步、串行、半双工通信,总线有两根双向信号线,一根是数据线SDA、另一根是时钟线SCL。
EEROM、智能传感器、OLED显示器
节约线路布线 只需要RCC GND SDA SCL
I2C轮询方式对寄存器读写数据
HAL_I2C_Mem_Write(I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint16_t MemAddress, uint16_t MemAddSize, uint8_t *pData, uint16_t Size, uint32_t Timeout)
*hi2c: I2C设备号指针,这里用的是I2C1: &hi2c1
DevAddress: 设备地址
MemAddress: 寄存器地址
MemAddSize: 寄存器长度
*pData: 数据指针
Size: 数据长度
Timeout: 超时时间
三、代码 【STM32F107VCTx|STM32F107VCTx I2C通信】链接:https://pan.baidu.com/s/1nMJo2lQ4bSgNbIWWTqV0Fg
提取码:khg0
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- Unity和Android通信系列文章2——扩展UnityPlayerActivity
- Android|Android BLE蓝牙连接异常处理
- KubeDL HostNetwork(加速分布式训练通信效率)
- Android|Android Kotlin实现AIDL跨进程通信
- Android|Android USB通信
- react组件通信
- react学习笔录(二)
- GD32VF103|GD32VF103 I2C 通讯
- QT5实现UDP通信的示例代码