提供电压控制在您的指尖,这一前沿解决方案让您的小工具发挥最佳性能。
A
A
硬件概览
它是如何工作的?
3xBuck Click基于德州仪器的TPS65263,这是一款具有可编程动态电压缩放功能的三路同步降压转换器。该IC包含三个独立的开关部分,它们以固定频率600kHz工作。一个buck部分使用与其他两个部分180˚相位差的开关时钟,这确保了低输入电流纹波,以及电源本身的较低EMI。TPS65263 IC具有I2C总线逻辑部分,允许对每个转换器的输出电压进行编程。初始时,每个部分的反馈电压分压电阻器设置输出电压。各个部分的输出电压设置为5V、3.3V和1.8V,因为这些值在嵌入式应用中最常用。一旦通过I2C接口发送了命令,TPS65263 IC的逻辑部分接管了控制,允许在每个输出中的三个之间以10mV步长编程电压,范围从0.68V到1.95V。这允许根据应用的具体需求微调所需的输出,该输出由3xBuck click供电。I2C接口还用于独立检索每个buck部分的功率好
状态、过电流和芯片温度警报。TPS65263 IC中有三个完全独立的开关部分,意味着每个部分都有专用的使能引脚、软启动引脚和环路补偿引脚。每个部分的使能引脚都连接到mikroBUS™。EN1、EN2和EN3分别连接到mikroBUS™的AN、PWM和INT引脚。这允许主机MCU控制3xBuck Click的操作。并非所有三个部分都具有相同的特性。3xBuck click标记为1V8(VOUT1)的输出在输入端口上提供12V时,可以承受高达3A的电流。其他两个输出可以提供高达2A的电流,保持输出处于1%的规定范围内。但是,应注意这是综合电流额定值,因此,如果使用多个输出,总电流消耗不应超过这些值。输入电压应在4.5V到18V之间,需要注意的是,它必须足够高以达到指定的电压和电流额定值。软启动功能使用专用SS引脚上的10nF电容器。每个通道都有专用的SS引脚,因此需要
使用三个引脚来设置每个通道的软启动。软启动功能防止开机时的高涌流,在软启动期间通过电容器逐渐增加输出电流。如前所述,该设备具有保护功能,可在诸如短路保护、过电流、过压和过热保护等事件中可靠运行。如果连接的负载吸收了过多的电流,将在高侧和低侧输出MOSFET上激活逐周期电流限制。如果高电流条件持续0.5ms后,设备将进入啜泡模式,完全关闭,然后在14ms后重新启动。整个启动序列将重复进行;如果输出上的故障条件持续存在,将重复此循环。这可以防止连接到输出的大负载引起损坏。3xBuck click的逻辑电压电平可以通过将标记为VCC SEL的SMD跳线切换到适当位置来选择。这允许与3.3V和5V MCU进行接口,扩展了该板的接口选项。
功能概述
开发板
Arduino UNO 是围绕 ATmega328P 芯片构建的多功能微控制器板。它为各种项目提供了广泛的连接选项,具有 14 个数字输入/输出引脚,其中六个支持 PWM 输出,以及六个模拟输入。其核心组件包括一个 16MHz 的陶瓷谐振器、一个 USB 连接器、一个电
源插孔、一个 ICSP 头和一个复位按钮,提供了为板 子供电和编程所需的一切。UNO 可以通过 USB 连接到计算机,也可以通过 AC-to-DC 适配器或电池供电。作为第一个 USB Arduino 板,它成为 Arduino 平台的基准,"Uno" 符号化其作为系列首款产品的地
位。这个名称选择,意为意大利语中的 "一",是为了 纪念 Arduino Software(IDE)1.0 的推出。最初与 Arduino Software(IDE)版本1.0 同时推出,Uno 自此成为后续 Arduino 发布的基础模型,体现了该平台的演进。
微控制器概述
MCU卡片 / MCU

建筑
AVR
MCU 内存 (KB)
32
硅供应商
Microchip
引脚数
32
RAM (字节)
2048
你完善了我!
配件
Click Shield for Arduino UNO 具有两个专有的 mikroBUS™ 插座,使所有 Click board™ 设备能够轻松与 Arduino UNO 板进行接口连接。Arduino UNO 是一款基于 ATmega328P 的微控制器开发板,为用户提供了一种经济实惠且灵活的方式来测试新概念并构建基于 ATmega328P 微控制器的原型系统,结合了性能、功耗和功能的多种配置选择。Arduino UNO 具有 14 个数字输入/输出引脚(其中 6 个可用作 PWM 输出)、6 个模拟输入、16 MHz 陶瓷谐振器(CSTCE16M0V53-R0)、USB 接口、电源插座、ICSP 头和复位按钮。大多数 ATmega328P 微控制器的引脚都连接到开发板左右两侧的 IO 引脚,然后再连接到两个 mikroBUS™ 插座。这款 Click Shield 还配备了多个开关,可执行各种功能,例如选择 mikroBUS™ 插座上模拟信号的逻辑电平,以及选择 mikroBUS™ 插座本身的逻辑电压电平。此外,用户还可以通过现有的双向电平转换电压转换器使用任何 Click board™,无论 Click board™ 运行在 3.3V 还是 5V 逻辑电压电平。一旦将 Arduino UNO 板与 Click Shield for Arduino UNO 连接,用户即可访问数百种 Click board™,并兼容 3.3V 或 5V 逻辑电压电平的设备。
使用的MCU引脚
mikroBUS™映射器
“仔细看看!”
Click board™ 原理图

一步一步来
项目组装
软件支持
库描述
这个库包含了3xBuck Click驱动程序的API。
关键功能:
c3xbuck_enable_buck- 此函数在板上启用所需的Buckc3xbuck_disable_buck- 此函数在板上禁用所需的Buckc3xbuck_set_voltage- 此函数在板上设置所需的Buck的电压
开源
代码示例
完整的应用程序代码和一个现成的项目可以通过NECTO Studio包管理器直接安装到NECTO Studio。 应用程序代码也可以在MIKROE的GitHub账户中找到。
/*!
* \file
* \brief 3xBuck Click example
*
* # Description
* This example demonstrates the use of the 3 x Buck Click Board.
*
* The demo application is composed of two sections :
*
* ## Application Init
* Initializes the driver and performs the Click default configuration.
*
* ## Application Task
* Alternates between predefined and default values for the Bucks output and
* logs the current set values on the USB UART.
*
* @note
* The default output voltage on Buck 1 is 1800mV, Buck 2 is 3300mV, and Buck 3 is 5000mV.
* Configurable output voltage on all Bucks ranges from 680mV to 1950mV.
*
* \author Petar Suknjaja
*
*/
// ------------------------------------------------------------------- INCLUDES
#include "board.h"
#include "log.h"
#include "c3xbuck.h"
// ------------------------------------------------------------------ VARIABLES
static c3xbuck_t c3xbuck;
static log_t logger;
// ------------------------------------------------------ APPLICATION FUNCTIONS
void application_init ( void )
{
log_cfg_t log_cfg;
c3xbuck_cfg_t cfg;
/**
* Logger initialization.
* Default baud rate: 115200
* Default log level: LOG_LEVEL_DEBUG
* @note If USB_UART_RX and USB_UART_TX
* are defined as HAL_PIN_NC, you will
* need to define them manually for log to work.
* See @b LOG_MAP_USB_UART macro definition for detailed explanation.
*/
LOG_MAP_USB_UART( log_cfg );
log_init( &logger, &log_cfg );
log_info( &logger, "---- Application Init ----" );
// Click initialization.
c3xbuck_cfg_setup( &cfg );
C3XBUCK_MAP_MIKROBUS( cfg, MIKROBUS_1 );
c3xbuck_init( &c3xbuck, &cfg );
Delay_ms ( 100 );
c3xbuck_default_cfg ( &c3xbuck );
log_info( &logger, "---- Application Task ----" );
}
void application_task ( void )
{
// Task implementation.
log_printf( &logger, "Setting predefined values : \r\n" );
log_printf( &logger, "Buck 1 : 1000 mV\r\n");
log_printf( &logger, "Buck 2 : 1250 mV\r\n");
log_printf( &logger, "Buck 3 : 1500 mV\r\n");
c3xbuck_set_voltage( &c3xbuck, C3XBUCK_SELECT_BUCK_1, C3XBUCK_OUTPUT_VOLTAGE_1000mV );
c3xbuck_set_voltage( &c3xbuck, C3XBUCK_SELECT_BUCK_2, C3XBUCK_OUTPUT_VOLTAGE_1250mV );
c3xbuck_set_voltage( &c3xbuck, C3XBUCK_SELECT_BUCK_3, C3XBUCK_OUTPUT_VOLTAGE_1500mV );
// 10 seconds delay
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
log_printf( &logger, "Setting default values: \r\n");
log_printf( &logger, "Buck 1 : 1800 mV\r\n");
log_printf( &logger, "Buck 2 : 3300 mV\r\n");
log_printf( &logger, "Buck 3 : 5000 mV\r\n");
c3xbuck_set_voltage( &c3xbuck, C3XBUCK_SELECT_BUCK_1, C3XBUCK_BUCK_DEFAULT_OUTPUT_VOLTAGE );
c3xbuck_set_voltage( &c3xbuck, C3XBUCK_SELECT_BUCK_2, C3XBUCK_BUCK_DEFAULT_OUTPUT_VOLTAGE );
c3xbuck_set_voltage( &c3xbuck, C3XBUCK_SELECT_BUCK_3, C3XBUCK_BUCK_DEFAULT_OUTPUT_VOLTAGE );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
}
int main ( void )
{
/* Do not remove this line or clock might not be set correctly. */
#ifdef PREINIT_SUPPORTED
preinit();
#endif
application_init( );
for ( ; ; )
{
application_task( );
}
return 0;
}
// ------------------------------------------------------------------------ END
额外支持
资源
类别:降压


































