OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4661|回复: 8

pwm引脚为什么拉不到低啊?求指教代码如下

[复制链接]

3

主题

9

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2020-7-27
在线时间
3 小时
发表于 2020-7-27 10:58:06 | 显示全部楼层 |阅读模式
1金钱
关闭pwm波过后为什么引脚是高啊,代码如下,怎样解决呢?

最佳答案

查看完整内容[请看2#楼]

GPIO没设置正确已解决
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2020-7-27
在线时间
3 小时
 楼主| 发表于 2020-7-27 10:58:07 | 显示全部楼层
回复

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14402
金钱
14402
注册时间
2018-8-3
在线时间
1156 小时
发表于 2020-7-27 15:24:55 | 显示全部楼层
检查引脚是不是接了什么上啦电阻
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2020-7-27
在线时间
3 小时
 楼主| 发表于 2020-7-28 10:19:53 | 显示全部楼层
翼行园子 发表于 2020-7-27 15:24
检查引脚是不是接了什么上啦电阻

没有,引脚是悬空的
回复

使用道具 举报

31

主题

2183

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
14402
金钱
14402
注册时间
2018-8-3
在线时间
1156 小时
发表于 2020-7-28 15:57:07 | 显示全部楼层
那你就要贴代码出来  没看到代码
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2020-7-27
在线时间
3 小时
 楼主| 发表于 2020-7-29 10:25:38 | 显示全部楼层
本帖最后由 kuzm 于 2020-7-29 10:44 编辑

C:\Users\Sir\Desktop图片贴不出来啊,怎么回事
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165475
金钱
165475
注册时间
2010-12-1
在线时间
2115 小时
发表于 2020-7-30 03:09:03 | 显示全部楼层
kuzm 发表于 2020-7-29 10:25
图片贴不出来啊,怎么回事

高级模式,点图片按钮。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2020-7-27
在线时间
3 小时
 楼主| 发表于 2020-7-30 16:11:09 | 显示全部楼层
70dfc8d015d905c94eae8e19008d224.png
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2020-7-27
在线时间
3 小时
 楼主| 发表于 2020-7-30 16:13:35 | 显示全部楼层
本帖最后由 kuzm 于 2020-7-30 16:57 编辑

TIM_OC_InitTypeDef TIM1_CH3Handler;
TIM_HandleTypeDef TIM1_Handler;
TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig;

void TIM1_PWM_Init(u16 arrr,u16 pscc)
{
    TIM1_Handler.Instance=TIM1;            //¶¨ê±Æ÷1
    TIM1_Handler.Init.Prescaler=pscc;       //¶¨ê±Æ÷·ÖÆμ
    TIM1_Handler.Init.CounterMode=TIM_COUNTERMODE_UP;//ÏòéϼÆêyÄ£ê½
    TIM1_Handler.Init.Period=arrr;          //×Ô¶ˉÖØ×°ÔØÖμ
    TIM1_Handler.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;
    HAL_TIM_PWM_Init(&TIM1_Handler);       //3õê¼»ˉPWM

    TIM1_CH3Handler.OCMode=TIM_OCMODE_PWM2; //Ä£ê½Ñ¡Ô&#241WM1
    TIM1_CH3Handler.Pulse=arrr/2;            //éèÖñè½ÏÖμ,′ËÖμóÃà′è·¶¨Õ¼¿Õ±è£¬
                                          //Ĭèϱè½ÏÖμÎa×Ô¶ˉÖØ×°ÔØÖμμÄò»°ë,¼′Õ¼¿Õ±èÎa50%
    TIM1_CH3Handler.OCPolarity=TIM_OCPOLARITY_HIGH; //êä3ö±è½Ï¼«DÔÎa¸ß
          TIM1_CH3Handler.OCNPolarity=TIM_OCPOLARITY_HIGH; //»¥21êä3öÎadi
          TIM1_CH3Handler.OCIdleState=TIM_OCNIDLESTATE_RESET;
          TIM1_CH3Handler.OCNIdleState=TIM_OCNIDLESTATE_RESET;
    HAL_TIM_PWM_ConfigChannel(&TIM1_Handler,&TIM1_CH3Handler,TIM_CHANNEL_3);//ÅäÖÃTIM1í¨μà3

        
        sBreakDeadTimeConfig.OffStateRunMode=TIM_OSSR_ENABLE;
         sBreakDeadTimeConfig.OffStateIDLEMode=TIM_OSSI_ENABLE;
        sBreakDeadTimeConfig.LockLevel=TIM_BDTR_LOCK_1;
        sBreakDeadTimeConfig.DeadTime=1;
        sBreakDeadTimeConfig.BreakState=TIM_BREAK_ENABLE;
        sBreakDeadTimeConfig.BreakPolarity=TIM_BREAKPOLARITY_HIGH;
        sBreakDeadTimeConfig.AutomaticOutput=TIM_AUTOMATICOUTPUT_ENABLE;
        HAL_TIMEx_ConfigBreakDeadTime(&TIM1_Handler,&sBreakDeadTimeConfig);
        
         HAL_TIM_PWM_Start(&TIM1_Handler,TIM_CHANNEL_3);//¿aÆ&#244WMí¨μà3
          HAL_TIMEx_PWMN_Start(&TIM1_Handler,TIM_CHANNEL_3);//¿aÆ&#244WM í¨μà3»¥21
}


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-4-30 15:45

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表