当前页面为 开发中 版本,查看特定版本的文档,请在页面左下角的下拉菜单中进行选择。

PWM

1 功能概述

本例程演示演示 PWM 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 排针相连

    • P12(PWM_CH4)/P13(PWM_CH3)/P14(PWM_CH2)/17(PWM_CH1)连接逻辑分析仪

3 编译和烧录

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

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

4 例程演示说明

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

    CPU @ 48000000Hz
    pwm clk source select
    a:  clk source select apb
    b:  clk source select rcl/xtl
    
  2. 串口输入‘a/b’。选择pwm时钟源,apb时钟为48M Hz, rcl时钟为32k Hz,xtl时钟为32768 Hz,其中rcl需校准,apb时钟源的pwm输出频率是rcl/xtl的1000倍,演示的pwm时钟源选择为apb clk。

    +-----------------------------------------------------------------------------------+
    |                      PAN107x PWM Sample Code.                                     |
    +-----------------------------------------------------------------------------------+
    |    Press key to start specific testcase:                                          |
    |                                                                                   |
    |    Input '1'    Testcase 1: PWM Operating Modes.                                  |
    |    Input '2'    Testcase 2: Polarity Control.                                     |
    +-----------------------------------------------------------------------------------+
    
  3. 串口输入字符‘1’,Pwm输出模式演示

    +-----------------------------------------------------------------+
    |    Press key to test specific function:                         |
    |    Input 'A'    Independent Mode.                               |
    |    Input 'B'    Complementary Mode.                             |
    |    Input 'C'    Complementary Mode with Dead-Time Insertion.    |
    |    Input 'D'    Synchronized Mode.                              |
    |    Input 'E'    Grouping Mode.                                  |
    |    Press ESC key to back to the top level case list.            |
    +-----------------------------------------------------------------+
    A独立模式--pwm ch2输出100KHz,ch3输出200KHz。
    B互补模式--pwm ch2输出500KHz,ch3输出波形完全相反500KHz。
    C带死区的互补模式--pwm ch2输出500KHz,ch3输出波形相反但相位有差异的500KHz。
    D同步模式--pwm ch2和pwm ch3输出完全相同的500KHz。
    E组模式--pwm ch2/ch4输出完全相同的500KHz,ch1/ch3输出完全相同的400KHz。
    
  4. 串口输入字符‘2’,Pwm极性控制,pwm ch2/ch3均设置为输出500KHz,ch3极性翻转使能打开。

    ch2/ch3先设置为独立模式,波形输出应为完全互补的波形

    ch2/ch3后设置为带死区的互补模式,波形输出应为有相位差同向波形。

    同步模式极性翻转控制不生效

    +-----------------------------------------------------------------+
    |    Press key to test specific function:                         |
    |                                                                 |
    |    Input 'A'    Output Waveform with Polarity Control.          |
    |    Press ESC key to back to the top level case list.            |
    +-----------------------------------------------------------------+
    Independent TGT_PWM wave start...
    TGT_PWM wave stopped.
    Complementary TGT_PWM wave with Dead-Time start...
    TGT_PWM wave stopped.
    

5 RAM/Otp资源使用情况

  • Otp Size: 8.69kB

  • RAM Size: 0.77kB