TMS570捕获多路PWM的可行性

 

  • 调试所用开发板:TMS570LS1224PGE
  1. 开发板资源:两个HET模块、一个ETPWM模块和一个ECAP模块
  1. HET1

8路PWM输出,8路cap,32个引脚可任意配置,但是和HET2以及ECAP有复用关系。

  1. HET2

8路PWM输出,8路cap,18个引脚可配置。

①Pin0-7配置的特殊性。

在HCG配置中,0,4,6引脚可以做输出引脚,无1,2,3,5,7引脚配置。但因为HCG默认是双pin捕获,所以建议0,4,6作为输入捕获使用。

②Pin8-15配置的特殊性。

在HCG配置中,8,10,12,14引脚只能做输出使用。且HET2的8,10,12,14引脚和HET1的1,3,5,7引脚复用,建议做为输出使用。HCG中,无法配置9,11,13,15引脚。

③Pin16-18可以任意配置。

  1. ECAP模块

共6路ECAP捕获,其中ECAP1与HET1的引脚15复用,ECAP4与HET1的引脚23复用,ECAP2,3,5,6和定时器无复用。

  1. 基于TMS570LS1224PGE做出的试验。
  1. 将默认的双pin捕获通过修改生成代码改为单pin捕获。
  2. HET的CAP模块能同时捕获14路(HET1的8路+HET2的6路)输入,已调通。
  3. ECAP6模块能捕捉6路HET产生的PWM。
  4. HET产生8路PWM输出,两路cap和6路ECAP捕获,调通。因为cap模式配置相同且引脚配置不冲突,所以添加另外12路cap捕捉,理论上满足调通的条件。
  1. TMS570LS1224PGE能调通的最大捕捉数量

根据上述所做实验沉淀以及分析引脚复用关系,同时最大捕捉数量为20路:其中HET1有8路,HET2有6路,ECAP6路。

  • 目标开发板:TMS570LS1227ZWT
  1. TMS570LS1227ZWTTMS570LS1224PGE硬件资源对比

(1)TMS570LS1227ZWT与TMS570LS1224PGE在HET1,HET2和ECAP的引脚定义上相同。

(2)TMS570LS1227ZWT与TMS570LS1224PGE的HET1和ECAP在HCG的配置中相同。

(3)不同点:TMS570LS1227ZWT HET2的18路引脚皆可任意配置为输入或者输出。

综合以上资源对比,理论上TMS570LS1227ZWT 能使用的最大捕捉路数应该为22路:HET1 8路,HET2 8路,ECAP6路。

2.22路输入捕获的引脚分配。

TMS570LS1227ZWT22路输入引脚分配方案设计

芯片

引脚号

定时器

引脚号

信号定义

复用关系

复位上下拉状态

备注

K18

N2HET1[0]

HET1PWM0

SPI4CLK

EPWM2B

 

 

 

 

 

Pull Down

 

 

 

 

 

11路PWM输出(红色标记的为备选pwm输出引脚)

V2

N2HET1[1]

HET1PWM1

SPI4NENA

N2HET2[8]

EQEP2A

W5

N2HET1[2]

HET1PWM2

SPI4SIMO[0]

EPWM3A

U1

N2HET1[3]

HET1PWM3

SPI4NCS[0]

N2HET2[10]

EQEP2B

B12

N2HET1[4]

HET1PWM4

EPWM4B

V6

N2HET1[5]

HET1PWM5

SPI4SOMI[0]

N2HET2[12]

EPWM3

W3

N2HET1[6]

HET1PWM6

SCIRX/EPWM5A

T1

N2HET1[7]

HET1PWM7

N2HET2[14]

EPWM7B

C4

N2HET2[11]

HET2PWM0

EMIF_ADDR[6]

C5

N2HET2[13]

HET2PWM1

EMIF_ADDR[7]

C6

N2HET2[15]

HET2PWM2

EMIF_ADDR[8]

K17

N2HET2[9]

HET2PWM输出

EMIF_nCS[3]

V7

N2HET1[9]

HET1PWM输出

N2HET2[16]

EPWM7A

 

 

N1

 

ECAP1

N2HET1[15]

MIBSPI1NCS[4]

 

 

 

 

 

 

6路ECAP输入

V8

ECAP2

MIBSPI3SOMI[0]AWM1_EXT_ENA

 

 

 

 

Pull Up

W8

ECAP3

MIBSPI3SIMO[0]AWM1_EXT_SEL[0]

G19

ECAP4

MIBSPI1NENA

N2HET1[23]

MII_RXD[2]

H18

ECAP5

MIBSPI5NENA

MII_RXD[3]

MIBSPI5SOMI[1]

R2

ECAP6

MIBSPI1NCS[0]

MIBSPI1SOMI[1]

MII_TXD[2]

A11

N2HET1[14]

HET1CAP0

 

 

 

 

 

 

 

 

 

 

Pull Down

 

 

 

 

 

HET1 8路CAP输入

A13

N2HET1[17]

HET1CAP1

B13

N2HET1[19]

HET1CAP2

H4

N2HET1[21]

HET1CAP3

B3

N2HET1[22]

HET1CAP4

 

 

J4

N2HET1[23]

HET1CAP5

M3

N2HET1[25]

HET1CAP6

A9

N2HET1[27]

HET1CAP7

C1

N2HET2[0]

HET2CAP0

GIOA[2]

EQEP2I

 

 

 

 

HET2 8路CAP输入

D4

N2HET2[1]

HET2CAP1

EMIF_ADDR[0]

E1

N2HET2[2]

HET2CAP2

GIOA[3]

D5

N2HET2[3]

HET2CAP3

EMIF_ADDR[1]

H3

N2HET2[4]

HET2CAP4

GIOA[6]

EPWM1B

D16

N2HET2[5]

HET2CAP5

EMIF_BA[1]

M1

N2HET2[6]

HET2CAP6

GIOA[7]

N17

N2HET2[7]

HET2CAP7

EMIF_nCS[0]

注:以上所有使用的引脚均为I/O

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TMS570PWM管脚配置可以通过以下步骤实现: 1. 首先,选择要配置的PWM模块和通道。TMS570具有多个PWM模块和通道,您可以根据需要选择适合您的应用的模块和通道。 2. 然后,选择要用作PWM输出的引脚。在TMS570上,可以将PWM波从特定引脚输出。您可以根据需要选择适合您的应用的引脚。 3. 配置PWM的周期和占空比。在TMS570上,您可以通过设置寄存器的值来配置PWM的周期和占空比。具体的配置方法取决于您选择的PWM模块和通道。 下面是一个示例代码,演示了如何配置TMS570PWM管脚: ```c #include "stdio.h" #include "tms570.h" int main() { // 选择PWM模块和通道 PWM_Module module = PWM_MODULE_1; PWM_Channel channel = PWM_CHANNEL_1; // 选择要用作PWM输出的引脚 GPIO_Pin pin = GPIO_PIN_8; // 配置PWM的周期和占空比 uint32_t period = 1000; // 周期为1000个时钟周期 uint32_t dutyCycle = 500; // 占空比为50% // 初始化PWM模块 PWM_init(module); // 配置PWM通道 PWM_configureChannel(module, channel, pin); // 配置PWM周期和占空比 PWM_setPeriod(module, channel, period); PWM_setDutyCycle(module, channel, dutyCycle); // 启动PWM输出 PWM_start(module, channel); // 等待一段时间 delay(1000); // 停止PWM输出 PWM_stop(module, channel); return 0; } ``` 请注意,上述代码仅为示例,具体的配置方法可能因TMS570的型号和版本而有所不同。您需要参考TMS570的技术文档和参考手册以获取详细的配置信息。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值