硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1093|回复: 12
收起左侧

[有问必答] 请教STM32控制12个DCDC直流风扇以及测速问题

[复制链接]

3

主题

10

回帖

19

积分

新手上路

积分
19
发表于 2024-10-11 18:47:51 | 显示全部楼层 |阅读模式
因项目需求,请教下各位大佬,如何通过STM32F103C8T6实现PWM调制12路DCDC风扇转速?

又如何通过输入捕捉功能实现12路DCDC风扇速度实时监测?

可否通过12选1的多路复用器进行开关控制?每次选择一路?

或者有没其他更好的办法呀?
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
116197
QQ
发表于 2024-10-12 09:23:56 | 显示全部楼层
这个可以使用CubeMX分配下,很多定时器都有4通道,可以同时做PWM输出或者输入捕获,看看引脚都能安排上不。

实际上这个使用树莓派单片机简单,任意IO都可以做FPGA可编程逻辑编程,安排24个引脚即可。
回复

使用道具 举报

97

主题

537

回帖

843

积分

金牌会员

积分
843
发表于 2024-10-12 15:17:21 | 显示全部楼层
一个定时器可以控制4个风扇。12个就是要3个定时器。
共产主义一定胜利!
回复

使用道具 举报

97

主题

537

回帖

843

积分

金牌会员

积分
843
发表于 2024-10-12 15:18:04 | 显示全部楼层
你是输入捕获采集霍尔信号的话,又要3个定时器。
共产主义一定胜利!
回复

使用道具 举报

97

主题

537

回帖

843

积分

金牌会员

积分
843
发表于 2024-10-12 15:31:51 | 显示全部楼层
STM32F103C8T6应该不够。换一个芯片吧。
我看了一下STM32F103RCTx,这个芯片64引脚的应该可以。
Snipaste_2024-10-12_15-28-14.png

这个可以单独控制12路输出和输入。
还能有两个串口。几路ADC口。
但是CAN和USB口引脚被用了,用不了了。
共产主义一定胜利!
回复

使用道具 举报

97

主题

537

回帖

843

积分

金牌会员

积分
843
发表于 2024-10-12 15:37:12 | 显示全部楼层
Snipaste_2024-10-12_15-35-06.png

Snipaste_2024-10-12_15-35-09.png

Flash和RAM也大了好多。用起来也爽。
共产主义一定胜利!
回复

使用道具 举报

3

主题

10

回帖

19

积分

新手上路

积分
19
发表于 2024-10-12 17:23:10 | 显示全部楼层
要不试试用gpio模拟pwm试试,也就不需要复用了,一个定时器应该就可以搞定吧,捕获直接用gpio输入中断,应该有吧
回复

使用道具 举报

1

主题

38

回帖

41

积分

新手上路

积分
41
发表于 2024-10-12 19:50:51 | 显示全部楼层
ADC可以12路轮询模式,输出控制可以用带锁存的串行控制,省几个IO口。
回复

使用道具 举报

3

主题

10

回帖

19

积分

新手上路

积分
19
 楼主| 发表于 2024-10-14 11:29:50 | 显示全部楼层
eric2013 发表于 2024-10-12 09:23
这个可以使用CubeMX分配下,很多定时器都有4通道,可以同时做PWM输出或者输入捕获,看看引脚都能安排上不。 ...

是的,如果用树莓派的确是跟采用FPGA一样,会方便很多!就是没用过树莓派的单片机
回复

使用道具 举报

3

主题

10

回帖

19

积分

新手上路

积分
19
 楼主| 发表于 2024-10-14 11:33:16 | 显示全部楼层
会飞的猪_2020 发表于 2024-10-12 15:31
STM32F103C8T6应该不够。换一个芯片吧。
我看了一下STM32F103RCTx,这个芯片64引脚的应该可以。

非常感谢指导!这个确实资源足够了,输入输出都可以单独控制!价格也贵不了多少
这USB口要是没被占用就好了!这样我就可以直接使用USB口跟PC进行通讯了
回复

使用道具 举报

3

主题

10

回帖

19

积分

新手上路

积分
19
 楼主| 发表于 2024-10-14 11:34:28 | 显示全部楼层
木子水 发表于 2024-10-12 17:23
要不试试用gpio模拟pwm试试,也就不需要复用了,一个定时器应该就可以搞定吧,捕获直接用gpio输入中断,应该有 ...

我也考虑过这个方案,但是外部输入中断没有那么多吧?是不是也得用锁存器锁存下。
回复

使用道具 举报

3

主题

10

回帖

19

积分

新手上路

积分
19
 楼主| 发表于 2024-10-14 11:35:21 | 显示全部楼层
cooleaf 发表于 2024-10-12 19:50
ADC可以12路轮询模式,输出控制可以用带锁存的串行控制,省几个IO口。

一个ADC轮询12路PWM输入么?
回复

使用道具 举报

3

主题

10

回帖

19

积分

新手上路

积分
19
发表于 2024-10-14 15:43:00 | 显示全部楼层
Tacking 发表于 2024-10-14 11:34
我也考虑过这个方案,但是外部输入中断没有那么多吧?是不是也得用锁存器锁存下。

应该有吧,我看手册不是说所有端口都有外部中断能力,或者用TIM的输入捕获,反正转速差个几十转也无所谓吧
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-6-10 04:47 , Processed in 0.328141 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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