定制Board_ext睡眠电流

21个帖子/ 0新
最后一篇
prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
定制Board_ext睡眠电流

嗨对话小组

我正在使用我们自己的定制板,电池电量,降压模式,带有DSPS设备项目的外部闪光灯DA14580,添加了I2C驱动器(SDA,带有拉向上寄存器的SCL - 10K连接到VBAT3V),一旦数据发送到掌握BLE设备,DSP设备断开并进入延长睡眠,我已经使用数字万用表(DMM)检查了功耗,
广告- 512ua,
连接,数据XT - 776UA
睡觉 - 322ua,

我已经测试了Murata P2ML 3656 - Murata LBCA2HNZYZ) - ZY DEV板的相同DSP设备项目 - 带DMM和Power Profiler(具有I2C驱动程序,静态数据)
广告 - 240A,
连接,数据XT - 537UA
睡觉 - 110ua,

我也用Dialog IOT da14583测试了相同的设置
广告- 250ua,
连接,数据XT - 313 - 512 UA
睡觉 - 227 ua,我得到了......

为什么我无法获得1.3u安培或附近?Plaese帮助我解决这个问题?

谢谢对话团队

设备:
mt_dialog.
离线
最后一次露面:3个月3周前
职员
加入:2015-06-08 34
嗨prasanth,

嗨prasanth,

DSPS项目永远不会陷入永久睡眠,它总是保持广告或保持连接活跃和睡眠之间的连接间隔或广告间隔。因此,如果在你的固件设置设备永久睡眠,你有睡眠功能,那么你应该看到一个接近1.3uA的值。额外的消耗可能由您的板上的其他设备(我认为板上有一个I2C内存,所以额外的功耗可能来自该设备)或由您的板上的泄漏而增加。还有你提到的数值,我想它们是你的仪器测量的平均值。请在教程部分的Documents选项卡中查看教程4:配置睡眠模式,了解如何正确测量睡眠期间的功耗。

谢谢mt_dialog.

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
在DSPS设备项目中,一次

在DSP设备项目项目中,一旦数据TX到掌握完成,我们就会让DSP设备睡眠5分钟,我能够看到设备不广告5分钟,只有DSP设备才能广告。所以睡眠正常工作,不是吗?

i2c驱动温湿度传感器,环境光传感器。

正如您所说的那样,如果硬件问题,为什么在DA14583 IOT套件中也是如此,我得到了相同的,(通过连接万用表,到智能乐队IOT电路板的开/关开关,电池端TI万用表正,CKT结束到Mutimeter COM)

谢谢对话框

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
嗨对话框

嗨对话框

PFA。电力分析器图形

谢谢

mt_dialog.
离线
最后一次露面:3个月3周前
职员
加入:2015-06-08 34
嗨prasanth,

嗨prasanth,

从功率分析器中我可以看到设备正在休眠和苏醒,所以是的,设备应该处于休眠状态,因为你的主板上有传感器,你的传感器消耗额外的能量,不仅仅是580消耗能量。关于物联网,由于它也有额外的传感器,当设备休眠时,你无法获得约1.4uA,当前消耗约为11uA。

谢谢mt_dialog.

Wisilica.
离线
最后一次露面:11个月4周前
加入:2015-03-17 08:16
你好,

你好,

您需要切断闪光灯的供应,以降低电流消耗。

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
嗨Wisilica

嗨Wisilica

感谢你的回复。

那么如何DA14583物联网智能Bond套件将提供11ua,这也使用“切断spi供应”配置。请告诉我更多的细节。

I2C传感器有1​​0K上拉,这会导致任何问题吗??......如何解决这些......?

谢谢你

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
嗨对话框

嗨对话框

https://support.dialog-semiconductor.com/issues-external-spi-flash

正如上面提到的,次要引导加载程序会修复这个问题吗(对于DA14580) ??

谢谢你。

mt_dialog.
离线
最后一次露面:3个月3周前
职员
加入:2015-06-08 34
嗨prasanth,

嗨prasanth,

IOT,在未使用时,在低功耗模式下设置闪光灯(它仍然消耗一些功率,但在它功能完全运行时不得如此,但它还在低功耗模式下设置附加传感器,可以检查SPI_FLASH_POWER_DOWN()spi_flash.c文件中的函数。正如我上面提到的那样,您必须检查系统上的其他模块是否会消耗额外的电源。

关于你上面粘贴的帖子是否会解决您的问题,您是否确定您的自定义设备消耗的额外功率来自外部闪光灯?二级引导程序的原因是,如果您卸下闪光灯,并且您想重置ROM Bootloader没有能够唤醒闪光灯的功能,那就是辅助引导加载程序来加电闪存因此,580将正常启动。因此,从这种额外的功耗从(存储器,传感器等)来看。

谢谢mt_dialog.

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
嗨对话框

嗨对话框

如何在DSPS设备项目中使用spi_flash_power_down() (DA14580和DA14583),是否有样例项目或文档??

PFA在我的定制板中的外部外围设备,我也在DSP中使用这种电池电平监控,

我有两个定制板,一个带DA14580BLE,另一个带DA14583,如果SPI闪光灯绘制更多的电源,为什么既有定制板电流消耗几乎相同?与DA14583的定制板应显示较少,对右?

mt_dialog.
离线
最后一次露面:3个月3周前
职员
加入:2015-06-08 34
嗨prasanth,

嗨prasanth,

由于DSP示例不使用闪光灯,因此使用Flash开发的参考设计具有此功能,只需调用上面提到的功能,以便将闪光灯淘压,如信标,实现功能位于SPI_FLASH.C驱动程序中。

我无法预见为什么您的电路板上有额外的电流,因为这取决于一个相当大量的因素,您必须将一个逐一检查一个增加功耗,检查其他设备。583有一个嵌入式闪光灯,你提到580有一个外部闪光灯,所以我想如果你不向闪光灯供电,你将最终获得类似的功耗,因为我之前提到了583上的闪光灯需要如果这是问题,也可以断电。

谢谢mt_dialog.

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
嗨对话框

嗨对话框

https://wenku.baidu.com/view/20871b8127d3240c8547fd2.html.
我跟随以上链接以在dsps_device中使用spi_flash_power_down(),但不起作用...

从信标项目中,在每次读/写操作spi_flash_power_down()被调用后,但在DSP设备项目中,我没有向SPI Flash做任何读/写,那么我必须从哪个函数调用这个spi_flash_power_down(),所以它会有道理。

比你

mt_dialog.
离线
最后一次露面:3个月3周前
职员
加入:2015-06-08 34
嗨prasanth,

嗨prasanth,

我提到了Flash Power Down命令,以便将这种命令发送到Flash,以检查闪存是否会使您在电路板上看到的额外电量。所以你可以才能调用它才能检查消耗是否会下降,如果您没有看到任何效果,那么其他东西正在消耗额外的电流。

谢谢mt_dialog.

Wisilica.
离线
最后一次露面:11个月4周前
加入:2015-03-17 08:16
甚至我们都没有看到它的力量

即使我们在调用SPI_FLASH_POWER_DOWN()时也没有看到电源下降。不得不通过GPIO来控制闪存的电源,电源关闭闪光灯。

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
嗨对话框

嗨对话框

问1。在我们的定制板DA14580——与外部闪光灯,我已经删除了所有引体向上(10 k),注册和测试,我能不能通过SmartSnippets flash /擦除SPI内存,如果我把在CS销引体向上,这是工作,但在灯塔和智能标记的设计我没有看到任何在CS销拔起吗? ?

谢谢对话框

mt_dialog.
离线
最后一次露面:3个月3周前
职员
加入:2015-06-08 34
嗨prasanth,

嗨prasanth,

信标或智能标签上的CS或任何开发套件中没有上拉,如果这是您的问题。一个疯狂的猜测,也许还有其他东西也在推动CS线,这可能是定制板上的电气问题,这导致您的SPI线上的电感噪音?

谢谢mt_dialog.

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
嗨对话框

嗨对话框

谢谢对话框,现在我可以使用没有上拉寄存器的SPI闪存。

在dsp设备项目中
如果我在“user_periph_setup.c”中调用spi_flash_power_down()中,我闪过这个代码,我的设备在一段时间后没有广告,也在擦除SPI Flash我面临错误,在IoT项目中,SPI_FLASH_POWER_DOWN()在阅读/写入配置参数时调用,但在DSPS如何使用此API时?

谢谢对话框

mt_dialog.
离线
最后一次露面:3个月3周前
职员
加入:2015-06-08 34
嗨prasanth,

嗨prasanth,

periph_init()是在设备的每个唤醒中执行的函数,如果在某些时候设备停止或给您错误,您将必须通过调试检查实际原因。无论如何,没有适当的点,你会把闪存的断电,在阅读或写入数据之后与闪存相互作用后,应立即调用函数(如物联网使用它)。现在,如果出于某种原因,闪光灯有源DSP运行时可以调用App_On_Init()回调中的函数,这应该是OK。

谢谢mt_dialog.

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
嗨对话框

嗨对话框

正如您所建议的那样,我正在user_on_init()中调用spi_flash_power_down()

void user_on_init(void)
{
// SPS应用程序初始化
user_scheduler_init ();

default_app_on_init();
da14580_spi_flash_init();
da14580_spi_flash_deinit ();
}

void da14580_spi_flash_init(void)
{

SPI_Pad_t cs_pad_param;
Int8_t man_dev_id = 0;

cs_pad_param。端口= SPI_EN_GPIO_PORT;
cs_pad_param.pin = spi_en_gpio_pin;

man_dev_id = spi_flash_enable (cs_pad_param。港口,cs_pad_param.pin);

if(man_dev_id == spi_flash_auto_detect_not_detected)
{
//未识别设备。
//使用默认参数。
//可选地,这里可以断言错误。
spi_flash_init(spi_flash_default_size,spi_flash_default_page);
}
}

void da14580_spi_flash_deinit(void)
{
spi_flash_power_down();
}
但我仍然得到235ua在下次睡眠
作为Menitone DIN SMART_TAG项目,我已更改user_periph_setup.c

#如果DEVELOPMENT_DEBUG

void gpio_reservations(无效)
{
/*
*全球保留GPIO预订
*/

/*
*应用特定GPIO预订。仅在开发模式(#if development_debug)使用

IE。
保留_gpio(descriptiply_name,gpio_port_0,gpio_pin_1,pid_gpio);//保留P_01作为通用用途I / O.
*/
//保留_GPIO(UART1_TX,GPIO_UART1_TX_PORT,GPIO_UART1_TX_PIN,PID_UART1_TX);
//保留_GPIO(UART1_RX,GPIO_UART1_RX_PORT,GPIO_UART1_RX_PIN,PID_UART1_RX);

Reserve_gpio (i2c_scl, i2c_gpio_port, i2c_scl_pin, pid_i2c_scl);// vp.
保留_gpio(i2c_sda,i2c_gpio_port,i2c_sda_pin,pid_i2c_sda);// vp.

保留_GPIO(LED_PORT,GPIO_PORT_1,GPIO_PIN_1,PID_GPIO);

Reserve_gpio (spi_cs, spi_gpio_port, spi_cs_pin, pid_spi_en);
保留_GPIO(SPI_CLK,SPI_GPIO_PORT,SPI_CLK_PIN,PID_SPI_CLK);
Reserve_gpio (spi_do, spi_gpio_port, spi_do_pin, pid_spi_do);
保留_GPIO(SPI_DI,SPI_GPIO_PORT,SPI_DI_PIN,PID_SPI_DI);
/*
#if(uart_hw_flow_enabled)
预留gpio (uart1_rts_port, gpio_uart1_rts_pin, pid_uart1_rtsn);
保留_GPIO(UART1_CTS,GPIO_UART1_CTS_PORT,GPIO_UART1_CTS_PIN,PID_UART1_CTSN);
# endif

#ifdef cfg_printf_uart2.
保留_GPIO(UART2_TX,GPIO_UART2_TX_PORT,GPIO_UART2_TX_PIN,PID_UART2_TX);
保留_GPIO(UART2_RX,GPIO_UART2_RX_PORT,GPIO_UART2_RX_PIN,PID_UART1_RX);
# endif
*/

}
#endif // development_debug.

/ * *
****************************************************************************************
* @brief Map端口引脚
*
*映射UART和SPI端口引脚和GPIO端口
****************************************************************************************
*/
void set_pad_functions(void)//设置GPIO端口功能模式
{

/*
*配置应用程序端口。
IE。
gpio_configurepin(gpio_port_0,gpio_pin_1,输出,pid_gpio,false);//将P_01设置为通用输出
*/

GPIO_ConfigurePin(LED_PORT, LED_PIN, OUTPUT, PID_GPIO, true);

gpio_configurepin(i2c_gpio_port,i2c_scl_pin,输入,pid_i2c_scl,false);// vp.
gpio_configurepin(i2c_gpio_port,i2c_sda_pin,输入,pid_i2c_sda,true);// vp.

// gpio_configurepin(gpio_uart1_tx_port,gpio_uart1_tx_pin,输出,pid_uart1_tx,false);
GPIO_ConfigurePin(GPIO_UART1_RX_PORT, GPIO_UART1_RX_PIN, INPUT_PULLUP, PID_UART1_RX, false);

gpio_configurepin(spi_gpio_port,spi_cs_pin,输出,pid_spi_en,true);
gpio_configurepin(spi_gpio_port,spi_clk_pin,输出,pid_spi_clk,false);
GPIO_ConfigurePin(SPI_GPIO_PORT, SPI_DO_PIN, OUTPUT, PID_SPI_DO, false);
GPIO_ConfigurePin(SPI_GPIO_PORT, SPI_DI_PIN, INPUT, PID_SPI_DI, false);

/*
#if(uart_hw_flow_enabled)
gpio_configurepin(gpio_uart1_rts_port,gpio_uart1_rts_pin,输出,pid_uart1_rtsn,false);
gpio_configurepin(gpio_uart1_cts_port,gpio_uart1_cts_pin,input_pullup,pid_uart1_ctsn,false);
# endif / / UART_HW_FLOW_ENABLED

#ifdef cfg_printf_uart2.
gpio_configurepin(gpio_uart2_tx_port,gpio_uart2_tx_pin,输出,pid_uart2_tx,false);
gpio_configurepin(gpio_uart2_rx_port,gpio_uart2_rx_pin,输入,pid_uart2_rx,false);
# endif
*/

}
我也有undef #undef CFG_DEVELOPMENT_DEBUG
删除了EXT-SPI闪存的CS引脚中的上拉。

我在开发板上检查了同样的项目,仍然是230uAmps,所以我不认为硬件泄漏是造成当前的消耗

什么可能是问题.......... ??其他选择是什么

谢谢

mt_dialog.
离线
最后一次露面:3个月3周前
职员
加入:2015-06-08 34
嗨prasanth,

嗨prasanth,

所以你已经测试了设备,基本上没有闪存和额外的I2C组件,你的fw仍然消耗大约230uA。没有明显的原因,我的意思是,如果设备是清醒的,当你进行测量时,功耗应该远远高于230uA。没有设备连接在580(内存设备,I2C传感器等),我能想到的唯一的方式,可能消耗这种功率是通过UART引脚的某种泄漏,虽然我不能看到任何类似的DSPS参考设计,您是否尝试删除UART连接并检查这是否会降低您的当前消耗。

谢谢mt_dialog.

prasanth.velliy ...
离线
最后一次露面:2年15小时前
加入:2016-02-18 12:18
嗨Dilaog团队

嗨Dilaog团队

感谢您的回复…

您是否尝试删除UART连接并检查这是否降低了当前的消耗??
Q1:如何删除,你的意思是在periph_setup.c中发表评论

Q2:我已经启用spi_flash_power_down,在DSPS_DEVICE项目中,我得到睡眠电流160ua,如果我禁用176ua,我没有看到很大的区别…

Q3:正如你所说的那样,如果在定制板里有一些其他泄漏,如何测量或找到泄漏

Q4:我用一些未使用的GPIO引脚作为测试点,这会导致泄漏吗?

Q5:在RFIOP中,我们已经添加了1.2PF和3.9nh离散组件(在PI网络中,R3 - > 1.2PF,R4 - > Open,R5 - > 3.9nh),这会导致任何问题吗?

Q6:在ext睡眠模式 - I2C GPIO很高,我得到3V,这是一个问题吗?如果是,我可以驾驶低吗?