OpenEdv-开源电子网

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

PA0与PB1如何输出互补带死区PWM

[复制链接]

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
发表于 2024-8-8 09:33:58 | 显示全部楼层 |阅读模式
1金钱
最近遇到个高压电源,是用STM32F103RET6控制的他是用PA0与PB1输出PWM经过4片TC4420EAP驱动两个变压器,变压器输出驱动IGBT。想知道PA0与PB1如何输出互补带死区PWM波的。查了资料感觉无法配置让PA0与PB1输出互补带死区PWM。非常疑惑。求高人指点。

驱动电路

驱动电路

最佳答案

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

那就占用两个定时器 各自输出就好了 把死区时间留在CCR里。 只是启动的时候 注意一下同步启动就行
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

89

帖子

0

精华

高级会员

Rank: 4

积分
832
金钱
832
注册时间
2020-6-12
在线时间
300 小时
发表于 2024-8-8 09:33:59 | 显示全部楼层
oycmgg 发表于 2024-8-9 18:01
“也有可能硬件只是借用PA0布线  PA0有可能和另一个引脚连在一起 ”开始就怀疑这个问题。万用表测量过多次 ...

那就占用两个定时器 各自输出就好了 把死区时间留在CCR里。 只是启动的时候 注意一下同步启动就行
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-8 09:47:43 | 显示全部楼层
以前听有人说STM32F103可以任意IO输出互补PWM。不知道咋弄。感觉不可能的样子。还是我功力太弱。
PA0.png
PB1.png
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-8 17:41:41 | 显示全部楼层
PA0与PB1如何输出互补带死区PWM
回复

使用道具 举报

10

主题

213

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
5607
金钱
5607
注册时间
2016-12-19
在线时间
724 小时
发表于 2024-8-9 08:27:42 | 显示全部楼层
IO没这功能,放弃把。找个有这个功能的IO
回复

使用道具 举报

0

主题

48

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2591
金钱
2591
注册时间
2015-8-30
在线时间
310 小时
发表于 2024-8-9 10:24:21 | 显示全部楼层
没用过,好像在哪见过用定时器输出带死区的。你这2个IO还不是一组定时器的
学无止境
回复

使用道具 举报

0

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
112
金钱
112
注册时间
2020-3-19
在线时间
17 小时
发表于 2024-8-9 11:48:39 | 显示全部楼层
感觉楼主是不是看错了呀,PB1和PA10是一组定时器,PA0跟他们都不是一组
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-9 13:49:05 | 显示全部楼层
克利夫兰 发表于 2024-8-9 11:48
感觉楼主是不是看错了呀,PB1和PA10是一组定时器,PA0跟他们都不是一组

绝对没看错,用万用表直接测量线路到MCU脚位去了。不会有错的。就是不明白他怎么实现的PA0与PB1如何输出互补带死区PWM。这个电源有两个版本,老版本是用TL494驱动的变压器在驱动IGBT桥。新版本就是STM32驱动的
回复

使用道具 举报

1

主题

89

帖子

0

精华

高级会员

Rank: 4

积分
832
金钱
832
注册时间
2020-6-12
在线时间
300 小时
发表于 2024-8-9 14:49:30 | 显示全部楼层
频率如果不高的话 用 IO 描波形就行。 频率高就用 定时器 手动配。 再配置同步启动
回复

使用道具 举报

16

主题

426

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2671
金钱
2671
注册时间
2018-11-8
在线时间
430 小时
发表于 2024-8-9 16:22:17 | 显示全部楼层
oycmgg 发表于 2024-8-8 09:47
以前听有人说STM32F103可以任意IO输出互补PWM。不知道咋弄。感觉不可能的样子。还是我功力太弱。

听谁说的?假的  只有高级定时器才有带死区的互补PWM功能, F103的高级定时器只有1号和8号两个 你的PA0都不带这俩定时器的输出通道 累死也输出不了啊,另外自由组合输出通道这个说法也从未听说过, 正常是用同一对通道实现的这种波形
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-9 16:46:18 | 显示全部楼层
你的蓝朋友 发表于 2024-8-9 08:27
IO没这功能,放弃把。找个有这个功能的IO

是人家产品都出来了,怎么解释,想不通呀。
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-9 16:47:25 | 显示全部楼层
shj162 发表于 2024-8-9 10:24
没用过,好像在哪见过用定时器输出带死区的。你这2个IO还不是一组定时器的

人家产品摆在这里,实在是想不通呀。
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-9 16:49:05 | 显示全部楼层
克利夫兰 发表于 2024-8-9 11:48
感觉楼主是不是看错了呀,PB1和PA10是一组定时器,PA0跟他们都不是一组

主板拆下来跑过电路了,确定没有搞错脚位的了。
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-9 16:54:09 | 显示全部楼层
rektito 发表于 2024-8-9 14:49
频率如果不高的话 用 IO 描波形就行。 频率高就用 定时器 手动配。 再配置同步启动

25kHZ-30kHZ算高吗?
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-9 17:32:21 | 显示全部楼层
rektito 发表于 2024-8-9 14:49
频率如果不高的话 用 IO 描波形就行。 频率高就用 定时器 手动配。 再配置同步启动

普通io模拟pwm输出,非常不稳定,不能驱动IGBT输出桥吧,非常容易炸IGBT吧。感觉只能做呼吸灯玩。
回复

使用道具 举报

1

主题

89

帖子

0

精华

高级会员

Rank: 4

积分
832
金钱
832
注册时间
2020-6-12
在线时间
300 小时
发表于 2024-8-9 17:39:11 | 显示全部楼层
oycmgg 发表于 2024-8-9 17:32
普通io模拟pwm输出,非常不稳定,不能驱动IGBT输出桥吧,非常容易炸IGBT吧。感觉只能做呼吸灯玩。

那确实很高 实在想做的话 用两个定时器分别描也可以。  PA0和PB1也未必代表用的就是这两个脚   也有可能硬件只是借用PA0布线  PA0有可能和另一个引脚连在一起    可以再量一量一整圈还有没有通的
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-9 18:01:06 | 显示全部楼层
“也有可能硬件只是借用PA0布线  PA0有可能和另一个引脚连在一起 ”开始就怀疑这个问题。万用表测量过多次证实不是这样的。
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-12 09:25:12 | 显示全部楼层
rektito 发表于 2024-8-9 17:39
那确实很高 实在想做的话 用两个定时器分别描也可以。  PA0和PB1也未必代表用的就是这两个脚   也有可能 ...

高手能给个例程吗?我没见过这样玩的,真不会。希望能多多指点下。谢谢!!!
回复

使用道具 举报

1

主题

89

帖子

0

精华

高级会员

Rank: 4

积分
832
金钱
832
注册时间
2020-6-12
在线时间
300 小时
发表于 2024-8-12 14:38:10 | 显示全部楼层
oycmgg 发表于 2024-8-12 09:25
高手能给个例程吗?我没见过这样玩的,真不会。希望能多多指点下。谢谢!!!

死区可以改 先看极性合适不

comp.zip

437.9 KB, 下载次数: 5

回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-12 14:59:49 | 显示全部楼层
rektito 发表于 2024-8-12 14:38
死区可以改 先看极性合适不

压缩包有密码。我邮箱275123110@qq.com
回复

使用道具 举报

1

主题

89

帖子

0

精华

高级会员

Rank: 4

积分
832
金钱
832
注册时间
2020-6-12
在线时间
300 小时
发表于 2024-8-13 09:54:23 | 显示全部楼层
oycmgg 发表于 2024-8-12 14:59
压缩包有密码。我邮箱

ok我发你邮箱
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-15 08:59:54 | 显示全部楼层

好的,非常关系!我级别太低不能加你。
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-15 15:20:03 | 显示全部楼层

请问freertos CLI移植在STM32F103 标准库函数的,移植好的有吗?能给个实例工程吗?
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-15 15:20:29 | 显示全部楼层

加个微信可以吗18579561233.。
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-15 15:23:05 | 显示全部楼层
oycmgg 发表于 2024-8-15 08:59
好的,非常关系!我级别太低不能加你。

这个用逻辑分析仪看见了
PWM1.png
PWM2.png
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-8-16 09:05:06 | 显示全部楼层
rektito 发表于 2024-8-12 14:38
死区可以改 先看极性合适不

示波器测试波形
pwm1.jpg
pwm2.jpg
回复

使用道具 举报

1

主题

39

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2019-8-12
在线时间
11 小时
 楼主| 发表于 2024-10-16 10:22:44 | 显示全部楼层
oycmgg 发表于 2024-8-15 15:23
这个用逻辑分析仪看见了

回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-22 06:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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