STM32cubeMX STM32F103c8T6 IIC双机通讯 从机DMA接收程序

 

首先,用cube创建一个F1系列的从机工程。这里我选择了“STM32F103C8T6”型号的单片机最小系统板,封装为LQFP48。

然后使用IIC的话可以分以下几步走:

一、设置烧录模式为Serial wire。按照图中箭头配置烧录模式

二、使用外部晶振

三、开启IIC

开启IIC接收DMA

 

此处按照红色箭头配置即可。红框框中的要注意配置

四、IIC基础参数设置

这里使用标准模式的IIC传输速度,时钟设为1000hz,初级从机地址设为(TBS_I2C_ADDR + SLAVE_ID)。

五、时钟配置

六、设置项工程信息

七、代码生成项配置

设置完这些后即可点击生成代码。

然后打开keil工程,在main.c中添加代码

本教程可以配合另篇文章“STM32cubeMX STM32F1系列 IIC主机通讯”使用。

该教程配套代码下载:STM32cubeMX STM32F1系列 IIC从机DMA接收

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
STM32是一种嵌入式微控制器系列,它有丰富的外设和功能,其中之一就是支持I2C通信。 I2C(Inter-Integrated Circuit)是一种串行通信协议,用于在微控制器和外部设备之间传输数据。STM32微控制器具有内置的I2C硬件电路,可以简化I2C通信的配置和数据传输。 在STM32微控制器中使用I2C通信,首先需要正确配置I2C控制器的参数,例如时钟频率、地址等。然后就可以使用相关的库函数或底层寄存器编程实现I2C通信。 I2C通信有两种角色:主模式和从模式。在主模式下,STM32微控制器可以主动发起I2C通信,并控制外部设备的读写操作。在从模式下,STM32微控制器则接受来自其他主设备的通信请求,并提供所需的数据。 在进行I2C通信时,主设备首先发送起始信号,然后发送设备地址和读/写位。接下来,主设备可以发送或接收多个字节的数据。通信完成后,主设备发送停止信号。在整个通信过程中,主设备可以使用中断或轮询方式进行数据传输。 除了基本的读写操作,STM32还提供了其他功能,例如多主模式、DMA传输、地址变化检测等,以满足不同应用的需求。 总之,STM32微控制器通过其内置的I2C硬件电路和相关的库函数,提供了方便且可靠的方式来实现I2C通信。无论是连接传感器、外围设备还是其他微控制器,STM32的I2C通信功能都能够很好地满足需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嘉禾天成

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值