立创开源项目OPEN_Nc_Power:基于WCH MCU与TI电源芯片的DC-DC可调电源DIY全解析

📅 发布时间:2026/7/10 9:50:12 👁️ 浏览次数:
立创开源项目OPEN_Nc_Power:基于WCH MCU与TI电源芯片的DC-DC可调电源DIY全解析
立创开源项目OPEN_Nc_Power基于WCH MCU与TI电源芯片的DC-DC可调电源DIY全解析最近在立创开源平台上看到一个挺有意思的项目——OPEN_Nc_Power一个功能齐全的DC-DC可调电源模块。很多电子爱好者和刚入行的嵌入式工程师都问过我想自己动手做一个可调电源既能学习硬件设计又能练习单片机编程有没有合适的项目可以参考这个开源项目就是一个非常棒的起点。它集成了Type-C、DC接口和XT60航空插头三种输入方式用WCH的微控制器做“大脑”搭配TI德州仪器的电源芯片方案实现了电压电流可调、LCD显示等实用功能。今天我就带大家把这个项目从头到尾拆解一遍从硬件原理到软件代码手把手教你理解并复现它。无论你是想DIY一个自己的桌面电源还是想深入学习开关电源和MCU控制这篇文章都能给你清晰的指引。1. 项目概览与硬件核心解析咱们先来看看这个OPEN_Nc_Power项目到底是个什么东西它的“骨架”和“心脏”都是什么。简单来说这是一个直流转直流DC-DC的可调降压电源模块。你可以把它想象成一个智能的“电压转换器”它从外部接入一个较高的直流电压比如12V-24V然后根据你的设置输出一个稳定且可调的较低电压比如0-你输入电压之间的某个值并且能限制输出电流保护你的设备。它的设计非常“模块化”和“实用化”多种输入兼容Type-C PD需要协议芯片支持、普通DC插座和XT60大电流接口适应不同场景的供电需求。智能控制使用WCH沁恒的微控制器负责读取你的设置、驱动屏幕、产生控制信号是整个系统的控制核心。高效电源转换采用TI的电源管理芯片方案负责实际的高效率电压转换工作。人机交互具备LCD屏幕显示电压、电流等信息还有编码器旋钮让你可以方便地调节参数。1.1 核心硬件部件详解根据原始资料我们可以把硬件分为三大块1. 输入接口部分这是电源的“入口”。项目板子上预留了三种接口Type-C接口这是目前最通用的接口方便使用笔记本充电器或PD充电宝供电。但要实现PD协议取电例如申请20V电压通常需要额外的PD协议芯片项目设计中可能已集成或预留了位置。DC接口直流圆孔就是常见的5525或5521规格的直流插座很多通用的12V/24V适配器都用这个兼容性最好。XT60-PW-M接口这是一种大电流的航空插头在航模、大功率设备中很常见。使用这个接口意味着项目可以承受较大的输入电流适合需要输出较大功率的场景。注意三种接口通常不会同时供电。在实际使用时你需要确保只连接一个输入源否则可能会损坏设备。2. 控制核心WCH微控制器资料里提到MCU是WCH的并且列举了它用到的外设[LCD]、 [UART]、 [PWM*4]、 [ADC*3]、 [MOS*2]、 [EN-Code]、IO一键启动。我们来翻译一下[LCD]连接液晶显示屏用于显示设置的电压、电流以及实际输出的电压、电流值。[UART]串口通信。这个非常有用可以连接电脑在上位机软件上查看更详细的运行数据、绘制曲线或者进行调试。[PWM*4]4路PWM输出。PWM脉冲宽度调制是控制开关电源芯片的“钥匙”。通过调节PWM波的占空比可以精确控制电源芯片的输出电压。4路可能用于控制多个电源相位或不同的功能。[ADC*3]3路模数转换器。这是MCU的“眼睛”用来测量真实的模拟世界信号。在这里极大概率是用来测量输出电压通过电阻分压输出电流通过采样电阻运放放大可能还有一路测量输入电压或温度。[MOS*2]2路MOS管控制。这里的MOS管可能用作输出开关实现软启动、输出使能/关断或者用于输入源的切换选择。[EN-Code]编码器。就是那个可以旋转和按下的旋钮用于调节电压、电流值切换菜单等是主要的人机交互设备。IO一键启动一个独立的按键可能用于快速启动输出、或者作为开关机键。3. 功率核心TI电源芯片资料中只提到了“TI power”这是一个大类。TI在DC-DC电源芯片领域有非常多的产品线比如经典的降压控制器如TPS系列、集成MOSFET的降压转换器如LM系列、TPS系列等。具体型号需要查看开源项目的原理图。这类芯片负责接收MCU发来的PWM控制信号高效地将输入电压转换为所需的输出电压。2. 软件与开源资源获取搞懂了硬件是怎么搭的接下来就是让它“活”起来的软件部分以及去哪里找到所有需要的资料。2.1 开源代码仓库项目的所有软件源码、原理图、PCB设计文件通常使用立创EDA都托管在GitHub上。这是学习和复现项目的关键。原始资料给出的链接是[Core-Caven32/DIY-Demo/OPEN_Nc_Power at master · SwiperWitty/Core-Caven32 · GitHub](https://github.com/SwiperWitty/Core-Caven32/tree/master/DIY-Demo/OPEN_Nc_Power)如何利用这个仓库访问链接用浏览器打开上面的GitHub地址。查看内容你会看到一个典型的项目文件夹里面可能包含README.md项目说明文档一定要先看这个里面可能有最新的说明、注意事项、物料清单BOM。Hardware/或PCB/文件夹存放立创EDA的工程文件或Gerber生产文件。Firmware/或Software/文件夹存放单片机的源代码通常是C语言基于WCH的官方库或HAL库。Documentation/文件夹可能有一些额外的说明文档、测试数据等。下载代码你可以直接点击网页上的“Download ZIP”下载整个项目包或者使用Git工具克隆到本地。git clone https://github.com/SwiperWitty/Core-Caven32.git提示开源项目可能会更新。在开始动手前最好去仓库主页看看最新的提交记录和README确保你获取的是最新信息。2.2 视频教程解析除了图文资料原始内容还提供了一个B站视频链接[星火计划-DC 电源设计_哔哩哔哩_bilibili](https://www.bilibili.com/video/BV1TE7WzgE6J/)视频教程对于硬件项目来说极其宝贵它通常能展示项目实物演示可以看到做出来的板子长什么样各个接口和元件的位置。工作原理讲解作者可能会用更直观的方式讲解电路图。调试过程可能会展示焊接、上电测试、调试代码中遇到的问题和解决方法。最终效果展示调节电压、带负载能力测试等。强烈建议在阅读代码和原理图之前或之后完整观看一遍这个视频你会对项目有一个立体的认识。3. 核心功能实现原理浅析了解了有什么之后咱们来稍微深入一点看看这几个核心功能大概是怎么配合工作的。这对于你理解代码和调试问题至关重要。电压电流的控制闭环这是一个典型的数字控制闭环系统。设定你通过编码器旋钮设定一个目标电压比如5.0V和限流值比如2.0A。测量MCU通过其中一路ADC实时测量输出电压通过另一路ADC测量输出电流电流经过采样电阻变成小电压再被运放放大后送入ADC。比较与计算MCU将测量到的电压与目标电压比较如果测量值低了它就增加输出给TI电源芯片的PWM信号的占空比让电源芯片提高输出电压如果高了就降低占空比。对于电流也是同理如果测量电流超过设定的限流值MCU就会介入降低电压或关闭输出实现恒流CC保护。驱动计算出的新占空比通过PWM*4中的一路输出控制TI电源芯片。显示实时测量的电压、电流值以及设定值通过[LCD]接口刷新到屏幕上。编码器与按键交互编码器EN-Code一般有A、B两个相位输出和一个按键信号。MCU通过检测A、B相的跳变顺序来判断你是左旋还是右旋进而增加或减少设定值。那个“IO一键启动”按键通常会被配置为外部中断按下后快速开启或关闭电源输出。串口通信UART功能让这个电源模块不再是“黑盒”。你可以在电脑上打开串口调试助手如Putty、SecureCRT设置好波特率就能看到MCU定期发送出来的数据包里面包含了电压、电流、温度、状态等信息。更进一步你可以编写一个简单的上位机程序来绘制电压电流随时间变化的曲线非常利于分析和调试。4. 给DIY实践者的建议与思路如果你已经摩拳擦掌准备自己做一个了这里有一些从工程师角度出发的建议第一步彻底研究开源资料看视频先看B站视频建立直观印象。读文档仔细阅读Git仓库里的README.md和任何文档。分析原理图在立创EDA中打开原理图对照视频和元件清单理解每一部分电路的作用。重点看输入防反接和滤波、TI电源芯片的外围电路、电流采样放大电路、MCU的供电和复位电路、LCD和编码器的连接方式。浏览代码打开工程文件看看主程序的逻辑框架重点找ADC采样、PWM输出、编码器扫描、LCD驱动这几个部分。第二步物料准备与焊接采购元件根据项目提供的BOM表在立创商城或其他平台采购。注意TI的电源芯片和WCH的MCU可能需要特定的购买渠道。PCB打样可以将项目中的PCB文件Gerber直接上传到立创PCB等平台进行打样。焊接建议先焊接电源部分和MCU最小系统确保MCU能正常上电和下载程序后再焊接其他外围电路。焊接电流采样电阻和运放时要小心这些地方对精度有影响。第三步软件烧录与调试搭建开发环境WCH的MCU通常可以使用MounRiver Studio或ARM Keil MDK进行开发需要安装对应的芯片支持包。编译下载用GitHub上的源码在IDE中编译通过WCH-Link或其他调试器下载到MCU中。分段调试先测试编码器和按键看按键值读取是否正常。再测试LCD看是否能正常显示内容。然后测试ADC测量一个已知的电压比如3.3V看ADC读值是否正确。最后再连接功率部分在连接功率电感和负载之前可以先不接输入高压只测试MCU输出的PWM波形是否正常占空比是否随编码器调节而变化。可能遇到的“坑”电源芯片不工作检查使能引脚、反馈引脚的分压电阻计算是否正确电感值和电容选型是否合适。电流测量不准检查采样电阻的阻值是否精确运放放大倍数计算是否正确运放的供电和参考电压是否稳定。MCU死机或复位可能是功率部分干扰到了MCU的电源检查电源滤波是否足够地线布局是否合理。这个OPEN_Nc_Power项目是一个非常好的学习平台它把电源技术、模拟电路、单片机应用和嵌入式软件结合在了一起。通过复现它你不仅能得到一个实用的工具更能获得一整套嵌入式硬件开发的实际经验。遇到问题别怕多查资料善用开源社区祝你DIY成功