DSPS应用程序设备侧生产代码配置

25个帖子/ 0新
最后一篇
imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
DSPS应用程序设备侧生产代码配置

你好,

我想从UART编译DSPS代码以获得生产引导,并延长睡眠支持。

I suppose extended sleep has to be enabled as follows:

/ *睡眠模式* /
#define cfg_ext_sleep.
//#undef cfg_deep_sleep
//#undef cfg_ext_sleep

我是否需要将Development_debug设置为0?

#define development_debug 0.

是否有任何其他标志必须为生产代码设置?

Regards,
Ilia

Device:
imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
代码适用于

代码适用于“设备”侧。

mt_dialog.
离线
最后一次露面:2 months 2 weeks ago
职员
加入:2015-06-08 11:34
嗨imalamoud.

嗨imalamoud.

正如您所说,您需要,将CFG_EXT_SLEEP和Development_debug定义为0

你也必须

define APP_BOOT_FROM_OTP if you are going to burn firmware on the OTP,

define READ_NVDS_STRUCT_FROM_OTP if the device is going to read NVDS data from the OTP

define CFG_WDOG

谢谢mt_dialog.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
Thank you!

Thank you!

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
你好,

你好,

我们将通过没有OTP的UART启动。我仍然需要将Development_debug设置为0(在代码中为0用于OTP引导)吗?
2. I re-compiled the code as per your recommended settings with Extended Sleep and tried to load to our test setup - break-away part of the BASIC kit (all jumpers removed) connected to FTDI UART via P0_2,_3 and flow control on P0_6, _7. I can not get it to advertise or in the best case it advertises for a very short period. Tried hardware and sw flow control.
然而,一旦我重新编译了延长睡眠禁用,它就能正常 - 广告和连接和流数据。

What could be the reason?

mt_dialog.
离线
最后一次露面:2 months 2 weeks ago
职员
加入:2015-06-08 11:34
嗨imalamoud.

嗨imalamoud.

1) Yes, you should set DEVELOPMENT_DEBUG to 0, unnecessary code will enter your program and also Watchdog is not going to reset your program if something happens.

2)Does your code executes when CFG_EXT_SLEEP is defined and downloaded using the jtag ? Have you made any changes to the code ?

谢谢mt_dialog.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
你好,

你好,

我们配置了我们的设备侧,如上所述使用CFG_EXT_SLEEP。

通过UART上传代码。设置HW流量控制。

设备连接并发送数据正常。

However the minimum power consumption is always about 600uA. Looks like it does not enter extended sleep.

我们可能错过了什么?

mt_dialog.
离线
最后一次露面:2 months 2 weeks ago
职员
加入:2015-06-08 11:34
嗨imalamoud.

嗨imalamoud.

By defining CFG_UART_HW_FLOW_CTRL you set the device to operate under RTS/CTS (for the other post).

How do you measure the current consmption in your device? Can you see from smart snippets that your device does not enter extended sleep ?

谢谢mt_dialog.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
感谢你的回复。

感谢你的回复。

已经开发了一个基于14580模块的小型接口板,并通过优质的Fluke Micro电流表直接测量电路板电路。
Such measurements are pretty common for us as our product (battery-powered LCR Meter tweezers) has sleep current below 2uA and the current
必须不时检查(电池很小)。所以测量错误不太可能。

Data packets (10bytes) are sent once in a second. Between data packages RTS is pulled up. To send data, RTS is pulled down and we wait for CTS.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
那可能是什么原因

那么什么可能是没有进入睡眠模式的原因?

bb_dialog.
离线
最后一次露面:8 months 1 week ago
职员
加入:2013-12-05 14:44
嗨imalamoud.,

嗨imalamoud.,

600μA很可能是由连接的调试器引起的。
当我连接JTAG / SWD时,我也读取约0.6mA。

When in idle mode (powered up, but no code running), I measure about 0.6mA too.
在这种情况下,设备可能会在您所说的情况下进入睡眠模式。

是同一电源的其他设备,可能导致睡眠高睡眠电流吗?

Best regards, BB_Dialog.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
你好,

你好,

JTAG / SWD未连接。电路板是单独的,只有UART引脚,HW复位和电源在连接器上。电流直接在电路板上测量,因此没有其他设备。

同样,也许我们正在做不正确的DSP CTS / RTS控制。

我们配置了CFG_UART_HW_FLOW_CTRL并在RTS / CT下运行。

Data packets (10bytes) are sent once in a second. Between data packages RTS is pulled up. To send data, RTS is pulled down and we wait for CTS.

Is this correct?

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
可能是什么原因

什么可能是没有进入睡眠模式的原因?我们尝试了几个模块。

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
可能是什么原因

什么可能是没有进入睡眠模式的原因?我们尝试了几个模块。

mt_dialog.
离线
最后一次露面:2 months 2 weeks ago
职员
加入:2015-06-08 11:34
嗨imalamoud.,

嗨imalamoud.,

我们可以提出的唯一认为,也许是因为DSP的连接间隔是两个小12.5毫秒(给予少量睡眠)仪器没有显示实际功耗。您可以尝试的是测量广告模式中的功耗(内部内部更大)或更改(仅用于测试,这将减少Datarate)连接间隔参数(#define app_param_updt_intv_min 10 //n*1.25ms)和测量再次。请尝试使用分析仪测量电源以确保设备无法睡眠。

谢谢mt_dialog.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
你好,

你好,

让我重新上限:

- 14580 is mounted on a separate module board. The board is connected to MSP430. Only 5 pins of 14580 are used - PO assigned as RX/TX/CTS/RTS and Reset.
- 我们使用DSP设备侧启动它。延长睡眠已启用。
- 可以使用优质仪器测量消耗电流。
- 如果MSP430处于睡眠模式时,没有14580板消耗1.2UA。
- 一旦连接电路板即使MSP430睡眠消耗始终稳定在600A。
我重复,MSP430处于睡眠模式。

Can you explain in detail - do we need pull up or pull down some pins (e.g. RTS) or set them in a third state? Which pins?
14580可以通过输入消耗电流吗?

Please help as we really hit this block and can not proceed.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
对此进行任何评论?

对此进行任何评论?

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
我可以发送你的原理图。

我可以发送你的原理图。

mt_dialog.
离线
最后一次露面:2 months 2 weeks ago
职员
加入:2015-06-08 11:34
嗨imalamoud.,

嗨imalamoud.,

只要给我们一些时间,我们正在检查它。

谢谢mt_dialog.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
你好,

你好,

Quite some time passed.

This issue still persists in our production device.

你有一些想法吗?

mt_dialog.
离线
最后一次露面:2 months 2 weeks ago
职员
加入:2015-06-08 11:34
嗨imalamoud.,

嗨imalamoud.,

I dont think that the issue has to do with fact that the 580 is not sleeping but there should be somekind of leakage on the custom board through the pins, if you have a pin as a pullup and the connected pin is a pulldown then there is going to be a leakage. In the DSPS application both the RX and the CTS are pullup, so if the pins of the external MCU are pulled down when the device sleeps, there will be a leakage. Try to remove the pins one by one and check if the total current consumption of the system drops.

谢谢mt_dialog.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
谢谢你快点回复

谢谢你快点回复

MCU引脚转向第三个状态(切换到输入)以启动睡眠状态。它可以导致泄漏。另外,它是否可以泄漏0.5mA?

只是为了验证,我已配置以下参数

#define CFG_MEM_MAP_EXT_SLEEP
#undef cfg_mem_map_deep_sleep.

#undef cfg_development_debug.

sleep_state_t app_default_sleep_mode = arch_ext_sleep_on;

我错过了配置的东西吗?

mt_dialog.
离线
最后一次露面:2 months 2 weeks ago
职员
加入:2015-06-08 11:34
嗨imalamoud.,

嗨imalamoud.,

不,如果你有外部单片机我的针t think that there should be any kind of leakage. So i suppose that the fw runs when the 580 is attached and advertises (just to make things clear the device sleeps between the advertising events ), is there any chance that there are pending data in the DSPS queue ? If for example while the device advertises its receives data, this will keep the device awake (even one character will keep the device in no sleep mode while it advertises). So perhaps the 580 receives junk from the device at some point, there is no connection, therefore nowhere to send the data so it stays awake until a connection is made. You can also detach the 580 from the MCU and measure the power consumption in stand alone in order to isolate the problem (check if its something related with the external MCU or only with the 580).

谢谢mt_dialog.

imalamoud.
离线
最后一次露面:3个月1周前
加入:2014-11-16 21:34
我们注意到当CTS-RTS时

我们注意到,当CTS-RTS与MCU断开连接时,每3.5毫秒仍有一些580针的活动。
它告诉你一些事情吗?我们可以无意中启用(或左启用)一些计时器吗?

mt_dialog.
离线
最后一次露面:2 months 2 weeks ago
职员
加入:2015-06-08 11:34
嗨imalamoud.,

嗨imalamoud.,

I dont think so, the DSPS doens't use any timer in order to drive the RTS, every time that the device wakes up and advertises it pulls down its RTS in order to indicate that a reception can be performed because it has awaken, the application when advertising it keeps the RTS low for about 5 ms and sleeps (hence the RTS is high for about 100ms which is the advertising interval). When the device is connected, the RTS is low for about 2.5 ms and high for about 10ms.

谢谢mt_dialog.