1、单极性调制仿真验证,主要验证单极性调制时各开关管的驱动波形时序逻辑; 2、和双极性调制仿真作对比,因为不同的调制方式对于过零点畸变,THD等都有影响所以想都研究研究;
2025-05-17 19:29:16 45KB 学习笔记
1
Oracle Certified Professional (OCP) 是 Oracle 公司提供的数据库管理员认证,它证明了持有者对 Oracle 数据库管理的深入理解和专业技能。OCP051-053 指的是 Oracle Database 11g Administrator Certified Professional 考试中的三个部分:1Z0-051、1Z0-052 和 1Z0-053。这些考试涵盖了从安装、配置到性能优化、备份恢复等 Oracle 数据库管理的各个方面。 1Z0-051 是 "Oracle Database 11g: Administration I",主要关注基础的数据库管理和维护。笔记和题目分析可能包括以下知识点: - 数据库安装和配置:学习如何在不同操作系统上安装 Oracle Database 11g。 - 实例与服务管理:理解 SGA 和 PGA 的概念,以及如何启动、停止数据库实例。 - 表空间和数据文件:创建、扩展和管理表空间,理解数据文件和重做日志文件的作用。 - 用户、角色和权限:创建和管理用户,分配权限,理解角色的概念。 - SQL 基础:基本的 SQL 查询语法,DML 操作(INSERT, UPDATE, DELETE)。 1Z0-052 是 "Oracle Database 11g: Administration II",进一步深入到数据库管理。相关知识点可能包括: - 高可用性策略:RAC、Data Guard、Flashback Technology 的概念和应用。 - 性能监控与优化:使用 SQL*Plus、Enterprise Manager Cloud Control 进行性能监控,通过 Explain Plan 分析查询执行计划。 - 存储管理:段、分区、表压缩等存储优化技术。 - 数据保护:备份与恢复策略,RMAN 备份,归档日志管理。 1Z0-053 是 "Oracle Database 11g: New Features for Administrators",关注 Oracle Database 11g 相对于之前版本的新特性。可能涵盖的知识点: - Automatic Storage Management (ASM):Oracle 自动存储管理的配置和管理。 - Active Data Guard:了解在 Data Guard 中实现读写分离和灾难恢复的高级特性。 - SecureFiles 和 Large Objects (LOBs):理解新的文件存储方式及其优势。 - 新的 SQL 功能:如 PIVOT/UNPIVOT、 flashback query 等。 压缩包中的文档,如 ".chm" 文件(HTML 收藏夹),可能包含详细的教程和参考指南;".docx" 文件可能是练习题目,帮助考生熟悉考试格式;".pdf" 文件则可能是题库,包含了大量模拟试题和答案,帮助考生巩固和测试所学知识。 OCP-051、052、053 笔记则提供了讲师或考生的个人见解和总结,可能包含考试重点、难点解析,是备考的重要参考资料。通过这些笔记,考生可以更好地理解考试内容,提高备考效率。 OCP051-053 的学习内容广泛且深入,涉及到 Oracle 数据库管理的核心技能。通过系统的学习和实践,考生可以全面掌握 Oracle 数据库的管理和维护,为职业生涯添加一个重要的里程碑。
2025-05-16 17:58:16 52.11MB oracle
1
【Excel学习笔记】 在信息化时代,Excel作为一款强大的电子表格工具,被广泛应用于数据分析、财务管理、项目规划等各个领域。本文将围绕Excel的核心功能和实用技巧进行深入探讨,旨在帮助你提升Excel技能,提高工作效率。 一、基础操作 1. 数据输入:Excel允许用户输入文本、数字、日期和时间等数据。同时,可以通过快捷键(如Ctrl+Enter完成整列填充)和自动填充功能(拖动单元格右下角的填充柄)快速输入和复制数据。 2. 基本公式与函数:Excel提供了丰富的内置函数,如SUM、AVERAGE、MAX、MIN等,用于进行数值计算。使用公式时,需注意正确的引用单元格(相对引用、绝对引用、混合引用)。 3. 格式化:可以对单元格进行颜色、字体、边框等格式设置,还可以创建条件格式,使数据根据特定条件自动改变显示样式。 二、高级功能 1. 数据排序与筛选:通过“数据”菜单的“排序”和“筛选”功能,可按指定字段对数据进行升序或降序排列,以及隐藏或显示满足特定条件的行。 2. 数据透视表:是Excel进行大数据分析的重要工具,可以快速汇总、分析、探索和展示大量数据集的关键信息。 3. 图表制作:Excel提供了多种图表类型,如柱状图、折线图、饼图等,帮助直观展示数据趋势和关系。通过调整图表元素,如轴标题、数据标签,可以定制化图表。 三、函数与公式进阶 1. 查找与引用函数:VLOOKUP、HLOOKUP用于在表格中查找数据,INDEX与MATCH组合可以实现更灵活的查找。OFFSET和INDIRECT则可以动态引用单元格。 2. 条件逻辑函数:IF、IFERROR、IFS和SWITCH可以进行条件判断,根据不同条件执行不同计算。 3. 时间序列函数:DATE、EOMONTH、YEAR、MONTH、DAY等用于处理日期和时间计算。 四、宏与VBA编程 1. 宏录制:Excel的宏功能可以记录用户的操作,生成相应的VBA代码,实现自动化任务。 2. VBA编程:通过Visual Basic for Applications,用户可以直接编写脚本,自定义功能,实现复杂的数据处理和交互界面。 五、数据分析工具 1. 数据验证:设置数据输入规则,防止错误数据的输入。 2. 数据分析工具包:包括描述统计、趋势线、主成分分析等,用于深入的数据探索。 3. 模拟运算表:进行敏感性分析,了解参数变化对结果的影响。 六、协作与分享 1. 版本历史与共享:通过OneDrive或SharePoint,可以保存文档的历史版本,多人协同编辑。 2. 保护工作簿:设置密码,限制他人修改或查看内容。 通过学习和掌握以上知识点,你可以更好地利用Excel处理日常工作,无论是在日常报表整理还是在专业数据分析上,都能游刃有余。实践是检验真理的唯一标准,多加练习,Excel将成为你得心应手的工具。
2025-05-16 00:18:59 76KB 源码
1
《LeetCode刷题笔记withJava》是一份专为Java开发者准备的算法实战指南,涵盖了LeetCode网站上前一百道编程挑战题目。这份资料旨在帮助程序员提升算法能力,掌握数据结构和问题解决技巧,对于准备面试或者想要提升编程技能的开发者来说极具价值。 在LeetCode上,每道题目都设计了多种解法,包括但不限于递归、迭代、动态规划、贪心策略、回溯、分治等。通过刷这些题目,开发者可以深入理解各种算法的思想,并学会如何在实际问题中应用。Java作为一种广泛应用的编程语言,其清晰的语法和面向对象特性使得它非常适合用来解决这些算法问题。 第一部分的笔记《LeetCode 刷题笔记 with Java 1-50》主要包含了LeetCode前50题的解法,包括基础的数组操作、字符串处理、链表操作等。例如,"Two Sum"(两数之和)题目中,开发者会学习到如何高效地查找两个数字的组合以满足特定条件,这涉及到哈希表的应用。"Reverse Integer"(反转整数)则涉及到数字的位操作和溢出检查。 第二部分的暗黑版《LeetCode 刷题笔记 with Java 1-50(暗黑版).pdf》可能提供了更加深入或非主流的解法,鼓励读者从不同角度思考问题,挑战自己的思维极限。 接着是《LeetCode 刷题笔记 with Java 51-100.pdf》,这个阶段的题目难度逐渐提升,涉及了二叉树、图、堆、队列等复杂的数据结构。例如,“Merge Intervals”(合并区间)要求我们合并时间重叠的事件区间,这需要用到排序和区间合并的技巧。"Valid Palindrome"(有效的回文串)则需要理解双指针法和忽略特定字符的策略。 最后的暗黑版《LeetCode 刷题笔记 with Java 51-100(暗黑版).pdf》可能包含了一些高级解法或者优化后的实现,帮助开发者提升代码质量和效率。 这份资料是Java开发者提升算法水平的理想选择,无论你是初级开发者还是经验丰富的工程师,都可以从中获益。通过反复练习和理解这些题目的解法,不仅可以巩固基础,还能锻炼解决问题的能力,为职场生涯添砖加瓦。同时,它也是准备技术面试的绝佳参考资料,让你在面对算法题时更有信心。
2025-05-15 19:58:07 13.78MB LeetCode
1
### 西电分布式计算课程(PPT总结版)笔记知识点详解 #### 一、通信技术 **1.1 分布式计算基础** - **通信技术的重要性:** 在分布式计算领域,节点之间的高效通信是实现高性能计算的核心。文档重点介绍了几种通信技术: - **底层通信技术:** 包括TCP/UDP这样的点对点通信技术。 - **并发服务技术:** 如多线程和线程池等。 - **上层通信技术:** 比如基于消息中间件的通信技术。 **1.2 TCP/IP 与 OSI 模型** - **TCP/IP 协议栈的发展背景:** TCP/IP 先于OSI模型出现,其结构更为实用且简化了网络编程。 - **四层模型:** - **应用层:** 提供应用程序所需的高级服务。 - **传输层:** 主要负责端到端的数据传输,典型协议有TCP和UDP。 - **网络层:** 处理IP地址并进行路由选择。 - **接口层:** 负责物理通信,如以太网或Wi-Fi。 - **简化网络编程:** 每一层都提供特定功能,便于开发人员按需选择合适的层次进行编程。 **1.3 套接字(Socket)编程** - **套接字介绍:** 套接字是传输层和网络层提供给应用层的标准化编程接口。 - **类型:** - **流式套接字:** 基于TCP协议,提供可靠的、面向连接的服务。 - **数据报套接字:** 基于UDP协议,提供不可靠的、无连接的服务。 - **原始套接字:** 直接访问底层协议,灵活性高但使用复杂。 - **标识:** 通常使用五元组来唯一标识一个套接字:本地IP地址、本地端口号、远程IP地址、远程端口号和协议类型。 **1.4 通信模式** - **基于消息中间件的通信技术:** 如ActiveMQ、RabbitMQ等,提供分布式消息队列服务,支持异步通信。 - **Web Service 技术:** 通过HTTP协议实现不同节点之间的互操作,定义了一系列标准。 - **事件驱动模型+单线程:** 结合事件驱动模型和单线程提高系统吞吐量。 - **其他并发服务技术:** Proactor模型和协程模型,增强系统的解耦合度。 #### 二、并发服务技术 **2.1 基于多线程的并发服务** - **特点:** - **动态创建与销毁:** 灵活性高但带来额外开销。 - **资源消耗:** 频繁创建和销毁线程导致CPU时间和内存的消耗。 - **管理复杂性:** 手动管理线程生命周期增加编程难度。 - **线程安全问题:** 多线程环境下易发生数据竞争和一致性问题。 **2.2 基于线程池的并发服务** - **特点:** - **提高效率:** 通过重用线程减少开销。 - **资源管理:** 线程池有效管理线程资源,降低资源消耗。 - **可控性:** 通过配置参数调整性能和资源使用。 - **简化编程:** 减少编程复杂度,使代码更简洁易维护。 - **同步与异常处理:** 提供同步机制和支持优雅的异常处理。 **2.3 事件驱动模型配合单线程** - **事件驱动模型:** 结合线程池提高系统吞吐量。 - **特点:** - **单线程处理:** 通过事件循环处理多个请求,减少线程切换开销。 - **异步处理:** 支持非阻塞IO操作,提高并发能力。 #### 三、远程过程调用与远程方法调用 **3.1 RPC 与 RMI** - **远程过程调用(RPC):** - **概念:** 允许远程调用过程或服务,如同本地调用。 - **语言无关性:** 客户端和服务端可使用不同编程语言。 - **协议与架构:** 没有固定实现,如gRPC使用HTTP/2和ProtoBuf。 - **灵活性:** 适用于多种网络环境,但实现复杂。 - **远程方法调用(RMI):** - **概念:** Java RMI是JDK提供的一套RMI中间件。 - **面向对象特性:** 扩展面向对象编程模型至分布式环境。 - **协议与架构:** 实现跨进程、跨语言、跨网络的过程调用。 - **灵活性:** 支持多种网络协议和数据序列化格式。 #### 四、分布式存储与计算框架 文档还提及了分布式存储和计算框架,包括: - **MapReduce:** Google提出的分布式数据处理模型,用于大规模数据集的并行处理。 - **Spark:** Apache Spark是一种用于大规模数据处理的开源集群计算框架,提供了比MapReduce更快的数据处理速度。 #### 总结 本文档全面介绍了分布式计算领域的关键技术点,包括通信技术、并发服务技术、远程过程调用与远程方法调用等内容。通过学习这些知识点,读者可以深入理解分布式计算的基本原理和技术实现,并为进一步研究和实践打下坚实的基础。
2025-05-14 21:49:32 2.59MB 课程资源 分布式计算
1
### Excel 学习笔记知识点详解 #### 一、信息筛选 **知识点1:信息筛选** - **概述**:Excel中的筛选功能允许用户基于特定条件显示数据集中的子集。这非常适用于大型数据集,帮助用户更快地定位所需信息。 - **应用场景**:当处理大量数据时,筛选功能可以帮助用户快速找到满足特定条件的数据。 - **实现步骤**: 1. 选中包含数据的列。 2. 在“数据”选项卡中点击“筛选”按钮。 3. 在列标题旁边的下拉菜单中选择筛选条件。 #### 二、信息查找、替换与添加批注 **知识点2:信息查找与替换** - **概述**:查找功能用于定位数据中的特定值;替换功能则用于批量更改数据。 - **应用场景**:当需要修改多个单元格中的相同信息时,使用查找和替换可以提高效率。 - **实现步骤**: 1. 使用快捷键`Ctrl + F`打开查找对话框。 2. 输入要查找的内容,点击“查找全部”或“查找下一个”。 3. 使用快捷键`Ctrl + H`打开替换对话框。 4. 输入旧值和新值,点击“替换全部”或“替换”。 **知识点3:添加批注** - **概述**:批注用于为单元格添加额外的注释或说明。 - **应用场景**:当需要为某些数据提供解释或备注时使用。 - **实现步骤**: 1. 选中要添加批注的单元格。 2. 在“审阅”选项卡中点击“新建批注”。 3. 在弹出的小窗口中输入文本。 #### 三、选择性粘贴 **知识点4:选择性粘贴** - **概述**:选择性粘贴功能允许用户在粘贴数据时仅选择特定的选项,如数值、格式等。 - **应用场景**:当需要保留原始数据格式或仅复制特定属性时。 - **实现步骤**: 1. 复制需要的数据。 2. 选中目标位置,点击“开始”选项卡中的“粘贴”下拉菜单。 3. 选择所需的粘贴选项,如“数值”、“格式”等。 #### 四、数据的分列 **知识点5:数据的分列** - **概述**:数据分列是将一个单元格中的内容拆分为多个单元格的过程。 - **应用场景**:当一个单元格中的数据由多个部分组成且需要分开存储时。 - **实现步骤**: 1. 选中需要分列的单元格。 2. 在“数据”选项卡中点击“文本分列”。 3. 选择分隔符,如逗号、空格等。 4. 确认分列后的列数。 #### 五、数据的合并 **知识点6:数据的合并** - **概述**:数据合并是指将多个单元格的内容合并到一个单元格中。 - **应用场景**:当需要组合来自不同单元格的信息时。 - **实现步骤**: 1. 在目标单元格中输入公式`=B1&"-"&C1`。 2. 拖动单元格右下角的填充柄以应用到其他单元格。 #### 六、新建视图 **知识点7:新建视图** - **概述**:新建视图功能可以保存当前的工作表布局,方便后续调用。 - **应用场景**:当需要保存不同的数据展示方式时。 - **实现步骤**: 1. 在“视图”选项卡中点击“自定义视图”。 2. 添加新的视图,并保存。 #### 七、插入新的一行/一列 **知识点8:插入新的一行/一列** - **概述**:在Excel中插入新行或新列以扩展工作表。 - **应用场景**:当需要增加数据存储空间时。 - **实现步骤**: 1. 选中要插入新行或新列的位置。 2. 右键选择“插入”。 #### 八、设置打印区域 **知识点9:设置打印区域** - **概述**:设置打印区域是为了确保打印时只打印所需的部分。 - **应用场景**:当只需要打印工作表中的特定区域时。 - **实现步骤**: 1. 选中需要打印的区域。 2. 在“页面布局”选项卡中点击“打印区域”,然后选择“设置打印区域”。 #### 九、在Excel中录制宏 **知识点10:录制宏** - **概述**:宏是一系列自动执行的操作集合,可用于重复执行相同任务。 - **应用场景**:当需要自动化复杂的操作流程时。 - **实现步骤**: 1. 在“开发”选项卡中点击“录制宏”。 2. 执行一系列操作。 3. 再次点击“录制宏”停止录制。 #### 十、宏运行中的注意事项 **知识点11:宏运行注意事项** - **概述**:宏一旦启动就不能撤销,因此在运行前需谨慎考虑。 - **应用场景**:任何涉及宏使用的场景。 #### 十一、在Excel中建立图表 **知识点12:创建图表** - **概述**:图表是一种直观展示数据的方式。 - **应用场景**:当需要可视化数据分析结果时。 - **实现步骤**: 1. 选中需要绘制图表的数据。 2. 在“插入”选项卡中选择合适的图表类型。 3. 调整图表样式和布局。 #### 十二、在Excel中获取网络数据 **知识点13:获取网络数据** - **概述**:可以直接从网页导入数据到Excel。 - **应用场景**:当需要从网页抓取数据时。 - **实现步骤**: 1. 在“数据”选项卡中点击“新建查询”。 2. 选择“从Web”。 3. 输入网址并选择数据表。 #### 十三、设置单元格格式 **知识点14:设置单元格格式** - **概述**:用于调整单元格的外观,如字体颜色、背景颜色等。 - **应用场景**:美化表格或突出显示特定信息。 - **实现步骤**: 1. 选中需要调整格式的单元格。 2. 右键选择“设置单元格格式”。 3. 在弹出的对话框中调整样式。 #### 十四、使用Excel中的函数 **知识点15:函数查询功能** - **概述**:Excel提供了丰富的内置函数来执行各种计算。 - **应用场景**:简化复杂计算过程。 - **实现步骤**: 1. 在公式栏中输入`=`,然后选择“插入函数”。 2. 选择合适的函数并填写参数。 **知识点16:SUMIF定向求和函数** - **概述**:用于对符合条件的数值求和。 - **应用场景**:当需要对满足特定条件的数据进行汇总时。 - **公式示例**:`=SUMIF(B2:B25,">5")` **知识点17:SUM求和函数** - **概述**:用于简单数值相加。 - **应用场景**:当需要对一组数值求和时。 - **公式示例**:`=SUM(A2:A10)` **知识点18:使用函数中的技巧** - **概述**:在公式编辑过程中的一些实用技巧。 - **应用场景**:提高公式编写效率。 - **技巧说明**: - `,“”` 表示并列关系。 - `,“:”` 表示省略关系。 - `,“/”` 表示除法运算。 #### 十五、为单元格添加超链接 **知识点19:添加超链接** - **概述**:超链接可以链接到网页或其他Excel工作簿。 - **应用场景**:当需要链接到外部资源时。 - **实现步骤**: 1. 选中要添加超链接的单元格。 2. 右键选择“插入超链接”。 #### 十六、冻结行/列标题 **知识点20:冻结窗格** - **概述**:保持特定行或列在滚动时始终可见。 - **应用场景**:当需要滚动查看数据时保持标题可见。 - **实现步骤**: 1. 选中需要冻结的行或列。 2. 在“视图”选项卡中点击“冻结窗格”。 #### 十七、为宏设置控件 **知识点21:宏控件** - **概述**:使用控件来触发宏。 - **应用场景**:当需要通过按钮等控件执行宏命令时。 - **实现步骤**: 1. 在“开发”选项卡中点击“插入”。 2. 选择控件,如按钮。 3. 设置控件对应的宏。 #### 十八、锁定Excel文档不被修改 **知识点22:保护工作表** - **概述**:防止工作表被意外更改。 - **应用场景**:保护敏感数据。 - **实现步骤**: 1. 选中需要保护的单元格。 2. 在“审阅”选项卡中点击“保护工作表”。 #### 十九、共享Excel表格 **知识点23:共享工作簿** - **概述**:允许多个用户同时编辑同一份Excel文件。 - **应用场景**:团队协作。 - **实现步骤**: 1. 在“审阅”选项卡中点击“共享工作簿”。 #### 二十、将公式结果转换为数值 **知识点24:公式结果转数值** - **概述**:将公式计算结果固定下来,避免因数据变动导致结果变化。 - **应用场景**:当不再需要动态更新公式结果时。 - **实现步骤**: 1. 选中包含公式的单元格。 2. 复制这些单元格。 3. 选择性粘贴为“数值”。 #### 二十一、设置Excel标签颜色 **知识点25:设置标签颜色** - **概述**:用于区分不同的工作表。 - **应用场景**:当有多个工作表需要管理时。 - **实现步骤**: 1. 右键点击标签。 2. 选择“标签颜色”。 #### 二十二、数据输入防重复 **知识点26:数据验证防重复** - **概述**:确保同一列中不会出现重复的数据。 - **应用场景**:当需要避免重复录入时。 - **实现步骤**: 1. 选中需要设置验证规则的列。 2. 在“数据”选项卡中点击“数据验证”。 3. 选择适当的验证条件。
2025-05-11 22:26:52 9KB Excel
1
《数据治理:工业企业数字化转型之道》读书笔记
2025-05-09 16:16:01 21.05MB
1
Win7 64bit QT5.7.1 QgroundControl3.2.2.51完全编译详细记录
2025-05-09 14:13:54 1.13MB QT5.7.1编译
1
反激变换器设计笔记doc,开关电源的设计是一份非常耗时费力的苦差事,需要不断地修正多个设计变量,直到性能达到设计目标为止。本文step-by-step 介绍反激变换器的设计步骤,并以一个6.5W 隔离双路输出的反激变换器设计为例,主控芯片采用NCP1015。 反激变换器设计是开关电源设计中的重要环节,尤其在1W至60W的低功率隔离电源应用中,反激变换器因其简洁、稳定、成本效益高而被广泛采用。设计过程涉及到多个步骤和参数的调整,以满足特定的需求。 我们需要初始化系统参数。这包括输入电压范围,如90~265VAC,电网频率,如50Hz,以及输出功率和效率。例如,一个6.5W的隔离双路输出电源,主路输出5V/1A,辅路输出15V/0.1A,预估效率为0.8。根据输出功率比例,可以定义输出功率分配比KL1和KL2。 接着,确定输入电容Cbulk的值。Cbulk的大小通常与输入功率成正比,宽电压输入时取2~3μF/W,窄电压输入时取1μF/W。例如,对于6.5W的电源,选取19.7μF的电容,实际设计中可能会用到15μF+4.7μF的两个400V高压电解电容并联。 下一步是确定最大占空比Dmax。反激变换器有两种主要工作模式:电感电流连续模式(CCM)和电感电流断续模式(DCM)。CCM模式适合低压大电流输出,而DCM模式适用于高压小电流输出。在设计中,通常选择在CCM和DCM模式临界点,即BCM模式,输入电压最低和满载条件下进行,简化设计过程。最大占空比Dmax决定了输出电压增益和其他关键参数,如反射电压Vor,次级整流二极管的电压VD,以及MOS管的电压Vdsmax。 设计过程中,还需要考虑MOS管的导通损耗和次级输出电容的电流应力。在保证MOS管安全裕量的前提下,适当降低Dmax可以减少MOS管应力,但可能增加次级整流管的电压应力。这需要在两者之间找到平衡。 反激变换器的设计还包括变压器设计、反馈电路设计、保护机制设定等。变压器的磁芯选择、线圈匝数比以及漏感的计算都直接影响转换效率和稳定性。反馈电路用来维持输出电压的恒定,而保护机制则防止过压、过流等情况发生,确保设备安全运行。 反激变换器设计涉及众多细节,每个步骤都需要精确计算和优化。主控芯片,如NCP1015,提供了集成的控制和保护功能,简化了设计流程,但理解其工作原理和应用是至关重要的。设计者需要对开关电源理论有深入理解,才能成功设计出高效、可靠的反激变换器。
2025-05-08 19:48:06 1.36MB 开关电源
1
STM32G474 中包含了针对数字电源应用的高精度定时器(HRTIMER),客户在应用该定时器 产生 PWM 时,发现 PWM 的输出出现了“丢波”现象,本文对该问题进行分析并给出解决方案。客户使用高精度定时器产生 PWM, 其 PWM 产生的配置如下,Master Timer 的 period event与 compare 1 event 分别作为 Timer A 与 Timer B 的复位源,Timer A 与 Timer B 产生的 180 度移相的 PWM 输出,EEV4 作为外部事件来触发 PWM reset, 并且使用 blanking 功能过滤发生在PWM set 点附近的 EEV4 事件,Timer compare 3 event 用来限制 PWM 的最大占空比,当 PWM周期内没有 EEV4 发生或是发生的时间点晚于 compare 3 事件时,Timer compare 3 event 将触发PWM reset。 ### 应用笔记LAT1167+STM32G474+HRTIME+PWM+丢波问题分析与解决 #### 1. 前言 在本篇文章中,我们将深入探讨一个关于STM32G474微控制器在使用其内置的高精度定时器(HRTIMER)来产生脉冲宽度调制(PWM)信号时所遇到的一个具体问题——即“丢波”现象,并提供一种可行的解决方案。STM32G474是一款高性能、低功耗的微控制器,特别适合应用于数字电源控制等场合。该控制器配备有高级定时器模块HRTIMER,能够满足高精度PWM输出的需求。 #### 2. 问题描述 客户在配置HRTIMER用于产生PWM时,遇到了“丢波”的情况。具体配置如下: - **Master Timer**: - 工作模式:交错模式(Half mode) - Timer A 和 Timer B 的计数器重置触发源分别由Master Timer的周期事件(period event)和比较1事件(compare 1 event)提供。 - PWM 设置源和复位源:对于Timer A 和 Timer B,PWM的设置源同样分别为Master Timer的周期事件和比较1事件;而PWM的复位源则由Timer compare 3 event 和外部事件EEV4共同决定。 - **EEV4**(外部事件输入4): - 源:比较器1(COMP1)的下降沿 - 快速模式:重新同步模式(re-sync mode) - 过滤功能:从计数器重置/溢出到比较1期间的事件将被消隐(blanking) 这种配置的目的在于产生两路相位相差180度的PWM输出,并且通过外部事件EEV4来复位PWM,同时利用消隐功能避免在PWM设置点附近发生EEV4事件导致的错误触发。 #### 3. 问题分析 在正常情况下,此配置能够成功地产生预期的PWM信号。然而,在某些特定条件下,当外部事件EEV4接近PWM周期值发生时,会出现“丢波”的现象。具体来说,“丢波”是指在连续的PWM周期中,某一周期内的信号未能正确输出或输出时间异常缩短的情况。 **原因分析**: - 当外部事件EEV4接近PWM周期值发生时,它可能会与Timer compare 3 event触发的PWM复位冲突。这是因为两者都可能在接近PWM周期结束时触发PWM复位,从而导致实际的PWM输出时间异常缩短或者完全丢失。 - 另外,虽然配置中启用了消隐功能来避免在PWM设置点附近的EEV4事件触发,但由于EEV4事件与PWM设置点之间的时间间隔较短,这可能导致消隐机制未能有效工作。 #### 4. 解决方案 为了解决上述“丢波”问题,可以采取以下措施: 1. **调整消隐窗口**:通过增加消隐窗口的长度,确保EEV4事件不会在PWM设置点附近触发。这可以通过调整计数器重置/溢出到比较1之间的消隐区间来实现。 2. **优化外部事件触发逻辑**:考虑修改EEV4的触发逻辑,例如改变其触发条件或延迟触发时间,以避免其与Timer compare 3 event冲突。 3. **调整Timer compare 3 event的阈值**:通过调整Timer compare 3 event的触发条件,使其触发时间更早,从而减少与EEV4事件之间的冲突可能性。 #### 5. 结论 通过对STM32G474中HRTIMER产生的PWM信号出现“丢波”现象的原因进行深入分析,并提出相应的解决方案,我们能够有效地提高系统的稳定性和可靠性。未来还可以进一步探索其他参数调整的方法,以适应不同应用场景下的需求。
2025-05-07 14:16:07 1022KB stm32 HRTIMER
1