STMCU小助手
发布时间:2022-2-24 21:02
|
前言 STM32F334 内部集成了高精度 Timer,最高主频 4.6GHz,灵活的控制用于产生数字电源等产品的 PWM 控制信号,与此同时对于产品安全部分也就有更高要求,而 STM32F334 内部的 Fault 联动机制可以保证这样的控制要求,比如过流保护,过压保护任意一项都可以产生 Fault 事件,关闭 PWM 输出,与此同时可以区别对待 Fault 事件,可以一直关闭 PWM 输出,也可以关闭再打开的操作等。7 d2 _+ Q7 Q3 E/ W STM32F334 的 STM32F334 的输出端管理3 R. ]9 H6 i8 V 下图为输出端管理模块,可以看到 Fault 事件会直接作用于波形输出端口1 R9 @. E; O! L0 X % X' h" l" W9 k; ^" `+ F
. m; L3 s/ ^4 @ 输出状态控制,有三个状态:IDLE,RUN,FAULT,三个状态可以控制进行状态切换( w( ?& k3 m# U; N! Z0 k # y5 s7 y8 t( V
[2 K0 h4 M4 b7 V3 s1 b A Fault 事件 Fault 事件管理( h$ [4 P( Z- Z6 m STM32F334 内部共有 5 个 Fault 通道,通过多路选择器,任意一个 Fault 源发生 Fault 事件,都可以直接作用于输出; 需要特别说明的是 SYSFLT 端口属于高端系统 Fault 源,高于其它 5 路 Fault 输入,直接关闭输出,系统发生故障比如时钟失灵,发生 PVD 等,下面是具体的系统 Fault 源: Clock Security System(时钟相关)" E% [9 m7 j, @6 v" f2 O. U1 h* p9 Z SRAM parity checker(SRAM 部分) Cortex-M4-lockup signal(内核死锁) PVD detector(电源管理)8 n8 E, C/ |0 r' p- T( Q( p1 U' q5 t Fault 事件可以配置极性(高或低有效),可以设定是否产生 Fault 事件,同时也可以配置输入部分进行滤波,减少错误判断。 按照 Fault 来源分可以分为两种:外部以及内部 外部----即外部 FLT 引脚,每个通道对应 1 个 FLT 管脚记为 HRTIM1_FLTx(x = 1,2,3,4,5)7 i% {3 i' n" k0 |7 f' D 内部----可以是内部比较器的输出,ADC_WDG 输出,OPA 输出等等。 ! ^, B2 ~5 i- j, o( |+ U 具体 Fault 具体 Fault 配置举例 比如我们现在需要配置比较器 6 的输出(COMP6)以及 HRTIM1_FLT1 输入作为 Fault 源,按照以下步骤进行配置:" Z& V% w# \1 Z3 p* {) Z4 F 按照正常设置使 HRTIMER 输出 PWM 波形; 配置 COMP6 正端输入为 PB11,负端输入为 VREF/2;
配置 PA12 为 HRTIM1_FLT1 引脚;+ U" |0 B7 l) Y
Fault Line1 配置为外部 FLT 引脚输入,使能 Fault Line1; Fault Line3 配置为内部 COMP6 的 Fault 输入,使能 Fault Line3 ; 设定 HRTIMER 的 Fault 源有两个,一个是 Fault Line1,另外一个为 Fault Line36 F6 F8 J j& H3 k6 A5 `, F# n
测试效果& t6 ^4 Q2 l0 ~8 C: V 当 PA12 为低电平,并且 PB11 电平小于 VREF/2 时,PWM 输出口 PA8 有 PWM 波形输出;当 PA12 为高电平或者 PB11 电平大于 VREF/2 时,两个条件只要满足其中一个,PA8 将立刻停止 PWM 输出。+ {$ s$ l$ `% s8 z+ z3 Q8 T. a |
想找个ST芯片
[GPIO] 使用新型抽象开始C++嵌入式编程,从GPIO开始
技术手册stm32f1xx中的一个小问题
【经验分享】STM32 HAL库移植FreeModbus详细步骤
【逢7发帖赢大礼】STM32开发之IC门禁卡UID读取方法!
实战经验 | Keil工程使用NEAI库的异常问题
经验分享 | FDCAN数据段波特率增加后发送失败的问题分析
STM32几种流行开发环境的优缺点
好用软件推荐-TouchGFX Designer
OpenSTLinux 6.1发布:M33-TD加持+安全升级,STM32MPU开发效率翻倍!
微信公众号
手机版
请问有具体使用stm32cubemx配置的教程吗