关于睡眠的一些问题

12个帖子/ 0新
最后一篇
兰迪宇
离线
最后一次露面:2年10个月前
加入:2015-01-28 08:49
关于睡眠的一些问题

我的项目是可由DSP修改,我希望我的从设备进入睡眠模式后,发送10个数据包的数据host.And想了几分钟后唤醒它,重复上述过程。
1.我想知道如何实现这一功能。我浏览了数据表-UM-B-006和Training_04,我对这两个文件的关系非常困惑。第一个数据表似乎非常复杂,第二个数据表似乎非常复杂步骤可以实现睡眠状态。有一个更容易理解和完全的工作表。

谢谢你

设备:
mt_dialog.
离线
最后一次露面:3个月13小时以前
职员
加入:2015-06-08 11:34
嗨兰迪宇,

嗨兰迪宇,

广告和连接间隔之间的580里睡觉,你想往里钻永久睡眠?或者你不间隔之间休眠(你有睡眠功能关闭),你想保留再次启用休眠活着有什么联系?为了使沉睡的功能,如果你不睡觉,你可以调用arch_set_extended睡眠,这将允许您连接和广告间隔之间的睡眠,如果你从中央要断开连接并陷入永久睡眠您必须以停止所有的BLE活动(不要启动广告)发出断开并调用arch_ble_ext_wakeup_on(),在此之前,为了在特定数量醒来,你将不得不要么建立一个ke_timer或外部中断时间或通过外部中断。

谢谢mt_dialog.

兰迪宇
离线
最后一次露面:2年10个月前
加入:2015-01-28 08:49
1.My问题是我不知道

1.My问题是我不知道如何一步进入深度睡眠模式,并通过ke_timer.I醒来觉得已经提供对话的细节是非常messy.Do你有例子的deails可以帮助我一步一步去实现它
2.which功能是ke_timer(可以唤醒在深模式装置)?
3.我想送10点的数据,在那之后我希望它步入深度睡眠mode.does你的意思是,当我打电话arch_ble_ext_wakeup_on(),它会步入深层模式?
4.如果我想深度睡眠,没有外部晶振32MHz的必须存在?

mt_dialog.
离线
最后一次露面:3个月13小时以前
职员
加入:2015-06-08 11:34
嗨兰迪宇,

嗨兰迪宇,

1.你可以为我已经表明您以前的帖子通过kenrel计时器做到这一点http://support.dialog-seminiondiondiondiond.com/deep-sleep-mode.

2.有为了通过内核计时器从睡眠中醒来,临睡前只需设置一个计时器,并在计时器处理程序启动的广告没有任何特定的功能。

3.你提到你想发送10个价值然后落在永久睡眠中,你不能在你连接的时候摔倒,你必须断开连接然后落在永久睡眠中。Arch_ble_ext_wakeup_on()在睡眠前使用,并且为了向您的系统声明他必须等待外部信号以唤醒。它在第12页的UM-B-006文档中描述的SDK3中相同的功能。

4.外部XTAL32振荡器仅在升压模式下强制,请在相关常见问题解答下面检查链接:

http://support.dialog-semiconductor.com/guide/faq-hardware-peripherals

谢谢mt_dialog.

兰迪宇
离线
最后一次露面:2年10个月前
加入:2015-01-28 08:49
2.在任何时候都有意思

2.指示您的意思任何时间调用回函数可以从深度睡眠模式唤醒设备?我在项目中使用了函数app_easy_timer,如果我不希望这个定时器处理程序唤醒设备。在睡觉前我取消它当
3.当使用arch_ble_ext_wakeup_on(),只有外部事件唤醒它?我想ke_timer将其唤醒

mt_dialog.
离线
最后一次露面:3个月13小时以前
职员
加入:2015-06-08 11:34
嗨兰迪宇,

嗨兰迪宇,

2.是任何内核定时器的回调可以从睡眠模式中唤醒您的设备,如果你在睡觉,你不希望特定定时器处理程序,以唤醒你的设备,你将不得不取消。

3.如果您在通用睡眠前设置了内核计时器,您将从计时器唤醒,您不必使用ARCH_BLE_EXT_WAKEUP_ON()。

谢谢mt_dialog.

兰迪宇
离线
最后一次露面:2年10个月前
加入:2015-01-28 08:49
我的设备可以睡

我的设备可以睡眠和唤醒,也有一些其他的问题
1.外设的状态(GPIO UART ADC ECT。),它们是否对应于重置后的状态?
2.如果使用休眠模式我的设备,可以使用看门狗?他们会冲突吗?

mt_dialog.
离线
最后一次露面:3个月13小时以前
职员
加入:2015-06-08 11:34
嗨兰迪宇,

嗨兰迪宇,

1.我不明白你的问题,你是什么意思什么是外设的状态,当你在睡眠模式下的外设停用。

2.您可以使用看门狗在睡眠模式下,其当设备处于休眠模式,但将被激活,当设备退出睡眠模式停用。

谢谢mt_dialog.

兰迪宇
离线
最后一次露面:2年10个月前
加入:2015-01-28 08:49
1.I平均状态下拉

1.我的平均状态是拉下/向上,输入/输出,高电阻。
和唤醒时,需要重新初始化我这一切的?
我有一个问题,
Q1
.I想P03输出高电平,当连接到主​​站。
然后我坐了
GPIO_reservation(){
保留_GPIO(StBY,GPIO_PORT_0,GPIO_PIN_3,PID_GPIO);
......
}

void set_pad_function()
{
GPIO_ConfigurePin(GPIO_PORT_0,GPIO_PIN_3,OUTPUT,PID_GPIO,真正的);
......
}
user_on_init()
{
GPIO_CONFIGUREPIN(GPIO_PORT_0,GPIO_PIN_3,输出,PID_GPIO,FALSE); //设置输出
......
}

user_on_connection()
{
GPIO_ConfigurePin(GPIO_PORT_0,GPIO_PIN_3,OUTPUT PID_GPIO,TRUE); //当连接组高
......
}
user_before_sleep(void)
{
ARCH_SET_EXTEDDE_SLEEP();
GPIO_CONFIGUREPIN(GPIO_PORT_0,GPIO_PIN_3,输出,PID_GPIO,FALSE); //如果删除始终高,则为0.916V。
}
如果GPIO_CONFIGUREPIN(GPIO_PORT_0,GPIO_PIN_3,输出,PID_GPIO,FALSE)始终高p03始终高;删除
user_before_sleep(无效),做它表明我的设备是不是去休眠状态?
但是我已经测量了我的设备电流2.5μA,当发送通告时,电流约为100-200μA,连接电流
是600-800μA。
难道这些不知道已经睡如果不是我我怎样才能确保在Froums我已经看到,使用SmartSnippet到makesure.But我不要;γ T konw如何使用它,
它需要任何其他硬件吗?

有什么不对的地方,请给我一个帮助。
Q2:
我发现,我用jatg来调试一步一步,
SLEEP_MODE = rwip_sleep();在arch_main
SLEEP_MODE的价值总是在mode_active。
因为这句话
if(check_sys_startup_period())
休息;///这里有一个突破
ifind它总是在这里打破。
我的调试方法是否错误?或者这正常。

mt_dialog.
离线
最后一次露面:3个月13小时以前
职员
加入:2015-06-08 11:34
嗨兰迪宇,

嗨兰迪宇,

Q1。当我说外围设备被取消激活时,这意味着您无法使用ADC的定时器等,就GPIO(无论您是否连接)时,当580才能休眠时,GPIO将锁存,以便保持其状态当你回来睡觉时。唤醒时,Periph_init再次运行并初始化原始状态的GPIO。因此,您必须在PeripH_Init函数中放置一个变量,该函数保存PIN睡眠前的状态,并且当Periph_Init()重新运行根据该变量设置GPIO时。

从我可以从您粘贴的代码中讲述,每次外设初始化运行时都会将引脚配置为真,因此如果您已连接,如果启用了延长睡眠,则PIN的连接是旋转的。智能片段需要Pro套件以便操作,并为确保设备睡觉的好方法是熟练的。

Q2。如果您在睡眠模式下,您将无法调试设备,因为调试器被分离,所以你必须要禁用睡眠,如果你禁用休眠您的设备将被激活所有的时间。

谢谢mt_dialog.

兰迪宇
离线
最后一次露面:2年10个月前
加入:2015-01-28 08:49
Q1:user_before_sleep()具有

Q1:
我想知道销电压,如果我使用万用表测量它,何时睡觉。它会在睡眠前保持电压
user_before_sleep()已经将其设置低
Q2:不能够()之前执行WFI?

mt_dialog.
离线
最后一次露面:3个月13小时以前
职员
加入:2015-06-08 11:34
嗨兰迪宇,

嗨兰迪宇,

Q1。之所以看到引脚为低电平在这个岗位解释http://support.dialog-semicondiondiondum/my-gpio-cant-change-state-处于...

Q2。我想你误会了BLE和休眠功能,当你的广告和你的连接在580持续下降到睡眠广告事件和连接事件之间。该WFI()是580个stucks并等待BLE中断命令(会发生这种中断时,它的时间为下一个BLE事件)。

谢谢mt_dialog.