本帖最后由 417556041_692407166 于 2021-8-7 13:08 编辑


首先感谢大联大友尚和面包板网给与此次评测机会。
开发板开箱
11.jpg 12.jpg
   由于最近项目实在太多,所以此次评测的效果不是特别理想,只实现了一个基于Hrtime与内部compDAC实现了一个简单可调buck恒压输出。主要的实现方式是利用HRTIM1timer-C输出一对带有1us死区的100Khz波形驱动板载的MOST5T1来实现buck输出,利用内部的COMP2来采集输出电压,COPM2的正端接输出电压分压端即原理图上的BUCKBOOST_VOUT,负端接内部DAC1OUT2,利用Hrtime可以逐波封波的特性来控制TC1的占空比,达到恒压的目的。
下面为主要的实现过程。
利用STcubeMx导出工程。
1. 时钟频率配置为160Mhz方便后面的分频。
1.png
2. 使能hrtimTC1TC2的输出,他的时钟配置为系统时钟的2倍频,重载值为3200,频率为100Khz,并在TC1TC2之间插入死区。
2.png
3.png
4.png
5.png
到这里HRtim的基础输出就配置完成,然后生产工程,在代码main函数里面添加如下代码
6.png
上示波器测试,TC1的输出在PB12TC2的输出在PB13上。
7.jpg
8.jpg
黄色为TC1的输出,蓝色是TC2的输出,他们的死区为1us
3.使能内部DAC1OUT2输出,同时输出到内部和外部PA5上,方便测试
9.png
在代码内DAC1的初始化函数最后添加如下代码启动DACout2
10.png
4. 使能内部COMP2,配置引脚PA3为comp2的正输入,DAC1的out2为负输入。
11.png
在comp2的初始化函数最后添加如下代码启动comp2
12.png
5.给hrtim添加Event封波事件,配置其源为comp2的输出
13.png
6.给TC1的增加一个复位事件为Evnt1
14.png
7.设置四个按键引脚为GPIO_EXTI模式,并在main.c文件上添加如下代码
15.png
8.最终引脚配置
16.png
到这里在STcubeMx上的配置就完成了。
由原理图上输出电压采集的分压电阻可知 DAC / 4096 * 3.3 = V /16.6 * 3.3
DAC = V * 246.75
最后在代码上设置TC1的输出占空比为90%,则他的最大输出为输入电压*0.9,在添加调节DAC输出的代码就可以调节输出电压了
17.png
在按键中断的处理函数添加如下代码
18.png
到这里就实现全部功能了。
然后上机测试
19.png
20.png
在此实验中电流流向分析如下
21.png
最后在附上我司基于stm32g474rb的双向buck-boost 6Kw DC-DC 电源的部份原理图
25.png     26.png
此次评测由于手里面的项目实在是比较急并未将板载的所有的外设利用到,特别是PD这块,还是非常遗憾,后续还会持续发出评测内容。
MB1428_Test.part03.rar (3.53 MB, 下载次数: 1)