嗨,我们有精确的硬件(PCB)作为邻近参考设计,我可以刻录接近智能标签固件并能够与其进行通信。我的设置很好。我使用SmartTags Android应用程序来测试它。我正在尝试修改固件并与应用程序连接。最初它有效,但在一段时间后它会睡觉,它永远不会在Android应用程序中显示。请让我们知道解决方案。即使是示例固件,也没有修改代码也会看到此行为。无论如何都可以重新配置或避免睡眠模式..etc。帮助需要,谢谢。
嗨madhusf,
默认情况下,近距离演示将停止广告,并在广告播放一段时间后进入深度睡眠,直到按下按钮。这不是一个问题,而是一个设置,以节省电力。
您不必完全禁用睡眠,只需删除广告上的TIMOUT设置。
转到user_config.h.
set .adv_scenario = def_add_forever,
在用户\u默认\u hnd \u conf下
并看看它是否适用于您想要的
嗨qinjiny,谢谢你的回复。我检查了代码。此设置已存在于下面的用户\ u config.h中。请让我知道如果任何其他设置丢失。另外,请让我知道在哪个代码这个按钮的功能是照顾。------------------------------------.....static const struct default\u handlers\u configuration user\u default\u hnd\u conf={//配置默认处理程序使用的通告操作//可能值:// - def_adv_forever//-DEF\u ADV\u带\u超时。adv_scenario = def_add_forever,
//配置DEF\u ADV\u超时时的播发周期。//以计时器单位(10ms)测量。使用MS\ TO\ TIMERUNITS宏进行转换//从毫秒(ms)到计时器单位。.Advertise_Period = MS_TO_TIMERUNITS(10000),
//配置默认处理程序的安全开始操作//如果启用了安全性(cfg_app_security).security_request_scenario = def_sec_req_on_connect.};
..------------------------------
正在中设置外部唤醒机制app_advertise_complete()用户\u proxr.c文件中的回调。但是,如果场景设置为DEF\u ADV\u FOREVER,则系统不应达到此点。如果这个系统仍然处于睡眠状态,而且从未醒来,那么还有其他一些潜在的问题。请尝试以下步骤来解决硬件/软件方面的问题。
1尝试在一个开发工具包上运行一个干净的开箱即用的prox\u reporter项目,Adv scenario设置为FOREVER。如果您没有看到任何问题,那么在您的自定义硬件上运行这个相同的映像,看看是否可以正常工作。如果这里有问题,那么问题可能出在自定义硬件上。
2另外,用您现在使用的导致此睡眠问题的映像编写一个开发工具包。使用SmartSnippets工具箱中的Power Profiler工具,检查处于永久睡眠阶段时的读数。如果系统处于完全休眠状态或发生崩溃,该读数可以提供一些理解。
3.您还可以从Keil MDK调试此程序,并查看它是否达到任何断点或看门狗重置等,这将确认崩溃。
请告诉我们您在这些测试中的观察结果。,
此外,您在默认项目中取出的所有更改是什么。这可能会提供有关导致此问题可能的一些信息。
最好的,lc_dialog.
嗨lc_dialog,谢谢你的回复。我尝试过了下面的回复。
1尝试在一个开发工具包上运行一个干净的开箱即用的prox\u reporter项目,Adv scenario设置为FOREVER。如果您没有看到任何问题,那么在您的自定义硬件上运行这个相同的映像,看看是否可以正常工作。如果这里有问题,那么问题可能出在自定义硬件上。答:是的,没有发现问题,它的工作。实际上,应用程序在后台锁定了蓝牙会话/对象。因此,必须重新启动或关闭应用程序才能再次扫描和连接。
2另外,用您现在使用的导致此睡眠问题的映像编写一个开发工具包。使用SmartSnippets工具箱中的Power Profiler工具,检查处于永久睡眠阶段时的读数。如果系统处于完全休眠状态或发生崩溃,该读数可以提供一些理解。答:我不知道如何使用功率分析器,但使用它:它总是显示相同的电流,没有变化。请建议设置。
3.您还可以从Keil MDK调试此程序,并查看它是否达到任何断点或看门狗重置等,这将确认崩溃。ANS:没尝试过,我猜现在的睡眠问题是解决的。
问题:但是,我需要知道我们如何从没有任何GPIO触发的情况下唤醒睡眠或深睡眠?请建议。随着基于象限测量的电流电源绘制,显示了该接近项目的约600UA电流使用情况。请帮助我们降低功率和最佳值。
谢谢您,马杜夫
嗨,马杜夫,
您是否跟踪了如何解决问题。请在此帖子上发布,以便其他用户也可以利用它。
关于你的问题。您只需将睡眠模式配置为延长睡眠,就可以从延长睡眠中醒来。它将在内部配置一个计时器,并每隔一段时间进行唤醒,以执行任何可编辑事件或任何用户定义的事件(您需要在特定回调点添加这些事件来处理任何数据)。如果您在应用程序中没有进行任何数据处理,那么您的睡眠电流应该比您现在所经历的要小得多。我建议您检查您的设计是否有任何电流泄漏等,以确保您的外部外设不会产生额外的电流。
如果您想让我们快速回顾一下您的设计,请将您的示意图与开关上的电感器(L1)和16MHz晶体(Y1)的数据表一起发送。如果你想分享这个安全,我可以给你一个安全的服务器链接上传你的文件。
亲爱的LC_Dialog,请发送安全链接,以便我将分享您的设计,要求和睡眠要求。谢谢你。
使用以下链接将文件上载到服务器。请注意,您只能在此处上载。
https://diasemi.egnyte.com/ul/jrgzqaa9x6.
从原理图中,我注意到您正在使用设计中的模块。模块设计指南可能与我们的设计指南不同。我们对客户设计的基本检查已经在模块上完成,并且根据模块供应商的建议,这些组件的其余部分应该被设计为系统,这是模块供应商可以帮助的。
我建议您先查看一下软件应用程序,看看设备是否真的进入睡眠状态。因为你看到的电流消耗接近于有效电流,这可能主要是由于软件设计中的一些问题,或者如果主回路被修改而使处理器保持有效。请参阅技术支持网站上有关如何利用SmartSnippets工具箱等工具的文档,您可以查看程序执行过程中发生的情况。
嗨madhusf,
默认情况下,近距离演示将停止广告,并在广告播放一段时间后进入深度睡眠,直到按下按钮。这不是一个问题,而是一个设置,以节省电力。
您不必完全禁用睡眠,只需删除广告上的TIMOUT设置。
转到user_config.h.
set .adv_scenario = def_add_forever,
在用户\u默认\u hnd \u conf下
并看看它是否适用于您想要的
嗨qinjiny,谢谢你的回复。我检查了代码。
此设置已存在于下面的用户\ u config.h中。请让我知道如果任何其他设置丢失。另外,请让我知道在哪个代码这个按钮的功能是照顾。
------------------------------------
.....
static const struct default\u handlers\u configuration user\u default\u hnd\u conf={
//配置默认处理程序使用的通告操作
//可能值:
// - def_adv_forever
//-DEF\u ADV\u带\u超时
。adv_scenario = def_add_forever,
//配置DEF\u ADV\u超时时的播发周期。
//以计时器单位(10ms)测量。使用MS\ TO\ TIMERUNITS宏进行转换
//从毫秒(ms)到计时器单位。
.Advertise_Period = MS_TO_TIMERUNITS(10000),
//配置默认处理程序的安全开始操作
//如果启用了安全性(cfg_app_security)
.security_request_scenario = def_sec_req_on_connect.
};
..
------------------------------
嗨madhusf,
正在中设置外部唤醒机制app_advertise_complete()用户\u proxr.c文件中的回调。但是,如果场景设置为DEF\u ADV\u FOREVER,则系统不应达到此点。如果这个系统仍然处于睡眠状态,而且从未醒来,那么还有其他一些潜在的问题。请尝试以下步骤来解决硬件/软件方面的问题。
1尝试在一个开发工具包上运行一个干净的开箱即用的prox\u reporter项目,Adv scenario设置为FOREVER。如果您没有看到任何问题,那么在您的自定义硬件上运行这个相同的映像,看看是否可以正常工作。如果这里有问题,那么问题可能出在自定义硬件上。
2另外,用您现在使用的导致此睡眠问题的映像编写一个开发工具包。使用SmartSnippets工具箱中的Power Profiler工具,检查处于永久睡眠阶段时的读数。如果系统处于完全休眠状态或发生崩溃,该读数可以提供一些理解。
3.您还可以从Keil MDK调试此程序,并查看它是否达到任何断点或看门狗重置等,这将确认崩溃。
请告诉我们您在这些测试中的观察结果。,
此外,您在默认项目中取出的所有更改是什么。这可能会提供有关导致此问题可能的一些信息。
最好的,
lc_dialog.
嗨lc_dialog,谢谢你的回复。我尝试过了下面的回复。
1尝试在一个开发工具包上运行一个干净的开箱即用的prox\u reporter项目,Adv scenario设置为FOREVER。如果您没有看到任何问题,那么在您的自定义硬件上运行这个相同的映像,看看是否可以正常工作。如果这里有问题,那么问题可能出在自定义硬件上。
答:是的,没有发现问题,它的工作。实际上,应用程序在后台锁定了蓝牙会话/对象。因此,必须重新启动或关闭应用程序才能再次扫描和连接。
2另外,用您现在使用的导致此睡眠问题的映像编写一个开发工具包。使用SmartSnippets工具箱中的Power Profiler工具,检查处于永久睡眠阶段时的读数。如果系统处于完全休眠状态或发生崩溃,该读数可以提供一些理解。
答:我不知道如何使用功率分析器,但使用它:它总是显示相同的电流,没有变化。请建议设置。
3.您还可以从Keil MDK调试此程序,并查看它是否达到任何断点或看门狗重置等,这将确认崩溃。
ANS:没尝试过,我猜现在的睡眠问题是解决的。
问题:但是,我需要知道我们如何从没有任何GPIO触发的情况下唤醒睡眠或深睡眠?请建议。随着基于象限测量的电流电源绘制,显示了该接近项目的约600UA电流使用情况。请帮助我们降低功率和最佳值。
谢谢您,
马杜夫
嗨,马杜夫,
您是否跟踪了如何解决问题。请在此帖子上发布,以便其他用户也可以利用它。
关于你的问题。
您只需将睡眠模式配置为延长睡眠,就可以从延长睡眠中醒来。它将在内部配置一个计时器,并每隔一段时间进行唤醒,以执行任何可编辑事件或任何用户定义的事件(您需要在特定回调点添加这些事件来处理任何数据)。如果您在应用程序中没有进行任何数据处理,那么您的睡眠电流应该比您现在所经历的要小得多。我建议您检查您的设计是否有任何电流泄漏等,以确保您的外部外设不会产生额外的电流。
如果您想让我们快速回顾一下您的设计,请将您的示意图与开关上的电感器(L1)和16MHz晶体(Y1)的数据表一起发送。如果你想分享这个安全,我可以给你一个安全的服务器链接上传你的文件。
最好的,
lc_dialog.
亲爱的LC_Dialog,请发送安全链接,以便我将分享您的设计,要求和睡眠要求。谢谢你。
嗨,马杜夫,
使用以下链接将文件上载到服务器。请注意,您只能在此处上载。
https://diasemi.egnyte.com/ul/jrgzqaa9x6.
最好的,
lc_dialog.
嗨,马杜夫,
从原理图中,我注意到您正在使用设计中的模块。模块设计指南可能与我们的设计指南不同。我们对客户设计的基本检查已经在模块上完成,并且根据模块供应商的建议,这些组件的其余部分应该被设计为系统,这是模块供应商可以帮助的。
我建议您先查看一下软件应用程序,看看设备是否真的进入睡眠状态。因为你看到的电流消耗接近于有效电流,这可能主要是由于软件设计中的一些问题,或者如果主回路被修改而使处理器保持有效。请参阅技术支持网站上有关如何利用SmartSnippets工具箱等工具的文档,您可以查看程序执行过程中发生的情况。
最好的,
lc_dialog.