MG32F10x Standard Peripherals Firmware Library

I2C_MasterDMARx_SlaveDMATx example

      *************** (C) COPYRIGHT 2020 - 2023 megawin Technology ***************
      * @file    I2C/I2C_MasterDMARx_SlaveDMATx/readme.txt
      * @author  megawin Application Team
      * @version V0.1.10
      * @date    05-January-2023
      * @brief   Description of the I2C I2C_MasterDMARx_SlaveDMATx example.
      ******************************************************************************
      * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
      * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
      * TIME. AS A RESULT, MEGAWIN SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
      * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM
      * THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
      * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
      ******************************************************************************

例程描述

本例程演示I2C主机DMA接收和I2C从机DMA发送。

本例程系统时钟工作在96Mhz，通过PLL配置产生。PLL时钟源是外部8Mhz晶振。APB1的分频比是1，APB2的分频比是1。

在本例程中，I2C1作为从机，I2C2作为主机，I2C1和I2C2需要连接在一起；
DMAC2 Channel 0 用作I2C1从机发送；
DMAC2 Channel 1 用作I2C2主机发送；
DMAC2 Channel 2 用作I2C2主机接收；
当DMA传输完成后，检查I2C2接收到的数据是否与I2C1发出的数据相同， 并通过UART1打印出检查结果。

目录内容

- I2C/I2C_MasterDMARx_SlaveDMATx/I2C_MasterDMARx_SlaveDMATx.uvprojx MDK5工程文件
- I2C/I2C_MasterDMARx_SlaveDMATx/I2C_MasterDMARx_SlaveDMATx.uvoptx MDK5工程配置文件
- I2C/I2C_MasterDMARx_SlaveDMATx/JLinkSettings.ini Jlink配置文件
- I2C/I2C_MasterDMARx_SlaveDMATx/main.c 主程序

硬件和软件环境

- 硬件平台搭建
  - HSE 连接外部8MHz晶振
  - UART1 (PA9, PA10) 连接到PC
  - PB6 (I2C1_SCL) 和 PB10 (I2C2_SCL) 连接在一起
  - PB7 (I2C1_SDA) 和 PB11 (I2C2_SDA) 连接在一起

如何使用？

为了使程序工作，您必须执行以下操作 :

- 使用 MDK5 打开此例程文件夹中的 I2C_MasterDMARx_SlaveDMATx.uvprojx 工程
- 重新编译该工程并下载到目标存储器中

- 运行此例程

  ###
  © COPYRIGHT 2020 - 2023 megawin Technology