你好对话!
我们希望为DSP启用深度睡眠模式,我们已在KEL项目中更改了user_config.h上的配置值
const static sleep_state_t app_default_sleep_mode = arch_ext_sleep_on;
Also we have disabled the debug mode at the config_basic.h
#undef CFG_DEVELOPMENT_DEBUG
在ysel_periph_setup.h上,我们已更改为:
#define cfg_uart_hw_flow_ctrl.
#undef CFG_UART_HW_FLOW_CTRL
当我们对DIV的电源时,我们有电池供电设备,我们播出了10秒钟,并且停止可能会睡觉,但是当我们发现DSP应用程序时从未再次唤醒。
任何进一步的帮助,我有actached图像。
提前致谢,
Marios
Device:
Hi marios,
The DSPS reference application code does not support deep sleep configuration. Apart from that the deep sleep mode demands to burn to OTP. Please check the Introduction section ofUM-B-038:对话框串行端口配置文件的用户手册(DA14580)来自我们的支持页面的用户手册。中央和外围设备都可以在活动模式下或延长睡眠而不是深度睡眠模式操作。通过拒绝cfg_development_debug,您可以禁用调试模式,因此您无法热热连接调试器并获得调试信息。例如,如果将发生硬肢或NMI,则无法捕获它。此外,如果启用CFG_DEVELINMENT_DEBUG,则可以在不编程OTP内存的情况下模拟深度睡眠模式,但是NI DSPS应用程序,因为我已经提到,不支持深度睡眠。关于CFG_UART_HW_FLOW_CTRL定义,请阅读用户手册的5.1.3部分。DSP提供了软件(XON / XOFF)和硬件(RTS / CTS)流控制方案,分别由user_periph_setup.h配置文件中的cfg_uart_sw_flow_ctrl和cfg_uart_hw_flow_ctrl定义选择。请您可以在开发模式下运行代码,热连接调试器,并找到代码在设备进入睡眠模式时崩溃的原因>如果代码由于硬盘驱动器之后,设备永远不会醒来的最可能原因或者是NMI,所以它停止广告,您无法使用DSP移动应用程序发现它。请首先在扩展睡眠模式下配置您的设备,并定义CFG_DEVELVEMMENT_DEBUG。
谢谢,PM_DIALOG.
你好谢谢你的快速回复!!
Yes you have right i mean extended sleep mode !
我们希望DA14580进入我们知道在DSP中所用的扩展睡眠模式,
有优化的功耗。
我们在我们的自定义板上使用外部Atmel处理器一切都在活动模式下运行良好。
How to get DA14580 to enter sleep ?
1)当不是手机中的删除过程时,DA 14580睡觉
2)
如果我们从手机发现,那么醒来并恰好
并传输数据
现在我们有600 ua
提前致谢,
Marios
Hi marios,
In order to get the DA14580 into extended sleep mode, you should configure the app_default_sleep_mode value with the proper define into the user_config.h header file. Please, check the code snippets below:
请注意,设备在广告/连接间隔之间睡眠。你能澄清一下:“如果我们从手机发现,那就醒来并连接“?要获取有关DSP参考应用程序代码的更多信息,请阅读UM-B-038:对话框串行端口配置文件的用户手册(DA14580)来自我们的支持页面的用户手册。In this document, you will be able to learn about the architecture and the software implementation details of the DSPS. If you found any of the above answers useful please mark one of them as accepted.
谢谢,PM_DIALOG.
你好PM_DIALOG!
感谢您的快速回复 !
can you check the code from your side ?
请帮助我们将这种巨大的顽固消耗Slove为600 ua
我如何将DSP项目发送到您身边的DSP项目,因为我无法在论坛上上传超过10 MB。
we want to achive the 1,6 uA or something similar will be ok.
我们在主动和延长的睡眠模式下具有相同的毅力消费。
我的一些照片。
谢谢你的珍贵帮助!
很高兴听到你的声音!
提前,
Marios
Hi marios,
当设备处于睡眠模式时,实现〜1.6UA功耗,根本没有任何活动。DSP示例不会陷入永久性睡眠,但根据其广告和连接间隔,继续醒来,因此无法看到〜1.6UA功耗。这意味着该设备在广告和连接间隔之间进入延长睡眠。此外,DSP示例使用UART接收和传输数据,因此功耗将相当增加。如果您使用外部SPI Flash,请澄清您是否可以澄清?如果是,请注意,如果您的电路板上的SPI闪光灯也在增加功耗,如果您没有向下电(通过闪存 - SPI_FLASH_POWER_DOWN()的电源掉电命令)。如果您有一个定制板,因为我能从PDF中看到,我强烈建议您检查您的电路板是否有任何组件,可以增加功耗。上传您的DSP项目是不需要的,因为功耗增加的最可能原因不会来自DSPS代码。另外,你能告诉我你什么时候获得600U的电流消耗?传输或接收数据时? Please, try to review your PCB first.
谢谢,PM_DIALOG.
你好PM_DIALOG!
感谢您的快速回复 !
1)是的,我们正在使用对话框推荐的外部SPI闪存(SmartBond W25X20CL)
我在我们的自定义板上附加了整个源代码配置和DA14580的功耗。
2)We have changed the UART TX GPIO from default PO_5 to p 1_3 because we have conflict during spi flash is that
隐窝?
有关这一点的任何建议吗?我们可以用来避免与SPI冲突?
The RX GPIO pin P0_4 remains as is by default.
We haven't connect the cts and rts pins is this pins neasessary to use HW flow control ?
正如您在上一篇文章上提到的那样“(通过闪存的电源下降命令 - SPI_FLASH_POWER_DOWN()”II WICH
我们添加或配置此参数的代码的一部分?
3) We have measured our board and has normal power consumption without the DA14580 chip 24 uA
提前致谢,
Marios
Hi marios,
谢谢,PM_DIALOG.
你好PM_DIALOG!
感谢您的快速回复!we have finally archived low power consumption as expected with the above configuration as you can see on the attached image. but we can't receive any data to the other side when we are on extended sleep mode . When we are in active mode everything works as expected.
系统广播,我们能够连接并尝试发送数据但没有成功。
1)我们使用HW流量控制。如何设置CTS和RTS引脚?
2)This pins needs to be connected on our Atmel processor and if yes need to be high or low ?
3) Can we use the HW flow control without these pins ? and if yes how ?
提前致谢,
Marios
Hi marios,
请在user_periph_setup.c文件中查看gpio_reservations()和set_pad_functions()函数,您将找到UART GPIOS的设置。如果您决定使用硬件流控制,则应使用CTS / RTS引脚。请检查user_periph_setup.h标题文件中是否定义了cfg_uart_hw_flow_ctrl?此定义启用/禁用硬件流控制。此外,我强烈建议您检查DSP是否正在使用DSP移动应用程序正常工作,并尝试向设备发送一些字节。你能看到你的设备是广告吗?
谢谢,PM_DIALOG.
你好PM_DIALOG!
感谢您的快速回复!
1)是的DA14580广告,我们可以与之连接。
2)我们将数据与DSP应用程序发送,另一边没有任何东西。
如何使用CTS和RTS PINS到我们的Atmel处理器的正确连接是什么?
我们已阅读UM-B-038:对话框串口配置文件(DA14580),但尚不清楚。
你能给我们更多信息吗?
CTS / RTS握手的时序图是什么时候确定何时需要高或低,以从DSPS复制从DS14580开始和停止读取数据?
/ **
****************************************************************************************
*
* @file user_periph_setup.h.
*
*@brief Peripherals setup header file.
*
*版权所有(c)2012。Dialog Se雷竞技电竞平台miconductum Ltd,未发表的工作。这台电脑
*program includes Confidential, Proprietary Information and is a Trade Secret of
*Dialog Semiconductor Ltd. All use, disclosure, and/or reproduction is prohibited
*除非书面授权。版权所有。
*
*和贡献者。
*
****************************************************************************************
* /
#ifndef _user_periph_setup_h_
#define _user_periph_setup_h_
/ *
*包括文件
****************************************************************************************
* /
#include "rwip_config.h"
#include“global_io.h”
#include“arch.h”
#include“da1458x_periph_setup.h”
# include“i2c_eeprom.h”
/ *
*定义
****************************************************************************************
* /
#undef CFG_UART_SW_FLOW_CTRL
#define cfg_uart_hw_flow_ctrl.
///可用波特率115200,57600,38400,19200,9600
#define cfg_uart_sps_baudrate uart_baudrate_9k6
/ *启用wkupct。wkupct_quadec驱动程序要求。* /
#define WKUP_ENABLED
/ **************************************************************************************** /
/ *UART configuration */
/ **************************************************************************************** /
#define GPIO_UART1_TX_PORT GPIO_PORT_0
#define GPIO_UART1_TX_PIN GPIO_PIN_4
#define gpio_uart1_rx_port gpio_port_1.
#define gpio_uart1_rx_pin gpio_pin_3.
#define gpio_uart1_rts_port gpio_port_0.
#define GPIO_UART1_RTS_PIN GPIO_PIN_3
#define gpio_uart1_cts_port gpio_port_0.
#define gpio_uart1_cts_pin gpio_pin_2.
/ **************************************************************************************** /
/ * UART2 GPIO配置* /
/ **************************************************************************************** /
#ifdef CFG_PRINTF_UART2
#define GPIO_UART2_TX_PORT GPIO_PORT_1
#define gpio_uart2_tx_pin gpio_pin_2.
#define gpio_uart2_rx_port gpio_port_1.
#define GPIO_UART2_RX_PIN GPIO_PIN_3
#万一
/ *
*功能声明
****************************************************************************************
* /
void periph_init(空白);
void gpio_reservations(无效);
#万一// _USER_PERIPH_SETUP_H_
提前致谢,
Marios
嗨玛丽奥斯,
The RTS/CTS that the reference design uses is standard UART with H/W flow control, the RTS of the ATMEL goes to the CTS of the 580 and the corresponding connection
对于Atmel的580和CTS的RTS。只要外部处理器FW或任何控制Atmel上的UART使用HW流控制符合UART协议,那么您就可以进行通信。我建议首次尝试使用FTDI电缆并将DSP设备与PC连接,因为用户手册(UM-B-038)建议或尝试追踪580的UART行并检查580是否实际发送数据但是某种原因你不能在另一边收到它。同样在文件中还提出了适当的连接(第8段)。
谢谢mt_dialog.
你好PM_DIALOG!
感谢您的快速回复!
Thanks for the usefull informatition!
1)可以使用S / W流量控制并具有
低功耗?如果是的话怎么样?
2)还可以使用HW流量控制而没有这些引脚?CTS / RTS是我们可以做的事情,因为我们仅用于来自DA14580的接收数据而不传输。
Thanks you !!!
很高兴听到你的声音!
Marios
Hi marios,
谢谢mt_dialog.
你好PM_DIALOG!
感谢您的快速回复!
Our processor is in sleep and waits for DA14580 to wake it when data is available from the dsps app how we set up this ?
我们已经为HW流量控制配置了CTS / RTS引脚。
we want the RTS signal from the DA14580 to be constant high when DA14580 has not data for transmition and when DA14580 has data to transmit the RTS signal should go low.
。我们已经观察到,当BA14580之前的DA14580在配对之前,每个1秒钟都低于广告时段。这会导致许多问题醒来
我们的控制器无缘无故。与DA14580配对时,我们观察RTS信号的快速变化。这会导致唤醒处理器的问题。只有在DA14580时
receives data to transmit RTS signal goes stabily constant low. Therefore we have to change the DA14580 software in order to have stable high level signal at RTS during advertising and pairring periods.
PLEASE reply how we affect the DA14580 software to have RTS signal stale bahavior.
我已经上面测量了RTS。
非常感谢您对我们的要求感兴趣
很高兴引导我们实现这一目标
提前致谢 ,
Marios
Hi marios,
嗯,580当使用DSP固件操作时设备醒来时它会将RTS线路切换到低,以便指示他准备就绪(设备将拉动
RTS low whenever it wakes up, in every connection interval or advertising interval, also be aware that when the device is receiving, when the data transmited reach the internal FIFO
阈值RTS将返回高电平,以通知它应该停止发送数据的另一侧)。在DSP中,RTS信号由HW和软件控制(只要RX FIFO进入特定阈值,HW将自动地拉高RT,以便向另一侧指示不发送任何数据)。如果您想更改此,则可以在UART_SPS_INIT()中更改UART配置,或从PIN中删除CTS功能。
谢谢mt_dialog.