没先看芯片内部结构图走了弯路
单片机应用过程中,只关注了PDF文字及程序语法,忽略了芯片内部结构流程框架,在PWM输出中的,上电冲问题与软启动不同步问题上浪费了时间,走了不小弯路。所有的套路教程与AI大师都不能当时指正和解决的方向。反复论证后自己一步一步找问题。只单纯输出固定频率,波形很正常,输出加了下拉电阻,也感觉不到冲击,仍后加了软启动,软启动的方法写法基本上以占空比为例,启动时间一长,不同步就很明显,无论怎么调也解决不了?时间短看不出来?那只是掩盖了问题!后来想到TL494/3535的启动方式是改变DTG,这时想起看看芯片的内部结构图。就此讲一个不传的经验,以TL494为例,它的内部图的引脚功能标注很清楚,在使用这个芯片时,RT/CT是必用的,4脚做DTC管理,正常情况只做软启动,
如果要保护首选3脚,新手是不会这样选择的。因为图中的A1/A2要汇总到3脚,3脚绕过A1/A2直接使用3脚是不是更好?当然你要用比较方法只能用A1或A2,经验是在保护电路中的取样,都是取正向高电位,如取样方便,直接控制3脚就可以,这样电路简化很多。注意A1/A2前面两个二极管,同样做法可以叠加在3脚上。下面看看单片机的图:
首先能引起重视的是DTG那一块,
DTG是可以改变的,那我就设定频率,固定占空比,让DTG上电从255跑到安全值,比如跑到50,程序稳定。这时候同步问题解决了,软启动也好用。为何改变DTG就可以,占空比不可以?因为DTG是一个链路,不影响其它,占空比是复杂的链路。
后面加扫频,在单片机图上显示PSC是个关口,可这个口是粗口,不能精细的1HZ,不能用。目前8H图只能看到这个界面,找不到关键切入点,只能用ARR/定时器,扫频波形如老太太跳广场舞,能用,也算成功了。
补充:找到了第二切入占CNT 。计数器 CNT 是一个独立的 16 位硬件计数器,它只做一件事:每个 CK_CNT 上升沿加 1。
ARR 只是定义了"计数到多少时产生溢出事件",但计数器本身不会因为 ARR 改变而停止或跳变。即使 ARR 变得非常大(比如 65535),计数器依然从 0 开始,一直数到 65535 才溢出,中间不会中断。
你使用PWM遇到什么问题了吗? 梁工 发表于 2026-7-8 22:38
你使用PWM遇到什么问题了吗?
只是在单片机的PDF仓库转晕了。遇到PWM芯片设计还需改进。基础可调方波生成有一路关键点可控就好,只要调整这个键点就可以,怎么调整不影响波形稳定!拆分的太多控制会影响波形不稳定。程序过于复杂。几百行的流程。对于溢出的使用,我的用法是不禁止溢出,在可控制范围内,溢出跑完计数是可以的,没有那么严格。强制干扰溢出,输出波型。
我找到了第二切入 点,CNT!
计数器 CNT 是一个独立的 16 位硬件计数器,它只做一件事:每个 CK_CNT 上升沿加 1。ARR 只是定义了"计数到多少时产生溢出事件",但计数器本身不会因为 ARR 改变而停止或跳变。即使 ARR 变得非常大(比如 65535),计数器依然从 0 开始,一直数到 65535 才溢出,中间不会中断。
页:
[1]