你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

st-img
chrome
st-img
firefox
st-img
safari
st-img
ie8及以上
shequ.stmicroelectronics.cn
  • ST意法半导体官网
  • STM32中文官网
  • ST全球论坛
登录/注册
  • 首页
  • 技术问答
  • 话题
  • 资源
  • 创客秀
  • 视频
  • 标签
  • 积分商城
  • 每日签到
sdfsdfsdfty

sdfsdfsdfty

 

回答数 0 关注数 0
关注 私信
  • 动态99
  • 提问
  • 回答0
  • 创客秀 0
  • 分享 0
  • 关注0
7 回答

STM32F103VET6的芯片,PWM输出,设置空闲态为低电平,在低电平刹车时,出现异常短暂脉冲

STM32F1
butterflyspring butterflyspring 回答时间: 2023-5-26 11:53

一楼的大神已经解释了原理,在手册上都有。 楼主只需将极性电平改过来,与你期望的状态一致就行。 TIM_OCInitStructure.OCPolarity = TIM_OCPOLARITY_HIGH; 按照你图中的逻辑,换成PWM2模式就应该是期望的了。

赞0
5 回答

STM32F103中断标志位异常

STM32F1
sdfsdfsdfty sdfsdfsdfty 回答时间: 2022-11-18 13:12

xmshao 发表于 2022-11-18 11:51 如果出现某个事件标志位置位 是因为发生相应事件。你好好检查下到底开启了哪些通道的比较事件、或捕获事件 ... void TIM4_Init( u16 arr, u16 psc) { GPIO_InitTypeDef GPIO_InitStructure={0}; TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure={0};     NVIC_InitTypeDef  NVIC_InitStructure = {0}; RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOD | RCC_APB2Periph_TIM1, ENABLE ); RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4,ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15|GPIO_Pin_14; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init( GPIOD, &GPIO_InitStructure ); TIM_TimeBaseInitStructure.TIM_Period = arr; TIM_TimeBaseInitStructure.TIM_Prescaler = psc; TIM_TimeBaseInitStructure.TIM_ClockDivision = TIM_CKD_DIV1; TIM_TimeBaseInitStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit( TIM4, &TIM_TimeBaseInitStructure);     NVIC_InitStructure.NVIC_IRQChannel = TIM4_IRQn;     NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;     NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;     NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;     NVIC_Init(&NVIC_InitStructure);     TIM_ARRPreloadConfig(TIM4, ENABLE);     TIM_ITConfig(TIM4,TIM_IT_Update,ENABLE); TIM_Cmd( TIM4, ENABLE ); } void TIM4_IRQHandler(void) {     if(TIM_GetITStatus(TIM4,TIM_IT_Update) == SET)     { //        __disable_irq();         GPIO_SetBits(GPIOD,GPIO_Pin_15);         GPIO_ResetBits(GPIOD,GPIO_Pin_15); //        __enable_irq();         TIM_ClearFlag(TIM4,TIM_IT_Update);     } } int main(void) { USART_Printf_Init(115200); printf("SystemClk:%d\r\n",SystemCoreClock); TIM4_Init( 36000, 3-1);//144/3/36000=1.33KHz while(1)      {         GPIO_SetBits(GPIOD,GPIO_Pin_14);         GPIO_ResetBits(GPIOD,GPIO_Pin_14);      }; } 没有你说的那些,直接这样  在debug下看CC1IF/CC2IF/CC3IF/CC4IF全都会被置1

赞0
4 回答

STM32F103中断的写法疑问

STM32F1
xmshao xmshao 回答时间: 2022-11-7 10:40

晒太阳的懒猫 发表于 2022-11-5 12:31 配置中断的步骤,一般不是县进行必要的设置,最后启动中断允许标志位吗?没设置好就允许中断,肯定不正常啊 ... 是的。 正常操作 应该是先做好基本配置,然后再使能相关中断。

赞0
1 回答

运算放大器

STM32F1
butterflyspring butterflyspring 回答时间: 2022-10-31 14:40

在对应的参考手册里有具体描述,还有框图。 通过类似下面的框图一看就清楚了。

赞0
4 回答

STM32F103关于定时器输入捕获的疑问

STM32F1
sdfsdfsdfty sdfsdfsdfty 回答时间: 2022-10-12 19:22

懂了,谢谢大佬们

赞0
3 回答

STM32F103关于CAN的CAN_DeInit函数的疑问。

STM32F1
sdfsdfsdfty sdfsdfsdfty 回答时间: 2022-10-12 19:17

懂了,感谢大佬们。

赞0
4 回答

STM32F103手册定时器模块-TIMx_EGR寄存器_UG位描述是不是有误?

STM32F1
sdfsdfsdfty sdfsdfsdfty 回答时间: 2022-9-20 19:36

xmshao 发表于 2022-9-20 17:51 这里TIMx_EGR里UG位,是用来通过软件方式产生更新事件的,进而让TIMIER复位。 谢谢大佬,清晰明了,懂了懂了。

赞0
sdfsdfsdfty sdfsdfsdfty


阅读作者更多的帖子

所在话题

参与活动

  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16