定制板达14585 -偏差行为

⚠️
大家好. .谢谢光临论坛。令人兴奋的消息!我们现在在移动的过程中,我们的新论坛平台,将提供更好的功能和包含在主对话框的网站。所有文章和帐户已经被迁移。我们现在只接受交通新论坛,请发布任何新的线程//www.xmece.com/support。我们将修复bug /优化搜索和标签在接下来的日子里。
13个新帖子/ 0
最后发表
wisilica
离线
最后看到:10个月2周前
加入:2015-03-17 08:16
定制板达14585 -偏差行为

你好,

我们正在一个定制的DA 14585板。从flash董事会的靴子,因为我们不使用默认的SPI别针,我们编程OTP二级引导装载程序。睡眠模式扩展(没有OTP复制)。我们面临的问题是:
1。扩展的代码启用了睡眠,闪进了hw时,显示不一致的行为。它宣扬了一段时间,然后进入未响应状态。
2。相同的代码,与睡眠禁用,闪进了hw,效果很好
3所示。延长睡眠的代码启用运行时通过RAM(使用我们的调试器),效果很好。

我们包括32 khz和16兆赫晶体在我们的设计。

同样的原因可能是什么?请建议。

谢谢

设备:
MT_dialog
离线
最后看到:2个月2周前
工作人员
加入:2015-06-08 34
嗨wisilica,

嗨wisilica,

我无法找出任何明显的行为,我可以提到一些事情你为了测试。

如果你烧一个SDK的flash和引导项目你看到相同的行为吗?你能估计设备广告多久?我认为设备广告而保持清醒和摊位去睡觉的时候,所以尝试切换到RCX XTAL32的弗兰克-威廉姆斯。你能试着引导fw从flash使用默认别针(也许开发工具包),并检查是否使不同吗?

还我已经错过的东西提在这篇文章中关于引导从特定的SPI别针https://support.dialog-semiconductor.com/forums/post/dialog-smartbond-bl..。585除了燃烧的OTP二级引导装载程序从特定的引导针585包括一种机制以从特定的别针和引导这可以引导的具体映射字段中定义的OTP头,你将能够找到信息在附录G和585年的数据表4.3.1 OTP头段,尽管我不认为你正在观察的行为的原因是,你烧OTP的二级引导装载程序。

由于MT_dialog

wisilica
离线
最后看到:10个月2周前
加入:2015-03-17 08:16
你好,

你好,

谢谢你的及时回复。我试过你提到过,结果如下:
1。而不是我们的应用程序弗兰克-威廉姆斯,我编程准系统项目,默认选择睡眠模式扩展,flash。行为是相同的,即设备广告约3 - 4包,然后进入未响应状态。
2。也试过设置CFG_LP_CLK LP_CLK_RCX20,但是问题依然存在。
3所示。使用橄榄球员尝试固件直接加载到内存,然后正常设备广告。
4所示。尝试相同的固件开发板(即默认配置SPI针),以及设备运行良好。

我还配置了OTP头为了从SPI引导针如下:

SPI CLK = P0_0 SPI_EN = P0_1 SPI_DI = P0_2 SPI_DO = P0_3
引导=正常序列,唤醒命令代码= 00,串行速度选择0

配置有什么不对吗?
在二级引导装载程序固件,唯一的变化是定义SPI_FLASH_SUPPORTED SUPPORT_AN_B_001,并配置SPI针按我们的示意图。

请建议fr上述问题的原因。

谢谢

MT_dialog
离线
最后看到:2个月2周前
工作人员
加入:2015-06-08 34
嗨wisilica,

嗨wisilica,

因为你已经表明,引导序列应该从具体的SPI针然后引导标志不应该0 x00(正常序列),但0 xaa(从SPI端口在特定位置)。如果你也已经燃烧的二次引导装载程序OTP设备仍将引导使用二级引导装载程序而不是串行启动序列。但是我不认为你是使用二级引导装载程序会导致反应迟钝的行为,毕竟设备启动和弗兰克-威廉姆斯,所以只要你有扩展的睡眠和不应该保留弗兰克-威廉姆斯(OTP_COPY_ON)设备。你也可以尝试通过调试器来调试这是附加为了还注意完全弗兰克-威廉姆斯的摊位和监控电力事故前后为了注意如果设备是睡觉和醒来或如果它已经陷入一个断言。

由于MT_dialog

wisilica
离线
最后看到:10个月2周前
加入:2015-03-17 08:16
你好,

你好,
通过调试器运行弗兰克-威廉姆斯(RAM),设备不停止。我也检查通过橄榄球员与弗兰克-威廉姆斯直接加载到内存,它工作得很好。这个问题发生只有当它从flash的靴子。

谢谢

MT_dialog
离线
最后看到:2个月2周前
工作人员
加入:2015-06-08 34
嗨wisilica,

嗨wisilica,

我上面已经提出附加debbuger而设备已经从flash和引导问题已经发生,为了尝试和检查设备的摊位和检查是否这将帮助调试这个问题(只是引导等待事情的发生,然后附加调试器,为了附加调试器通过凯尔在“调试”选项卡中删除的初始化文件然后点击设置按钮,取消“重置后连接”)。自设备似乎困seconday引导装载程序运行时,也许你正在经历的是与这一事实有关,也许这是一个问题的二次引导装载程序和运行后OTP它不重置注册或类似,当设备睡觉摊位(虽然我已经测试运行二级引导装载程序从RAM和配置的SPI针上面的例子和拥有flash bunred ble_app_peripheral设备可以直接从SPI flash启动指定的别针和运行,所以我不能够连接二级引导装载程序与设备摊位)。你也应该试着烧OTP头引导特定映射标记设置为针,你想和检查设备是否工作。

由于MT_dialog

wisilica
离线
最后看到:10个月2周前
加入:2015-03-17 08:16
你好,

你好,
我们如何将调试器附加到董事会虽然跑步?re-powering董事会后,从flash设备开始启动,然后几秒后停止。我们什么时候需要启动调试会话?我想调试会话,转储固件到RAM中。那么,我们如何知道代码停止的地步吗?

同时,应用程序标记1和2被配置为是的,OTP DMA长度为1 fc0和门限使国旗的JTAG启用OTP头。快照的附加此(OTP头聪明的片段)。请查看是否有配置是失踪。

同时,这个问题不会持续发生。在某些运行相同的固件,问题不是观察,设备工作正常。请建议的原因相同。

谢谢

MT_dialog
离线
最后看到:2个月2周前
工作人员
加入:2015-06-08 34
嗨wisilica,

嗨wisilica,

使用相同的项目,你有使用为了构建.hex文件烧到flash,引导你通常做的从flash设备,然后遵循上面的指令我提供为了防止凯尔下载一个图像的设备,防止重置JTAG (为了将调试器通过凯尔在“调试”选项卡中删除的初始化文件然后点击设置按钮,取消连接后“重置”)。之后,只要按“启动/停止调试会话”,你将能够连接到自定义董事会(你不应该重置设备附加JTAG之前或让凯尔为你这么做,这就是为什么你应该首先准备以上设置,然后启动程序,例如,你按下“设置”jlink将重置设备如果检查连接后“重置”)。点击“停止”按钮以停止执行(或弗兰克-威廉姆斯可能已经停止),检查装配模式如果设备在你能看到的地方,通过映射文件你将能够看到设备已经停止的功能。

关于OTP的设置,由于设备是能够引导正确的SPI镜像过程就可以了,不需要程序使用OTP DMA,只有当设备关闭sysram,所以OTP必须知道多少数据复制在醒来(你的价值也将是580年一个较小的OTP,但在任何情况下不应该有任何影响你正在经历)。不管怎样,也烧毁了585设备二次引导装载程序和引导表明SPI别针,再一次设备操作应该没有问题。

如果这个问题不会发生,这是否意味着这个问题可能出现即使弗兰克-威廉姆斯是通过JTAG downloded吗?也许没有问题之间的联系,通过flash下载吗?

由于MT_dialog

wisilica
离线
最后看到:10个月2周前
加入:2015-03-17 08:16
你好,

你好,

我们没有观察到这个问题,弗兰克-威廉姆斯直接加载到RAM直到现在。建立代码,各种大小的内存部分如下:

项目规模:代码= 20808 RO-data = 2892 RW-data = 600 ZI-data = 8400

这有什么问题吗?

现在,单击启动调试会话选项卡上,然后在阻止它,我无法查看汇编窗口。有设置失踪吗?

谢谢

MT_dialog
离线
最后看到:2个月2周前
工作人员
加入:2015-06-08 34
嗨wisilica,

嗨wisilica,

你是已经发布的只是从凯尔,生成的二进制文件的大小不需要做任何事情在你正在经历的。您已发布的值的大小是代码(20808)RO数据(2892)是恒定的数据的大小,RW(600)你的变量和子数据(8400)的大小为零初始化变量。请检查一下我上面提到的,也给它一个尝试与一个简单的祝福SDK示例,检查是否出现同样的问题。关于拆卸窗口中,你必须使它为了看到拆卸窗口,可以在“视图”,然后单击“Disassenbly窗口”。

由于MT_dialog

wisilica
离线
最后看到:10个月2周前
加入:2015-03-17 08:16
你好,

你好,

像你说的,我试着ble_app_barebone项目。唯一的变化我是ARCH_EXT_SLEEP_ON设置默认睡眠模式。即使在这种情况下观察这个问题。
现在,重新提供动力董事会从flash启动后,点击启动调试会话选项卡后,拆卸窗口显示,以下行高亮显示(附快照)。
这是什么意思?

谢谢

附件:
wisilica
离线
最后看到:10个月2周前
加入:2015-03-17 08:16
你好,

你好,

同时,我有附加准系统项目十六进制文件,使用中途停留。唯一的变化是设置睡眠模式的扩展。
请尝试使用固件我已经共享,董事会可以从前面描述的针我引导。

CLK - P0_0, CS - P0_1 DI - P0_2——P0_3

谢谢

MT_dialog
离线
最后看到:2个月2周前
工作人员
加入:2015-06-08 34
你从我们的形象

从我们的图像,你附加看来设备已经停止不(拆卸的指令窗口表明设备加载一个地址的内存),我想,如果你点击“运行”按钮,你可以运行代码。

部分的代码,你看到在拆卸窗口是指令执行后恢复从睡梦中为了获取arch_resume_from_sleep()函数,这意味着该设备不停止,但代码继续执行时,设备将停止在这里附加调试器。所以在我看来设备仍然运作尽管你无法看到设备。

所以据我可以告诉设备操作,唯一的线索,我们是当通过二级引导加载,然后闪几广告后字符串emmited你不能看到任何广告了。下一步是检查设备的功耗,可以自定义董事会权力的职业装备和使用的分析器来检查设备的功耗,这将让我们知道设备实际上是emmiting广告字符串和出于某种原因设备另一边不能够接受(例如你XTAL16也许是关闭的,你不要在同一频率传输),或者由于某种原因失去幸运的事件,只是醒来没有执行广告(因为某些原因它起床太晚,堆栈取消祝福活动),你执行任何温度测试,并得到这个问题?你也可能想检查电源的任何下降。

测试的弗兰克-威廉姆斯上传并运行它从一个设备烧毁二级引导装载程序的OTP引导针表示,弗兰克-威廉姆斯正确引导广告没有问题,我可以正常连接,我假设你正在经历什么是由于h / w的问题,而不是由于引导装载程序或flash的西南。

最后值得一试这在一个不同的董事会和使用“启动特定的映射”字段,而不是二级引导装载程序。

由于MT_dialog