SPI启动和引脚Remaping / DA14580&DA14585兼容性

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.xmece.com/support.我们将在未来几天修复bug /优化搜索和标记。
18个帖子/ 0新
最后发表
BenjaminDu
离线
最后看到:2个月2周前
加入:2016-03-14 02:38
SPI启动和引脚Remaping / DA14580&DA14585兼容性

尊敬的Dialog支持团队:
我正在使用spi使用da14580,我的.hex大约40kb,所以我必须使用外部闪光灯。
但是在这种情况下,程序不能工作,如果我测试一个程序不使用SPI,它可以工作。
我有以下几个问题:
1)我是否可以使用SPI外部闪光,并在启动后使用SPI?
2)如果启动后可以使用SPI,引脚如何重新映射?
3)如果我使用DA14585,它有足够的OTP空间,我可以重新映射引脚随机/或任何规则重新映射引脚吗?
4)现在我正在使用DA14580,DA14585在软件和硬件方面与DA14580兼容吗?

非常感谢你的帮助。
本杰明

设备:
PM_Dialog
离线
最后看到:9小时前1天
工作人员
加入:2018-02-08 11:03
嗨Benjamindu,

嗨Benjamindu,

DA14580标准销的靴子。请从AN-B-001文档检查“表1:引脚分配和引导序列”。您可以从我们的支持门户下载此文档。为方便起见,您也可以遵循下面的链接。

https://support.dialog-semiconductor.com/resource/b-001-da14580581583-booting-serial-interfaces

在启动过程之后,您可以使用外部闪存以供应用程序代码。您能否澄清你的意思是什么意思,“remap”?您是否想从独立式引脚从不同的引脚启动,或者您的意思是在启动过程后要更改SPI闪存引脚?

谢谢,PM_Dialog

BenjaminDu
离线
最后看到:2个月2周前
加入:2016-03-14 02:38
我是说在启动之后,我的

我的意思是,在启动后,我的应用程序想使用spi用于其他目的(而不是r/w flash),例如,显示lcd使用spi。如果我用jlink,它工作,但如果我用flash,它不工作。

你还可以帮助我有关DA14585的上述问题吗?

谢谢

PM_Dialog
离线
最后看到:9小时前1天
工作人员
加入:2018-02-08 11:03
嗨Benjamindu,

嗨Benjamindu,

抱歉,但我没有完全理解你的意思,如果你使用JLink它是工作的,但如果你使用flash它是不工作的。我需要一些澄清这一点,请试着理解你试图完成什么。如果我理解正确,您想用您的固件烧录SPI flash,从那里启动,然后在启动后,您想重新映射连接到flash的相同的SPI gpio为其他用途?如果我没有正确理解,请让我知道并纠正我。

根据数据表,DA14580有32KB的OTP, DA14585有64KB的OTP。请参考相应的数据表获取任何附加信息。我不能理解你的确切意思是“我可以重新映射大头针随机/或任何规则重新映射大头针”。DA14580和DA14585有不同的硬件,它们各自运行不同的SDK。DA14580/1/2/3版本的SDK最新版本为5.0.4,DA14585/6版本的SDK最新版本为6.0.10。

谢谢,PM_Dialog

BenjaminDu
离线
最后看到:2个月2周前
加入:2016-03-14 02:38
尊敬的Dialog支持团队:

尊敬的Dialog支持团队:

谢谢您的快速回复,是的,在一定程度上您对我的问题的理解是正确的,我会更清楚地表达我的问题。

是的,我想用我的固件烧录SPI flash,从那里启动。
启动后,我需要使用SPI(其他GPIO,用于CS)来控制其他组件(例如LCD)。

当我使用jlink时(直接从keil运行,固件未刻录到闪存上),由spi控制的液晶显示器很好。
但是如果我将固件刻录到闪存并从那里启动,则SPI控制的液晶显示器不起作用。(我还在没有使用SPI的情况下测试了其他程序,刻录到Flash,从Flash启动程序工作)

希望我能把我的问题说清楚,也希望你能给我理由。

非常感谢。
本杰明

PM_Dialog
离线
最后看到:9小时前1天
工作人员
加入:2018-02-08 11:03
嗨Benjamindu,

嗨Benjamindu,

你能探测SPI Flash启动时的SPI信号和LCD不工作,然后告诉我结果吗?您提到过,在引导之后,您希望使用不同的gpio来控制其他组件。你配置了吗?

谢谢,PM_Dialog

BenjaminDu
离线
最后看到:2个月2周前
加入:2016-03-14 02:38
亲爱的对话框,

亲爱的对话框,

很抱歉我探测不到信号。

附加是GPIO的配置,通过配置,它在调试时运行良好,如果刻录到闪存中,它会停止工作。
你能帮助看看我的配置吗?

我有一个分析,
由于我的固件超过42KB,在引导后,系统仍然需要与flash通信,这可能会导致flash SPI和我的SPI冲突。

非常感谢

本杰明

附件:
PM_Dialog
离线
最后看到:9小时前1天
工作人员
加入:2018-02-08 11:03
嗨Benjamindu,

嗨Benjamindu,

如果您能够探测SPI信号,这将是伟大的,非常有帮助,因为我们可以提取有关您问题的更多信息。顺便说一下,没有问题,你无法探测你的信号。您的配置似乎是正确的。如果我能够从您所提到的正确理解,如果您的固件低于42KB,您的应用程序正常工作?

谢谢,PM_Dialog

BenjaminDu
离线
最后看到:2个月2周前
加入:2016-03-14 02:38
亲爱的对话框,

亲爱的对话框,

我会设法探测信号并稍后再回来。

我有一个小于42KB的固件,它在flash中工作得很好,但固件没有SPI。
我想知道它如何工作,如果系统SRAM只有42KB,而固件是更多的?

非常感谢您的快速回复。

本杰明

PM_Dialog
离线
最后看到:9小时前1天
工作人员
加入:2018-02-08 11:03
嗨Benjamindu,

嗨Benjamindu,

你能澄清你的意思,你的固件没有spi吗?所以,如果将固件下载到外部SPI闪存并从那里启动,这项工作是否正确?此外,您是否可以确保您的固件超过42KB?如果是,则将其存放到Sysram时,它是非常奇怪的。

谢谢,PM_Dialog

BenjaminDu
离线
最后看到:2个月2周前
加入:2016-03-14 02:38
亲爱的对话框,

亲爱的对话框,
没有SPI测量应用程序不使用SPI,但它有SPI连接到Flash,让我们忘记它,因为我有新的创始,请参阅以下内容。
我用SPI测试了另一个样本(我的SPI连接到Flash并连接到其他组件),该样本的固件是37KB,并且它在从闪存启动时工作。

因此,如果固件超过42KB,DA14580无法正常工作?
如果固件超过42KB,我该怎么办?使用DA14580有什么方法吗?或者我必须选择DA14585这样的芯片?

非常感谢

本杰明

PM_Dialog
离线
最后看到:9小时前1天
工作人员
加入:2018-02-08 11:03
嗨Benjamindu,

嗨Benjamindu,

由于您使用的是DA14580,如果固件大小超过42KB,您希望能够将其存储到SystemRAM中。请检查DA14580 datasheet,你会发现系统RAM是42KB。因为您有一个外部SPI Flash,您可以在那里存储您的固件并从SPI Flash启动。为了烧SPI Flash,你应该使用智能片段工具箱,你可以从我们的支持门户下载它。如果你想只下载固件到SystemRAM,你可以移动inti DA14585。根据DA14585数据表,有96kb的Data/Retention SystemRAM。如果您没有在Smart Snippets工具箱中下载它,您可以在DA14580支持页面的“Software & Tools”选项卡中找到它。也。我强烈推荐你看一看UM-B-083 SmartSnippets Toolbox用户手册为了检查如何使用工具箱刻录SPI Flash。

谢谢,PM_Dialog

BenjaminDu
离线
最后看到:2个月2周前
加入:2016-03-14 02:38
亲爱的对话框,

亲爱的对话框,

在上一个我说我可以从Flash启动,我已经知道如何将固件刻录到闪存中。

我有另一个问题,如果将固件刻录到闪存,程序是否可以直接运行,而不会在Systemram中加载?(对不起我对芯片很少了解,我认为启动正在将固件加载到SystemRam中并在那里运行)。
我提出的原因是,如果我刻录固件超过42KB,则使用SPI的程序不起作用,如果我刻录小于42KB的固件,那么具有SPI的程序。

谢谢

本杰明

PM_Dialog
离线
最后看到:9小时前1天
工作人员
加入:2018-02-08 11:03
嗨Benjamindu,

嗨Benjamindu,

我强烈建议您查看AN-B-001文档,以了解DA14580的靴子。我已经为您提供了链接才能下载。请选中图2:DA14581引导顺序,并且您将看到从外部设备启动序列后,将代码下载到SYSRAM。您的程序无法正常工作的原因是为什么您无法将固件下载到Sysram,超过42kb。

谢谢,PM_Dialog

BenjaminDu
离线
最后看到:2个月2周前
加入:2016-03-14 02:38
亲爱的对话框,

亲爱的对话框,

我读过AN-B-001,我找不到直接信息关于在DA14580上可以运行的大固件。
我对以前的答案中的2次混淆了。
1)由于您使用的是DA14580,如果固件大小超过42KB,则希望能够存储到SystemRam中。请检查DA14580 datasheet,你会发现系统RAM是42KB。因为您有一个外部SPI Flash,您可以在那里存储您的固件并从SPI Flash启动。
2)您的程序无法正常工作的原因是为什么您无法将固件下载到Sysram的原因,这是超过42kb的原因。

为了避免混淆,你能不能回答我是或否的以下问题?
如果固件更大42KB,有没有办法在DA14580上运行程序?

PM_Dialog
离线
最后看到:9小时前1天
工作人员
加入:2018-02-08 11:03
嗨Benjamindu,

嗨Benjamindu,

对不起,我会尽力更具体。您无法编写超过42K Sysram的软件。此外,您不允许使用Sysram的所有42K,因为堆栈的部分是由堆栈的部件使用的,交换存储器等您不能将您的固件存储在SPI闪光灯中超过42K。请选中AN-B-001的图1:DA14580引导顺序。根据该图,您将看到从SPI闪存启动后,将代码下载到Sysram中,因此如果您的代码超过42K,则不会拟合进入RAM。总结,由于您使用的是DA14580,因此不允许您运行超过42K的固件。如果您希望具有更大的固件,则应进入DA14585产品。

谢谢,PM_Dialog

BenjaminDu
离线
最后看到:2个月2周前
加入:2016-03-14 02:38
亲爱的对话框,

亲爱的对话框,

谢谢,现在一切都清楚了。

本杰明

PM_Dialog
离线
最后看到:9小时前1天
工作人员
加入:2018-02-08 11:03
嗨Benjamindu,

嗨Benjamindu,

很高兴这些东西被清除了。如果您发现上述任何答案有用,请将其标记为已接受。

谢谢,PM_Dialog