简介这份PDF文档围绕集成电路周期性稳态PSS仿真展开面向具备一定电路仿真基础、使用Spectre的研发人员与技术专家帮助其理解PSS分析在受驱动电路与振荡器等自治电路中的适用范围及参数配置方法。包内仅含1个PDF文件大小约623KB内容集中呈现PSS的两阶段流程、谐波平衡与shooting方法差异以及仿真区间、时间步长、初始条件、收敛和输出等参数说明。已有462人学习文档进一步给出errpreset、tstab、autosteady、cmin、hbhomotopy等配置建议并针对强非线性、快速跳变电路提示收敛与精度平衡思路便于读者按电路类型调整参数、提升仿真效率并排查不收敛问题。1. PSS 分析最反直觉的一点仿真耗时与电路时间常数基本脱钩PSS 分析周期性稳态分析之所以值得单独拿出来讲是因为它的仿真时间几乎不取决于电路里最大的时间常数。一个偏置网络的时间常数若是 1 秒普通瞬态分析得跑上好几秒才看得见波形不再漂移而 PSS 只关心一个周期内的波形是否首尾自洽时间常数再大也不进入迭代的主体。谐波平衡HB和 shooting 两种引擎一个从频域、一个从时域逼近的是同一个周期性稳态解——它们不靠“等衰减”而靠解方程。这个性质对射频、开关电容、混频器这类“稳态波形本身才是有效信息”的电路是决定性的你不用猜什么时候算稳定也不用为一个大电容多等几个数量级的时间。真正花时间的是选哪个引擎、从哪个相位起步、收敛判据卡在哪儿。2. 谐波平衡与打靶法同一个周期解两条数学路径引擎选择常常被当成一个性能开关好像“HB 快、shooting 稳”随手勾一个就行。实际上这是两种完全不同的数学表述shooting 把周期性写成一个时域边值条件HB 把周期性写成频域里的一组代数方程。理解这个分歧才能理解后面所有参数为什么存在。2.1 打靶法牛顿法在解一个“首尾相接”的边值问题打靶法的未知量不是整条波形而是周期起点的状态向量 x(t_init)。给定这个初值用瞬态积分跑完一个周期得到一个映射 Φ: x(t_init) → x(t_initT)。周期性稳态要求 Φ(x) - x 0于是问题变成一个以 x 为未知量的非线性代数方程组用牛顿法迭代。关键在于雅可比矩阵。对 Φ(x) - x 求导得到 ∂Φ/∂x - I其中 ∂Φ/∂x 是单值矩阵monodromy matrix它由周期内每个时间步的雅可比矩阵连乘而成。这意味着每次牛顿迭代都要完整积分一个周期并且要把整条轨迹上的线性化信息保存下来——单次迭代很贵但牛顿法的二次收敛通常能在十几次内解决。shooting 的“稳”来自这里它直接跟随时域波形边沿再陡也只是步长变小不会引入额外的全局未知量。2.2 谐波平衡把 KCL 搬到频域每个谐波写一条方程HB 的未知量是每个节点、每个谐波的傅里叶系数。KCL 写成 I(V(t)) dQ(V(t))/dt 0在频域里微分变成乘以 jω非线性项则在时域采样后做 DFT 回到频域。于是每个谐波阶次都有一条代数方程整体构成一个规模为“节点数 × (2H1)”的块稠密方程组。它的雅可比矩阵不像 shooting 那样沿时间连乘而是每个频点上一个稠密块耦合在一起。一次牛顿迭代的代价是一次全周期采样加 FFT 再加一次稠密线性求解。H 越大矩阵越大这是 HB 最直接的代价结构——谐波数在这里不是输出选项而是未知量维度。2.3 弱非线性与频率相关元件HB 的两个主场弱非线性电路的谐波能量集中在低阶H 取个位数就能把波形描述得相当准矩阵规模可控HB 的优势立刻显现没有时域积分的历史包袱一次迭代就是一次频域代数求解。频率相关元件是 HB 的第二个主场。延迟、传输线、S 参数数据在频域里只是一个逐频点的传递函数乘上去就行放到时域这些元件意味着卷积shooting 要么引入额外的状态变量要么维护一段长历史。这也是为什么在含有分布元件的链路里HB 往往明显优于 shooting。反过来强非线性电路信号急剧上升、下降是 shooting 的地盘。一个接近方波的边沿在频域里需要几十甚至上百次谐波才能描述HB 的未知量维度会直接膨胀而 shooting 在时域里只是把步长压小跟住边沿即可。2.4 harms 的双重身份输出选择还是求解维度同一个参数名在两个引擎里的含义完全不同这是最容易翻车的地方之一。对 shooting 而言harms 只在 outputtype 为 freq 或 all 时决定输出多少个谐波同时通过 maxacfreq 间接影响 maxstep。解的精度并不由它决定而由 reltol、steadyratio 这些判据控制。对 HB 而言harms 直接就是未知量的维度取少了会因为混叠产生实打实的误差。还有两个相关参数容易被忽略fdharms 单独为频域元件nport、延迟、mtline、受控源指定谐波数只对没有设置 Fmax 的模型生效maxacfreq 则会自动收紧 maxstep默认取所请求最大谐波频率的 4 倍但不低于基频的 40 倍目的是压住频域结果里的混叠。# 受驱动电路的 PSS 设置时域打靶 频域输出 pss pss1 start0 stop20n period1n harms9 outputtypeall errpresetmoderate methodgear2 maxperiods20 maxacfreq40G fdharms10 # 同一电路改用谐波平衡引擎 pss pss2 start0 stop20n fund1G harms15 harmonicbalanceyes errpresetmoderate hbhomotopygsweep gstart1e-7 gstop1e-12 glog5第一段里 period 与 harms 配合9 次谐波只用于输出和小信号分析的频率上限方法固定为 gear2maxperiods 卡在受驱动电路的默认 20 次。第二段把引擎换成 HBharms15 是真正的求解维度homotopy 用 gsweep 从大电导逐步扫到小电导帮助牛顿法在强非线性下找到解。两个语句不能混用同一个 harms 语义去理解否则调参方向会完全错。3. 自治与受驱动p/n 节点对如何把“已知周期”变成“未知周期”电路有没有驱动源在网表里是拓扑事实但在 PSS 里判断依据不是拓扑而是你有没有给出那一对节点。这个设计看起来随意背后是解的唯一性问题。3.1 一行可选参数改变问题性质当 PSS 语句里出现 p 和 n 两个节点名分析就假定电路是自治的也就是振荡器没有这对节点就按受驱动电路处理。原因在于自治电路的解在时间平移下不变如果 x(t) 是解那么 x(tτ) 对任意 τ 也是解。这个自由度会让牛顿法的雅可比矩阵奇异迭代无法收敛到唯一解。p/n 节点对的作用就是钉死这个相位自由度把该节点某个谐波的相位固定住方程数目和未知量数目才对得上。pinmoderank 选择固定哪个谐波阶次pinnodemag 给出固定节点电压幅值的估计默认 0.01。换句话说这对节点不是“告诉仿真器这是振荡器”的标记而是消除规范自由度的数学约束。3.2 受驱动电路period 与 sfund 的倍数约束受驱动电路的周期由激励源决定所以 period 或 sfund基频必须显式给出两者二选一。这里有个硬约束分析用的周期必须是驱动信号周期的正确倍数。用错倍数方程描述的就不是同一个稳态收敛出来的波形没有物理意义。多源电路里tonset 由程序自动生成取所有独立源都进入周期性的最早时刻。autofundyes 时会忽略 period/fund直接从源信息推算基频适合源频率明确、不想手算倍数的场景。但自动推算不理解你的电路意图多源交调场景下还是手动指定更可控。3.3 自治电路的周期估计与 oscic 四种初始化自治电路没有驱动信号真实振荡周期在分析前未知。PSS 要求你给一个估计值然后在初始瞬态的第四个区间长度为 4×period里监控波形用过零或相位信息把周期估计修得更准再进入牛顿迭代。初始化方式由 oscic 控制四种选择对应不同的电路类型default瞬态初始化靠脉冲或初始条件把振荡器“踢”起来瞬态长度由 tstab 指定。脉冲必须强耦合到目标振荡模式也要耦合到偏置电路里的长持续模式否则起振慢或者起错模式。lin在直流解处做线性化分析用特征值估计振荡频率和幅度适合 LC、晶体这类线性度较高的谐振器。线性初始化之后仍然会做一段瞬态但 tstab 可以大幅缩短甚至跳过。lin_ic旧版的 lin保留是为了向后兼容。fastic速度快、精度低适合只需要一个粗略起点的情况。skip直接把你给的频率当作初始猜测仅适用于两级法。选错初始化方式的典型症状是仿真能跑完但收敛到一个非期望的解或者周期估计偏差很大牛顿迭代在 maxperiods 内没收敛。3.4 振荡器牛顿法的变体、PPV 与调谐模式自治 HB 的牛顿法有 onetier 和 twotier 两种结构前者把周期和波形一起解后者分层处理收敛域不同。pinmode、pinnodeminus、pinmoderank、pinnodemag 这一组参数负责在 HB 里固定节点与谐波阶次和 shooting 的 p/n 节点对是同一件事的另一种表达。ppvyes 会保存扰动投影向量PPV它描述每个节点对电压、电流扰动的相位敏感度。这个量在分析振荡器的相位噪声、注入锁定时是核心数据不输出就只能靠后续分析重新算。调谐模式是另一条路tuneparam 指定要调的参数tunedev 指定器件实例tunerange、tunestep、tunelin、tunevalues 定义搜索范围与离散点仿真器自动调整参数让振荡频率匹配 fundfreqs 指定的值。它只对自治电路生效本质上是把“找周期”换成了“找参数”适合设计定标阶段。# 振荡器的自治 PSS给定周期估计用线性初始化 pss pssOsc start0 stop50n period2.5n harms12 poutp noutn osciclin tstab5n errpresetmoderate maxperiods50 ppvyes writepssosc_pss.ic # 调谐模式自动调器件参数让振荡频率落到 400M pss pssTune start0 stop50n fund400M poutp noutn tuneparamw tunedevM1 tunerange[1u 10u] tunelin9第一段用 lin 初始化tstab 只给 5n靠线性分析把频率和幅度估准后再进牛顿迭代maxperiods 用自治电路的默认 50。第二段把 tuneparam 指到器件宽度上在 1u 到 10u 之间取 9 个离散点搜索让振荡频率匹配 400M。注意调谐模式只适用于自治电路受驱动电路给 tuneparam 没有意义。4. 初始瞬态与精度控制从哪个相位出发收敛到哪个解PSS 分两个阶段初始瞬态阶段负责把电路带到周期解附近shooting 或 HB 阶段负责用牛顿法精确定位。前者的参数决定“从哪出发”后者的参数决定“收敛到哪个解、收敛到什么程度”。4.1 时间轴四段tstart、tonset、tstab、period 各管什么初始瞬态阶段的时间轴可以拆成四段。第一段从 tstart通常为 0到 tonsettonset 由独立源自动生成是所有源都进入周期性的最早时刻。第二段是可选的稳定化区间 tstab长度由用户指定。第三段对受驱动电路是一个 period对自治电路是四倍 period用来监控波形、修正周期估计。tstab 阶段有一套默认设置reltol1e-3、maxstepperiod/25、relrefsigglobal、tstabmethodtraponly。如果你在 pss 语句或 options 里显式写了这几个参数默认值会被覆盖。autotstabyes 让仿真器自己决定要不要跑 tstab 以及跑多长典型长度是 50 个周期接近稳态时提前终止autosteady 则专门控制稳态检测的开关和公差取 2 时公差更紧可能帮助收敛但 tstab 开销会上升。4.2 启动点的血泪经验tinit 落在跳变沿会发生什么理论上只要在激励进入周期性之后启动启动时刻不影响结果因为周期响应会无限重复。实际中启动点选得好不好直接决定牛顿法的初值质量。用打靶法仿真开关电容滤波器时tinit 最好落在时钟跳变之后那段长稳定周期的起点。如果落在时钟跳变沿上或者之后不久运放可能正处在压摆率限制阶段波形变化剧烈牛顿法要追一个斜率很大的初值收敛变慢甚至发散。开关混频器也是同一类问题本振跳变附近的强非线性区不适合作为打靶区间的起点。这条经验没法从参数表里读出来只能从“牛顿法对初值敏感”这个事实推出来周期解本身对平移不变但迭代过程不是。4.3 收敛判据reltol、steadyratio、relref 与 errpresetreltol 和 abstol 控制离散化方程解的精度决定电荷守恒程度和稳态点的计算精度。steadyratio 把 LTE 公差换算成稳态公差在 shooting 里约束一个周期内节点电压、电流分支的最大偏差在 HB 里约束稳态最大允许误差。两者相乘再和 iteration、reltol 一起构成收敛判据每次迭代结束会打印相对收敛范数。relref 决定相对误差跟谁比四种取值对应不同的尺度pointlocal 跟本节点当前值比alllocal 跟本节点历史最大值比sigglobal 跟所有信号的历史最大值比allglobal 在 sigglobal 基础上还把每个节点的 KCL 残差跟自己的历史最大值比。收敛困难时把 relref 从 pointlocal 放宽到 sigglobal 往往有效。errpreset 是最省事的旋钮三档 libera l、moderate、conservative 只改 reltol 和 maxstep其余显式设置的参数一律不动。对应弱非线性电路的数值噪声底大约是 -70 dB、-90 dB、-120 dB。HB 里 errpreset 只影响 reltollteratio 固定 3.5、steadyratio 固定 1这一点和 shooting 不同。4.4 精修与加速finitediff、highorder MIC、Krylov 与 inexactNewtonshooting 收敛之后节点电压或电流分支上仍可能残留小偏差来源是线性求解器的数值误差。finitediffyes 会在打靶后启用有限差分法消除这些偏差必要时还优化初始小步长refine 则在消除偏差的同时细化时间步网格。指定 readpss 和 writepss 复用结果时finitediff 会自动从 no 改成 yes。highorderyes 启用多区间切比雪夫谱算法MIC数值噪声底至少降低 30 dB代价是额外的计算量遇到收敛困难时 MIC 会自动回退到原方法。psaratio 控制高阶谱精度相对于牛顿公差的比例收紧它可以进一步压噪声底。线性求解器这一层maxperiods 限制牛顿迭代次数受驱动 shooting 默认 20、自治默认 50、HB 默认 100。max_innerkrylov_size 和 max_outerkrylov_size 控制两级 GMRES 的内外层迭代上限大信号默认 12、小信号默认 20外层固定 4。inexactNewtonyes 让线性方程组的求解精度随迭代进程逐步收紧不必每次精确求解在强非线性电路上能明显减少计算量。fullpssvec 决定线性求解器是否使用包含所有 PSS 时间步解的完整向量默认由方程规模和步长属性推导。HB 侧还有一套同伦方法hbhomotopy 可取 tstab、source、gsweep、tone、inctone、aggregationgsweep 通过从大电导扫到小电导把强非线性问题逐步软化gstart、gstop、glog 控制扫描区间和步数。sweepic 则控制初始条件的外推方式none、linear、log 三选一多用于参数扫描场景。# 高精度场景收紧稳态判据开启高阶精修 pss pssHi start0 stop10n period2n harms9 errpresetconservative reltol1e-5 steadyratio0.5 relrefsigglobal highorderyes psaratio0.5 finitediffrefine # 强非线性 HB用同伦逐步软化问题 pss pssHB start0 stop10n fund2.5G harms21 harmonicbalanceyes hbhomotopygsweep gstart1e-6 gstop1e-12 glog6 krylov_size20 maxperiods100第一段把 errpreset 拉到 conservative 之后又显式收紧了 reltol 和 steadyratiorelref 用 sigglobal 放宽相对误差的参照基准highorder 开启 MICfinitediff 用 refine 连时间步一起细化。第二段里 harms21 是 HB 真正的求解维度gsweep 从 1e-6 扫到 1e-12、6 个对数步krylov_size 提到 20 应对大信号下的 GMRES 收敛困难。5. 避坑排查五类收敛异常的现场记录参数表能告诉你每个旋钮的取值范围但告诉不了你“仿真跑不完时先看哪里”。下面五条是从实际调试里沉淀出来的按现象、原因、解决三段写。5.1 现象牛顿迭代在第一个周期就发散残差越迭代越大原因通常是有节点对地没有寄生电容电路存在无穷快的跳变。时域积分器面对瞬间响应时步长被压到极小仍无法满足 LTE雅可比矩阵条件数恶化牛顿法直接失控。解决办法是给 cmin 一个合理的非零值给每个节点到地加一个最小电容把跳变沿的斜率限制住。cmin 不需要很大femto 量级往往就够关键是打破“零电容”这个理想化假设。这条对含理想开关、无寄生比较器的电路尤其有效。5.2 现象波形在仿真起始处出现明显跳变之后才慢慢进入稳态原因是初始条件不一致。用 ic 语句设置了某个节点电压但该节点没有到地的电容路径或者设置了电感支路电流但支路里没有电感。这种状态无法由电抗元件维持仿真一开始解就会跳变去满足 KCL。解决办法是检查 ic 语句和 ic 参数对应的元件是否存在icall 时器件参数会覆盖 ic 语句优先级要理清。用 readic 指定文件时所有 ic 语句会被忽略这两者不能混着指望。更稳妥的做法是让直流分析自己算初始状态只在确实需要避开某个非期望解时才手动干预。5.3 现象HB 跑完了但频谱里出现明显不属于电路的杂散分量原因是谐波数不足导致混叠。HB 里 harms 是求解维度信号边沿越陡、非线性越强需要的谐波越多取少了高频能量折叠回低频频谱上就出现假的杂散。解决办法是先按信号带宽估一个谐波数再往上加 50% 做验证看杂散是否随谐波数增加而消失。频域元件还要单独看 fdharmsnport、延迟、mtline 这些元件如果没有设置 Fmax它们的谐波数由 fdharms 控制默认 10 可能不够。autoharmsyes 可以让仿真器做频谱分析自动选谐波数但它只在 tstab0 或 autotstabyes 时生效。5.4 现象用 readpss 复用了上次的结果但波形和上次对不上原因是跨引擎复用了状态文件。shooting 和 HB 写出的 PSS 文件格式不通用shooting QPSS 的结果也不能给 HB QPSS 用反之亦然。文件读进去不报错但残差检查过不了仿真器会用有限差分重新收敛结果自然和原来不同。解决办法是给不同引擎的分析用不同的 writepss 文件名目录里按引擎和电路名分开管理。checkpssyes 会让仿真器在复用前检查条件是否变化变化了重新跑代价是多花一次仿真时间但比拿到一份来路不明的解要划算。5.5 现象把 tstab 设得很大仿真反而更慢甚至不收敛原因是 tstab 阶段的默认设置和主分析阶段不同reltol1e-3、maxstepperiod/25、tstabmethodtraponly。tstab 拉长意味着这段较粗的积分要跑更多周期而且隐式梯形法的数值阻尼可能把振荡器“压死”起振更困难。解决办法是先让 autotstabyes 和 autosteadyyes 接管让仿真器在接近稳态时提前终止需要手动控制时tstab 给 20 到 50 个周期量级即可配合 osciclin 缩短甚至跳过这段。如果电路本身衰减很慢考虑用 tstabenvlpyes 走包络方法而不是硬拉长时域积分。6. 设计取舍精度判据和求解维度为什么被拆成两套把整份参数表读下来会发现一个刻意的不对称shooting 的解精度不依赖 harms而 HB 的精度强烈依赖 harms。这不是实现偷懒而是两种数学表述的必然结果。shooting 的未知量是时域状态离散化误差由 reltol、steadyratio 和步长控制谐波数只影响输出频谱和小信号分析的上限HB 的未知量本身就是谐波系数截断在哪一阶解空间就限制在哪一阶谐波数不足直接等于模型错误。同样的取舍也解释了为什么默认 errpreset 是 liberal。多数用户要的是“周期性工作点对不对”而不是“噪声底压到 -120 dB”把默认放在宽松档让需要精度的人自己往上调比反过来让所有人承担保守档的开销更合理。而一旦你要做 PNOISE、PAC 这类周期性小信号分析前级 PSS 的噪声底会直接传下去这时候 conservative 加 highorder 就不是可选项而是前提。两阶段的设计也是同一个逻辑初始瞬态阶段用较粗的积分器把电路带到解附近主阶段再用牛顿法精确求解。前者容忍误差换速度后者不容忍误差换正确性。理解了这条分界线调参时就知道该动哪一段——起振问题看 tstab 和 oscic收敛问题看 maxperiods 和 homotopy精度问题看 reltol、steadyratio 和 highorder。从那以后我每次跑 PSS都会先把 errpreset 和引擎选型写在脚本注释里再决定 harms 是输出参数还是求解维度跨引擎复用状态文件时文件名里强制带引擎前缀。这套习惯不复杂但省下来的排查时间比任何一次参数微调都值。希望帮到你。本文还有配套的精品资源点击获取
企业数字化 ERP 产品动态
相关推荐
UniPro v2.0协议栈拆解:M-PHY HS-G5分层、重传流控与带宽优化 简介:MIPI UniPro Specification v2.0 官方规范文档,面向从事移动设备内部通信、M-PHY/UniPro 协议栈开发与验证的工程师、芯片设计人员及高校研究者,用于系统查阅 UniPro v2.0 的协议框架、特性变更与兼容性边界。资源为单个 PDF 文件&#… · 2026/11/3 3:11:31
工厂模式解析:对象创建的艺术与工程实践 1. 工厂模式:对象创建的工业化革命第一次接触工厂模式是在2013年参与一个电商平台开发时。当时系统需要对接多个物流供应商,每个物流公司的API接口和计费规则都不相同。如果直接在业务代码中new出各个物流服务对象,代码很快就会变成一团乱麻。… · 2026/11/3 3:11:31
SpringBoot+微信小程序智慧旅游系统开发实践 1. 项目背景与核心价值在移动互联网时代,智慧旅游已成为行业发展的必然趋势。传统旅游服务存在信息不对称、预订流程繁琐、服务响应滞后等问题,而基于微信小程序的智慧旅游系统恰好能解决这些痛点。作为一名长期从事旅游信息化开发的工程师,我… · 2026/11/3 3:10:31
Axure旋转全解析:静态旋转、交互动画与自定义旋转中心 1. 先搞清楚 Axure 里的“旋转”到底在转什么做原型做了这么多年,被问得最多的操作类问题里,“Axure 旋转元件”和“Axure 旋转图片”绝对排得上前五。新手常见的两种极端状况我都见过:一种是到处找“旋转工具”按钮,找半天没找到… · 2026/11/3 3:48:37
MySQL数据库核心操作:创建、修改与备份实践指南 1. MySQL数据库操作全景指南作为关系型数据库的标杆产品,MySQL在各类业务系统中承担着核心数据存储角色。根据DB-Engines最新排名,MySQL长期稳居全球最受欢迎数据库第二位,仅次于Oracle。本文将系统梳理MySQL数据库全生命周期管理中的三大核心… · 2026/11/3 3:48:37
从CRUD到DDD:复杂业务系统的架构演进实践 1. 从CRUD到DDD:架构演进的必然选择第一次接触领域驱动设计(DDD)是在一个电商系统的重构项目中。当时我们的代码库已经膨胀到难以维护的地步——超过2000张数据库表,业务逻辑散落在各个Service层,新功能的开发周期越来… · 2026/11/3 3:48:37
基于OpenLayers+WebGL实现十万级POI地图渲染优化 1. 项目背景与挑战去年接手一个智慧城市项目时,客户提出了一个看似简单但极具挑战性的需求:要在网页端实现一个能同时展示10万个以上POI(兴趣点)的地图系统。最初尝试用Leaflet实现,当数据量超过2万点时浏览器就开始明… · 2026/11/3 3:48:37
微信汽车租赁小程序全栈开发实践指南 1. 项目概述:微信汽车租赁小程序的设计与实现这个毕业设计项目选择开发一款基于微信生态的汽车租赁小程序,可以说是抓住了当前两个最热门的技术风口——微信小程序开发和共享经济模式。作为计算机专业的毕业设计选题,它不仅符合当下市场需求&… · 2026/11/3 3:48:37
CCC 3.0数字钥匙规范实战:NFC/BLE/UWB架构与配对流程拆解 简介:面向汽车电子从业者、数字钥匙方案开发者与车联网安全研究者的技术规范文档,聚焦CCC(Car Connectivity Consortium)发布的Digital Key Release 3标准,帮助读者理解手机替代物理车钥匙实现解锁、启动等功能的完整技… · 2026/11/3 3:47:37
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 4:42:45
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 5:17:18
STM32F411RE与MAX14431实现SPI隔离:工业现场抗共模干扰实战 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59
ESP32+大模型AI硬件开发:从Demo到产品的8个工程问题 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59
基于MAX14431BAEE+与PIC18F85J10的SPI隔离方案设计与实践 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/3 1:01:59
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 13:10:28
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 4:42:45
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/2 5:17:18