STM32 TIM1模块PWM输出及死区控制代码示例.pdfVIP

STM32 TIM1模块PWM输出及死区控制代码示例.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

STM32学习2010-10-1214:33:24阅读20评论0字号:大中小

这是STM32的PWM输出模式。STM32的TIM1模块是增强型的定时器模块,天生

就是为电机控制而设计,可以产生3组6路PWM,每组2路PWM为互补,并且可以带

有死区,可以用来驱动H桥。

下面的代码是利用TIM1模块的1、2通道产生总共4路PWM的代码示例,类似的代

码也可以参考ST的固件库中的相应示例。

C语言:TIM1模块产生PWM,带死区

//步骤1.开启TIM和相应端口时钟

//启动GPIO

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|

RCC_APB2Periph_GPIOB|\RCC_APB2Periph_GPIOC|

RCC_APB2Periph_GPIOD,\ENABLE);

//启动AFIO

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);

//启动TIM1

RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1,ENABLE);

//步骤2.对GPIO进行相应设置,配置为AF输出

//PA.8/9口设置为TIM1的OC1输出口

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8|GPIO_Pin_9;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;

STM32学习2010-10-1214:33:24阅读20评论0字号:大中小

这个是STM32的PWM输出模式,STM32的TIM1模块是增强型的定时器模块,天生

就是为电机控制而生,可以产生3组6路PWM,同时每组2路PWM为互补,并可以带有死区,

可以用来驱动H桥。

下面的代码,是利用TIM1模块的1、2通道产生一共4路PWM的代码例子,类似代码也

可以参考ST的固件库中相应example

C语言:TIM1模块产生PWM,带死区

//Step1.开启TIM和相应端口时钟

//启动GPIO

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB|\

RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOD,\

ENABLE);

//启动AFIO

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);

//启动TIM1

RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1,ENABLE);

//Step2.GPIO做相应设置,为AF输出

//PA.8/9口设置为TIM1的OC1输出口

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8|GPIO_Pin_9;

GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;

GPIO_InitStructure.GPIO_SpeedGPIO_Speed_50MHz;

GPIO_Init(GPIOA,GPIO_InitStructure);//PB.13/14口设

置为TIM1_CH1N和TIM1_CH2N输出口

GPIO_InitStructure.GPIO_PinGPIO_Pin_13|

GPIO_Pin_14;GPIO_InitStructure.GPIO_Mode

GPIO_Mode_AF_PP;GPIO_InitStructure.GPIO_Speed

GPIO_Speed_50MHz;GPIO_Init(GPIOB,

GPIO_InitStructure);//步骤3.TIM模块初始化void

TIM_Configuratio

文档评论(0)

wccebooks + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档