当前文档版本为 v0.1.0,您可以访问当前页面的 开发中 版本以获取最近可能的更新。

I2C

1 功能概述

本例程演示演示 I2C Driver 的基本功能与使用方法。

2 环境准备

  • 硬件设备与线材:

    • PAN271x EVB 核心板底板各一块

    • JLink 仿真器(用于烧录例程程序)

    • USB-TypeC 线一条(用于底板供电和查看串口打印 Log)

    • 杜邦线数根或跳线帽数个(用于连接各个硬件设备)

  • 硬件接线:

    • 将 EVB 核心板插到底板上

    • 连接串口转USB调试模块:

      • 使用 USB-TypeC 线,将 PC USB 插口与 EVB 底板 USB->UART 插口相连

      • 使用杜邦线或跳线帽将 EVB 底板 J8 排针对 (P06 & TXD) 和 J9 排针对 (P05 & RXD) 分别短接起来

    • 连接 Jlink,使用杜邦线将 JLink 仿真器的:

      • SWD_CLK 引脚与 EVB 底板的 P00 排针相连

      • SWD_DAT 引脚与 EVB 底板的 P01 排针相连

      • SWD_GND 引脚与 EVB 底板的 GND 排针相连

    • I2C_SCL(P14)接从机SCL,I2C_SDA(P13)接从机SDA

3 编译和烧录

例程位置:<PAN271x-DK>\01_SDK\samples\drivers\i2c

双击 Keil Project 文件打开工程进行编译烧录。

4 例程演示说明

PAN271x IIC仅支持Master模式

  1. 烧录完成后,芯片会通过串口打印初始化 Log:

    CPU @ 48000000Hz
    +-----------------------------------------------------------------------------------+
    |                       PAN271x I2C Sample Code.                                    |
    +-----------------------------------------------------------------------------------+
    |    Press key to start specific testcase:                                          |
    |    Input '1'    Testcase 1 : Master  Send Data.                                   |
    |    Input '2'    Testcase 2 : Master  Receive    Data.                             |
    +-----------------------------------------------------------------------------------+
    
  2. 串口输入字符‘1’,I2C Master 发送功能,PAN271x 发送数据0x00~0x1f,从机为PAN107x,输出接收数据。

    Master输出:
    I2C_MasterSendDataCase
    Slave输出:
    I2C_SlaveReceiveDataCase2
    00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
    
  3. 串口输入字符‘2’,I2C Master接收功能,从机为PAN107x,从机发送数据0x00~0x1f,PAN271x 接收数据并输出结果。

    Master输出:
    I2C_MasterReceiveDataCase
    RCV DATA: 0 1 2 3 4 5 6 7 8 9 a b c d e f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f
    Slave输出:
    I2C_SlaveSendDataCase3
    

5 RAM/Otp资源使用情况

  • Otp Size: 4.74kB

  • RAM Size: 0.77kB