12个职位/ 0个新职位
最后发表
sprhawk
离线
最后看到:3年4个月前
加入:2016-03-03十七25
无法进入 睡眠模式问题

我遇到了与这个问题一模一样的问题http://support.dialog-semiconductor.com/sdk5problem-about-extsleep

#undef CFG_DEVELOPMENT_DEBUG在da1458x_config_basic.h
const static sleep_state_t app_default_sleep_mode=ARCH_EXT_SLEEP_ON;

将程序写入FLASH (DA14583)

断开JTAG,断电,上电

手机可以发现设备广播一至二秒,之后设备就没有反应了。

设备:
Gongyu_Dialog
离线
最后看到:1天5小时前
加入:2016-04-27 07:07
1.如果不开睡眠,是不是都是正常的?

1.如果不开睡眠,是不是都是正常的?
2 .外部32 k是否正常?
3.编译对应的是583的版本吗?凯尔上需要选择ble_app_profile_583,即开启__DA14583__

sprhawk
离线
最后看到:3年4个月前
加入:2016-03-03十七25
1.不开睡眠正常

1.不开睡眠正常
我按照5.0.4的sleepmode的演示改的,开与不开睡眠在执行上有一点区别
(就是增加了在app_easy_wakeup。

这些代码在devkit-pro上是正常的

2.没有外部32 k。这个不是必须的器件吧?是不是应该修改da1458x_advanced里相关的值才可以吗?

3.编译都是按照583进行编译的,没有问题

sprhawk
离线
最后看到:3年4个月前
加入:2016-03-03十七25
附件是我修改的5.0.4下的ble_app

附件是我修改的5.0.4下的ble_app_peripheral的工程。我也试过完全一样的对5.0.3的修改。结果一样

1。在启用休眠后无法通过wkup中断唤醒,如果开启休眠则是正常的
2。在启用休眠后多次点按键(在DevKit-Pro上),过段时间会进入一个600 ua的电流,我认为这是进入了某个死循环或者HardFault之类,但是无法确定

现在在5.0.3和5.0.4都是同样的问题。用的是DevKit-Pro。因为我自己的板子没有32 k晶振,所以在da1458x_advanced_conf.h中做了修改。

附件:
sprhawk
离线
最后看到:3年4个月前
加入:2016-03-03十七25
触发的问题应该是

触发的问题应该是

arch_ble_ext_wakeup_on ();

和app_easy_wakeup的问题,没有触发到回调。

如果注释掉arch_ble_ext_wakeup_on ();可以正常触发唤醒功能(我在中断里有判断 )

但是唤醒几次之后程序依然还有挂掉的可能

sprhawk
离线
最后看到:3年4个月前
加入:2016-03-03十七25
附件是我认为死掉了的时候的PowerProfiler

附件是我认为死掉了的时候的PowerProfiler的读数

sprhawk
离线
最后看到:3年4个月前
加入:2016-03-03十七25
对于ble_app_sleepmode的示例工程

对于ble_app_sleepmode的示例工程

修改了两处:

1. user_config.h中常量静态sleep_state_t app_default_sleep_mode = ARCH_DEEP_SLEEP_ON;
2.user_sleepmode.c中189行的arch_set_deep_sleep换成了arch_set_extended_sleep

使用橄榄球员下载程序,用权力分析器测试

sprhawk
离线
最后看到:3年4个月前
加入:2016-03-03十七25
女士直接在发送完,在1500位置上,似乎程序就挂了

女士直接在发送完,在1500位置上,似乎程序就挂了

附件:
Gongyu_Dialog
离线
最后看到:1天5小时前
加入:2016-04-27 07:07
需要在函数user_app_adv_undirect

需要在函数user_app_adv_undirect_complete (uint8_t状态)里面补一句user_app_adv_start . .原来的设计,需要按键才能再广播

sprhawk
离线
最后看到:3年4个月前
加入:2016-03-03十七25
不知道您 是否看了我的附件

不知道您 是否看了我的附件

并不是不广播的问题。而是测试电流从睡眠的水平一下上到了600 ua左右,我判断是进入了(DBG_IS_UP)时的那个循环。

Gongyu_Dialog
离线
最后看到:1天5小时前
加入:2016-04-27 07:07
我用你这份工程ble_app_sleepmode.zip

我用你这份工程ble_app_sleepmode.zip,我这里没问题。需要找你确认的是,你有没有改过我标注的这句话。如果电平不锁存,会导致重复进中断。会出现你说的这种情况
静态内联void arch_turn_peripherals_off (sleep_mode_t current_sleep_mode)

If (current_sleep_mode == mode_ext_sleep || current_sleep_mode == mode_deep_sleep)

渣打银行——>可控硅| = 1 < < 2;//在系统控制寄存器中启用深度睡眠模式位(SCR[2]=SLEEPDEEP)

SetBits16 (SYS_CTRL_REG PAD_LATCH_EN 0);///////////////////////////////////××××××××××××××××××

sprhawk
离线
最后看到:3年4个月前
加入:2016-03-03十七25
检查了代码,和你的是一样的

检查了代码,和你的是一样的