28377D之引脚复用(以ePWM9/ePWM10为例)

文章讲述了在使用DSP28377D的ePWM模块时,特别是EPWM9-12,需注意GPIO引脚复用设置的不同,与EPWM1-8的区别在于GPAGMUX寄存器的额外配置。提供EPWM1和EPWM9的配置代码示例,强调了配置过程中的关键点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

        在使用28377D的ePWM9/ePWM10/ePWM11/ePWM12时,使用与ePWM1~8相同的设置并无法产生pwm波。其原因就是ePWM9/ePWM10/ePWM11/ePWM12的引脚复用配置方式有些许不同。在使用时不能简单的复制粘贴、修改代码。

GPIO引脚简单介绍

        在使用DSP28377D的ePWM模块时,遇到了引脚复用的小问题,引脚默认为普通IO口功能,即只能控制高低电平,当想使用其他功能时,需要将对应引脚设置为复用。28377D的引脚复用表可以参考芯片手册,这里放前20个GPIO为例。

4c8a34eb37f64d59b65371638d156ce9.png        图中第2、3行,为两个功能寄存器,通过对这两个寄存器的设置可以实现GPIO的复用功能。当然,一般情况不需要使用第一个框内的寄存器,即GPyGMUXn寄存器,只需对GPyMUXn进行配置便可使用。

EPWM1配置代码示例

        根据芯片手册,GPIO0可以复用为EPWM1A功能,GPIO1可以复用为EPWM1B功能。

73cc719439454953a952b093006797f8.png配置代码如下

    EALLOW;
    GpioCtrlRegs.GPAPUD.bit.GPIO0 = 1;    // 禁止上拉 Disable pull-up on GPIO0 (EPWM1A)
    GpioCtrlRegs.GPAPUD.bit.GPIO1 = 1;    // Disable pull-up on GPIO1 (EPWM1B)
    GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 1;   // 功能寄存器配置 Configure GPIO0 as EPWM1A
    GpioCtrlRegs.GPAMUX1.bit.GPIO1 = 1;   // Configure GPIO1 as EPWM1B
    EDIS;

        上述代码将GPIO0复用为EPWM1A功能,将GPIO1复用为EPWM1B功能,可以看到除了禁止上拉电阻,只对GPAMUX1功能寄存器进行了配置,没有对GPAGMUX1进行配置,原因应该为GPAGMUX1相应的位默认为0。

EPWM9配置代码示例

根据芯片手册,GPIO16可以复用为EPWM9A功能,GPIO17可以复用为EPWM9B功能。

f20d7d11a056485c97fc4d7704194855.png        配置代码如下

    EALLOW;
    GpioCtrlRegs.GPAPUD.bit.GPIO16 = 1;    // Disable pull-up on GPIO16 (EPWM9A)
    GpioCtrlRegs.GPAPUD.bit.GPIO17 = 1;    // Disable pull-up on GPIO17 (EPWM9B)

    GpioCtrlRegs.GPAGMUX2.bit.GPIO16=1;
    GpioCtrlRegs.GPAGMUX2.bit.GPIO17=1;
    GpioCtrlRegs.GPAMUX2.bit.GPIO16 = 1;   // Configure GPIO16 as EPWM9A
    GpioCtrlRegs.GPAMUX2.bit.GPIO17 = 1;   // Configure GPIO17 as EPWM9B
    EDIS;

        发现与EPWM1的配置代码相比,多了对GPAGMUX2功能寄存器的设置。

9183fce0cf3d4ee9b43131b8308350e3.png        根据手册,想要将GPIO16配置为EPWM9A,需要对GPyGMUXn.GPIO16设置为1,且GPyMUXn.GPIO16设置为1。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值