定制Board_ext睡眠电流

21 posts / 0 new
Last post
prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
定制Board_ext睡眠电流

Hi Dialog Team

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

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

我也用Dialog IOT da14583测试了相同的设置
广告-250ua,
连接,数据XT - 313 - 512 UA
Sleep - 227 ua , i am getting...

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

谢谢对话团队

设备:
MT_dialog
离线
Last seen:2个月2周前
Staff
Joined:2015-06-08 11:34
嗨,普拉桑,

嗨,普拉桑,

DSPS项目从不处于永久休眠状态,它始终保持广告或保持连接处于活动状态,并在连接间隔或广告间隔之间休眠。因此,如果在你的固件你设置在永久睡眠设备,你有睡眠功能,那么你应该看到一个值接近1.3uA。额外的功耗可能是由板上的其他设备(我假设板上有一个I2C内存,因此额外的功耗可能来自该设备)或由your板上的泄漏造成的。还有你提到的值,我想它们是你测量的平均值。有关如何正确测量睡眠期间的功耗,请查看教程部分“文档”选项卡中的教程4:配置睡眠模式。

Thanks MT_dialog

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
在DSPS设备项目中,一次

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

温度和湿度传感器、环境光照传感器的i2c驱动器。。

As you said if Hardware issue , why in DA14583 IOT kit also i am getting the same , (By connecting multimeter , to the on / off switch of Smart band IOT BLE board , battery end ti multimeter positive , ckt end to mutimeter com)

谢谢对话框

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
Hi Dialog

Hi Dialog

PFA。电力分析器图形

谢谢

Attachment:
MT_dialog
离线
Last seen:2个月2周前
Staff
Joined:2015-06-08 11:34
嗨,普拉桑,

嗨,普拉桑,

从power profiler中,我可以看到设备正在休眠和唤醒,所以是的,设备应该处于休眠状态,因为您的板上有传感器,传感器消耗功率额外的功率,而不仅仅是580消耗功率。关于物联网,因为它还有额外的传感器,当设备处于睡眠状态时,你将无法获得约1.4uA的电流,因此消耗的电流约为11uA。

Thanks MT_dialog

Wisilica.
离线
Last seen:10个月2周前
Joined:2015-03-17 08:16
你好,

你好,

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

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
嗨Wisilica

嗨Wisilica

感谢你的回复。

那么DA14583物联网智能键合套件将如何提供11ua,这是否也使用了“切断spi电源”配置。。请给我更多的细节。。。

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

thank you

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
Hi Dialog

Hi Dialog

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

如上所述,辅助引导加载程序会修复这个问题吗(对于DA14580)??

谢谢.

MT_dialog
离线
Last seen:2个月2周前
Staff
Joined:2015-06-08 11:34
嗨,普拉桑,

嗨,普拉桑,

The IoT, sets the flash in low power mode when its not used (it still consumes some power but not as much as it had when it was fully functional), it also sets the additional sensors in low power mode, you can check the spi_flash_power_down() function in the spi_flash.c file. As i ve mentioned above you will have to check if the other modules that you have on your system consume additional power.

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

Thanks MT_dialog

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
Hi Dialog

Hi Dialog

如何在DSP设备项目(DA14580和DA14583)中使用spi\ U flash\ U power\ U down(),是否有任何示例项目或文档??

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

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

MT_dialog
离线
Last seen:2个月2周前
Staff
Joined:2015-06-08 11:34
嗨,普拉桑,

嗨,普拉桑,

Since the DSPS example doens't use a flash there is no example there, but reference designs developed with flash have this feature, you just invoke the function i mentioned above in order to powerdown the flash, like the beacon, the implementation of the function is located in the spi_flash.c driver.

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

Thanks MT_dialog

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
Hi Dialog

Hi Dialog

https://wenku.baidu.com/view/20871b8127d3240c8547efd2.html
i have followed above link to use spi_flash_power_down() in DSPS_Device, but not working,...

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

Than you

MT_dialog
离线
Last seen:2个月2周前
Staff
Joined:2015-06-08 11:34
嗨,普拉桑,

嗨,普拉桑,

I ve mentioned the flash power down command in order to send this kind of command to the flash in order to check if the flash its consuming the extra power that you see on your board. So you can just invoke it in order to check if the consumption will go down, if you dont see any effect then something else is consuming that extra current.

Thanks MT_dialog

Wisilica.
离线
Last seen:10个月2周前
Joined:2015-03-17 08:16
即使是我们也看不到力量

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

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
Hi Dialog

Hi Dialog

问题1。在我们的定制板DA14580-与外部闪存,我已经删除了所有的上拉寄存器(10k),并测试,我不能闪存/擦除SPI内存通过SmartSnippets,如果我把在CS引脚上拉,它是工作的,但在信标和智能标签设计,我没有看到任何在CS引脚上拉??

谢谢对话框

MT_dialog
离线
Last seen:2个月2周前
Staff
Joined:2015-06-08 11:34
嗨,普拉桑,

嗨,普拉桑,

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

Thanks MT_dialog

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
Hi Dialog

Hi Dialog

thank you Dialog , Now i can able to use the SPI flash without pullup register.

在DSPS设备项目中
if i invoke spi_flash_power_down() inside periph_init() in "user_periph_setup.c" , i flashed this code , my device is not advertising after some time , also after this while erasing spi flash i am facing errors , In IOT project , spi_flash_power_down() invoked while reading/writing config parameters , but in DSPS how to use this API ?

谢谢对话框

MT_dialog
离线
Last seen:2个月2周前
Staff
Joined:2015-06-08 11:34
嗨,普拉桑,

嗨,普拉桑,

The periph_init() is a function that is executed in every wakeup of the device, if after some point the device stalls or gives you errors you will have to check the actual reason via debugging. Anyway, there is no proper point that you will place the power down of the flash, the function should be invoked right after interfacing with the flash for example right after reading or writing data (as the IoT uses it). Now in case for some reason the flash is powered when the DSPS runs you can invoke the function in the app_on_init() callback, that should be ok.

Thanks MT_dialog

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
Hi Dialog

Hi Dialog

As you suggested , i am invoking the spi_flash_power_down() , in user_on_init()

void user_on_init(void)
{
//SPS应用程序初始化
用户_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\参数;
int8_t man_dev_id = 0;

cs\u pad\u param.port=SPI\u EN\u GPIO\u端口;
cs_pad_param.pin = SPI_EN_GPIO_PIN;

man_dev_id=spi_flash_enable(cs_pad_param.port,cs_pad_param.pin);

if (man_dev_id == SPI_FLASH_AUTO_DETECT_NOT_DETECTED)
{
//未识别设备。
// The default parameters are used.
// Alternatively, an error can be asserted here.
spi_flash_init(spi_flash_default_size,spi_flash_default_page);
}
}

void da14580_spi_flash_deinit(void)
{
spi_flash_power_down();
}
但我还是在睡觉的时候得到了235ua
As menitone din smart_tag project , i have changed user_periph_setup.c

#如果开发\u调试

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

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

i.e.
保留_gpio(descriptiply_name,gpio_port_0,gpio_pin_1,pid_gpio);//保留P_01作为通用用途I / O.
*/
//RESERVE_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);

保留GPIO(I2C_SCL、I2C_GPIO_端口、I2C_SCL_引脚、PID_I2C_SCL);//副总裁
保留_gpio(i2c_sda,i2c_gpio_port,i2c_sda_pin,pid_i2c_sda);// vp.

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

保留GPIO(SPI\ U CS、SPI\ U GPIO\ U端口、SPI\ U CS\ U引脚、PID\ U SPI\ U EN);
RESERVE_GPIO( SPI_CLK, SPI_GPIO_PORT, SPI_CLK_PIN, PID_SPI_CLK);
保留GPIO(SPI\ U DO、SPI\ U GPIO\ U端口、SPI\ U DO\ U引脚、PID\ U SPI\ U DO);
RESERVE_GPIO( SPI_DI, SPI_GPIO_PORT, SPI_DI_PIN, PID_SPI_DI);
/*
#if (UART_HW_FLOW_ENABLED)
保留\u GPIO(UART1 \u RTS、GPIO \u UART1 \u RTS \u端口、GPIO \u UART1 \u RTS \u引脚、PID \u UART1 \u RTSN);
保留_GPIO(UART1_CTS,GPIO_UART1_CTS_PORT,GPIO_UART1_CTS_PIN,PID_UART1_CTSN);
#结束

#ifdef cfg_printf_uart2.
RESERVE_GPIO( UART2_TX, GPIO_UART2_TX_PORT, GPIO_UART2_TX_PIN, PID_UART2_TX);
RESERVE_GPIO( UART2_RX, GPIO_UART2_RX_PORT, GPIO_UART2_RX_PIN, PID_UART1_RX);
#结束
*/

}
#endif // development_debug.

/**
****************************************************************************************
*@brief Map端口引脚
*
* The Uart and SPI port pins and GPIO ports are mapped
****************************************************************************************
*/
void set_pad_functions(void) // set gpio port function mode
{

/*
*配置应用程序端口。
i.e.
GPIO_ConfigurePin( GPIO_PORT_0, GPIO_PIN_1, OUTPUT, PID_GPIO, false ); // Set P_01 as Generic purpose Output
*/

GPIO\ U配置引脚(LED\ U端口,LED\ U引脚,输出,PID\ GPIO,真);

gpio_configurepin(i2c_gpio_port,i2c_scl_pin,输入,pid_i2c_scl,false);// vp.
GPIO_ConfigurePin(I2C_GPIO_PORT, I2C_SDA_PIN, INPUT, PID_I2C_SDA, true); // VP

// gpio_configurepin(gpio_uart1_tx_port,gpio_uart1_tx_pin,输出,pid_uart1_tx,false);
//GPIO\ U配置引脚(GPIO\ U UART1\ U RX\端口、GPIO\ U UART1\ U RX\引脚、输入\上拉、PID\ U UART1\ U RX、false);

GPIO_ConfigurePin( SPI_GPIO_PORT, SPI_CS_PIN, OUTPUT, PID_SPI_EN, true );
GPIO_ConfigurePin( SPI_GPIO_PORT, SPI_CLK_PIN, OUTPUT, PID_SPI_CLK, false );
GPIO\ U配置引脚(SPI\ U GPIO\ U端口、SPI\ U DO\ U引脚、输出、PID\ U SPI\ U DO、false);
GPIO\ U配置引脚(SPI\ U GPIO\ U端口,SPI\ U DI\ U引脚,输入,PID\ U SPI\ U 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\u HW\u FLOW\u已启用

#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);
#结束
*/

}
我还取消了#undef CFGŠu DEVELOPMENTŠu DEBUG
Removed the pullup in cs pin of EXT-SPI flash .

我已经检查了同一个项目在开发板,仍然230uAmps,所以我不认为硬件泄漏是造成电流消耗

what could be the problem..........??what are the other options

谢谢

MT_dialog
离线
Last seen:2个月2周前
Staff
Joined:2015-06-08 11:34
嗨,普拉桑,

嗨,普拉桑,

因此,你已经测试了设备基本上没有闪存和额外的I2C组件,你的定制板和你的固件仍然消耗约230uA。没有明显的原因,我的意思是,如果设备是醒着的时候,你正在测量的功耗应该远远高于230uA。由于580上没有连接任何设备(内存设备、I2C传感器等),我能想到的消耗这种电源的唯一方法可能是通过UART引脚的某种泄漏,尽管我在DSP参考设计中看不到类似的情况,您是否尝试过删除UART连接,并检查这是否会降低您的电流消耗。

Thanks MT_dialog

prasanth.velliy ...
离线
Last seen:1 year 10 months ago
Joined:2016-02-18 12:18
嗨Dilaog团队

嗨Dilaog团队

谢谢你的回复。。

您是否尝试过删除UART连接并检查这是否会降低您的电流消耗??
Q1:如何删除,你的意思是在periph评论_setup.c ??

问题2:我已经启用了spi\U flash\u power\u down,在DSPS\u设备项目中,我的睡眠电流是160ua,如果我禁用了176ua,我看不出有什么大的区别。。。

Q3: As you said if some other leakage is there in custom board , how to measure or find the leakage

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

Q5 : in RFIOp for matching we have added 1.2pf and 3.9nh discrete components (in the PI network , R3 -> 1.2pf , R4 -> open , R5 -> 3.9nh) , will this cause any issues ??

Q6 : In ext sleep mode - i2c gpio are high , i am getting 3v , was it an issue ? if yes can i drive low ??