DA14580基本套件SDK

15个帖子/ 0新
最后一篇
kqtrinh.
离线
最后一次露面:3年10个月前
加入:2016-08-24 00:17
DA14580基本套件SDK

关于580 DSP外设模式FW码的问题我想用作我们自定义嵌入式软件开发的起点。

截至目前,我想了解Keil IDE或Smartsnippet的机制,它通过USB连接到580上的USB连接从主机PC下载到MCU,以接收比特流并写入闪存或加载它进入公羊。上电时,我相信580将从闪存加载到RAM中的FW并开始执行。但是,当580没有FW目前驻留在Flash中时,我会认为应该存在一段代码,该代码在RAM中运行,将处理从SmartSnippet或Keil到Flash或RAM中的输入FW。这段代码可能被称为ROM代码,就像PC中的BIOS FW一样。您能将我指向处理闪存或RAM上载界面的代码的一部分吗?如果我完全偏离基地,请教导我,以便我了解这个过程如何帮助我在我们的自定义发展中。

如果有一个文档详细解释了这个过程,那将更好。

谢谢,
- khai

设备:
mt_dialog.
离线
最后一次露面:3个月4天前
职员
加入:2015-06-08 11:34
嗨kqtrinh,

嗨kqtrinh,

您可以查看AN-B-001.PDF或UM-B-012.PDF,那些文档提到了引导序列如何工作,在其中下载代码并运行。580中存在的代码并加载外部FW称为主引导加载程序(或仅为Bootloader)及其位于ROM内存区域中的代码。源代码不可用,但它的功能标志在AN-B-001文档中描述了它的函数,它是通过UART / SPI / I2C下载代码的580选项的AMmount。

谢谢mt_dialog.

kqtrinh.
离线
最后一次露面:3年10个月前
加入:2016-08-24 00:17
谢谢你的及时

谢谢你的及时回应。这2个文档帮助我了解有关580启动过程如何工作的更多信息。

它可以确定ROM代码不可用,辅助引导程序将如UM-B-012.PDF Doc可用或其他靠近其功能的其他示例代码从Flash引导。
也许我会尝试描述我的开发方案,您可以推荐如何完成。使用基本套件,我可以通过将代码加载到与keil的SRAM的代码直接调试FW,我也可以用SmartSnippets写入Flash。还有智能公司的写作,我目前没有需要使用的smartsnippet。

我们的定制板很简单。它由带有电话应用程序的BLE接口的前端接口中的580组成。580将从手机接收消息,并通过580内部UART总线将其发送到显示设备。

要调试580个应用程序代码,我们将建立一个外部调试器板(在市场上存在这样的电路板),与Atmel芯片(由于尺寸约束而导致580的同一板上存在)。基本上将580个基本套件分成2个板。

所以看待这个HW设计,将有580个应用程序代码的闪存区域。连接到580 UART接口的显示芯片也具有它需要从并执行的FW代码。我们想要580个应用程序代码和显示FW码在相同的闪存中(我认为我们不需要OTP内存,除非有原因。)

我的开发序列的问题下面是:

1.通过上面的HW设计,我需要一种读/写闪光灯的机制,将580应用程序代码从Flash加载到SRAM。这是辅助引导程序的作业吗?但是使用辅助引导加载程序需要OTP板载。是辅助引导加载程序的源代码或类似的东西?

2.假设580现在已启动并从闪存运行启动,需要充当外部主机控制器到显示设备。它需要读取显示设备FW的闪光灯,并将其发送到UART到显示设备,因此它现在可以启动。

这是我目前我们的DEV板的启动顺序的方法。从您所看到的,我们需要代码读/写闪光并将其转储到SRAM,并通过580 CPU转移到UART总线。

您的反馈和推荐很受欢迎......

谢谢,
- khai

mt_dialog.
离线
最后一次露面:3个月4天前
职员
加入:2015-06-08 11:34
嗨kqtrinh,

嗨kqtrinh,

是的,辅助引导程序可以在SDK中的实用程序文件夹中找到,与主引导加载程序非常相似。关于调试器模块,您可以使用Segger Jlink Lite ARM调试器,同样的调试器,专家套件使用。关于你的问题:

1)为了将FW从Flash加载到580 Sysram,您不需要辅助引导程序,只要您遵循SPI引导的默认引脚连接,主要将能够为您执行此操作。二级引导加载程序用于分配不同的引导引脚,打开闪光灯,以便将其关闭为低功耗,加载不同的图像(拟议功能等)。如上所述,SDK中的Utilities目录中可用辅助引导加载程序源代码。

2)如果显示芯片需要FW,我想580需要发送该FW,如果芯片无法直接从闪光灯下载,所以是您需要一个例程,580将读取闪存并发送它到uart上的显示。580将验证正常启动序列,之后它将充当显示器和闪光之间的中间人。

谢谢mt_dialog.

kqtrinh.
离线
最后一次露面:3年10个月前
加入:2016-08-24 00:17
是否有示例代码

是否有用于读/写入闪存的示例代码?
谢谢,
- khai

mt_dialog.
离线
最后一次露面:3个月4天前
职员
加入:2015-06-08 11:34
嗨kqtrinh,

嗨kqtrinh,

有一个用于在Flash中写入的驱动程序,还有一个与Flash交互的示例,该示例位于SPI目录中的Peripheral_examples项目的SDK中。同样如前所述,实用程序目录中存在efferic_bootloader源代码。请检查以下SDK目录。

da1458x_sdk \ 5.0.4 \ utilities \ secondary_bootloader:辅助引导程序

da1458x_sdk \ 5.0.4 \ projects \ target_apps \ peripheral_examples \ spi:spi flash示例

谢谢mt_dialog.

kqtrinh.
离线
最后一次露面:3年10个月前
加入:2016-08-24 00:17
关于你的答案

关于您对上面的问题1的答案,如果我正确理解,我不需要次级引导加载程序来执行我所需要的。主引导加载程序可以完成作业。然后我的问题是:

1.主引导程序是否驻留在ROM中?如果是这样,我们必须在生产时手动将主引导加载程序加载到每个芯片的ROM上?或者在我们收到DA14580S进行生产时已经为我们完成了此过程?

2.假设DA应用程序FW驻留在SPI Flash中,其中在外部SPI闪存地址中的主要装载机读取FW从下载到Sysram?它是默认的地址0吗?这个起动地址可编程吗?

谢谢,
- khai

kqtrinh.
离线
最后一次露面:3年10个月前
加入:2016-08-24 00:17
跟进问题:

跟进问题:

1.外部PC应用程序如SmartSnippets的直接访问(读/写/擦除FW)到580外部闪光灯。我可以将Smartsnippet用于FW应用程序的闪存数据文件吗?它是否必须绑定到某种格式,以将此数据文件上传到Flash?

2.一旦FW在外部闪光灯上,ROM主引导加载程序必须知道2件信息:加载到SRAM的FW地址和大小。SmartSnippets是否使这些信息设置在Flash中的某个地方,因此ROM具有知识,因此它可以将FW加载到SRAM?

3.使用Flash中的数据文件,FW应用程序代码也需要知道数据存储在Flash中的地址和大小,以便它可以读取和消耗数据。

谢谢,
- khai

mt_dialog.
离线
最后一次露面:3个月4天前
职员
加入:2015-06-08 11:34
嗨kqtrinh,

嗨kqtrinh,

1)主引导加载程序在ROM中刻录,加载器的功能实体在AN-B-001.PDF文档中描述,通常它为您提供了一些标准引脚,以便通过UART / SPI / I2C引导。启动加载程序会在启动设备时立即执行,因此您不必刻录引导加载程序,因为我已经提到它已有位于ROM中即可。

2)引导加载程序当过程是闪存相关的,并且580执行作为主设备它将访问闪存的地址0,在主引导程序中,这不是可编程的。所有这些信息都记录在.pdf我提到的。

关于后续问题:

1)当指示智能片段连接到580时,为了对闪存进行编程,它会下载一个名为Flash_Programmer或JTAG_Programmer的小FW,该FW处理来自Smart代码段(擦除/刻录等)的所有命令。是的,您可以使用智能片段闪烁您的FW应用程序。关于格式问题,我不太明白,SS将采取.hex将它转换为.bin或者您可以直接放置.bin文件,该工具将刻录闪光灯。

2)请阅读指示手册,以查看引导加载程序所按照的过程。

3)正如我所提到的,SPI模式中的580将从闪存中从地址0请求数据,并且闪光灯应开始发送图像。该图像必须是可引导的,这意味着它应该具有可启动标题和代码的长度 - 如果选择可启动选项,则由Smart Scippets测量和分配。因此,智能代码段另外做的是安装0x70 0x50标题,以指示图像可引导应用一些零填充并附加.bin文件的大小。

谢谢mt_dialog.

kqtrinh.
离线
最后一次露面:3年10个月前
加入:2016-08-24 00:17
让我澄清我的问题

让我澄清我的问题一点。

因此,DA在Address 0启动闪存中的闪存中加载FW,因此可以从Flash读取电源时的主装载机并将其写入Sysram。在Sysram中完全启动和运行时,自定义FW需要来自Flash的一些数据来执行其任务。这是我们打算写入的自定义FW中某些算法的输入数据。这是我之前关于数据文件的问题。我可以使用ss将数据文件上传到闪存,因为我的自定义fw被启动后消耗?此数据文件不是可引导图像。它只是FW算法中需要的一些数据。对于能够将此数据文件刻录到闪存,是否需要遵循一些格式,因此SS将识别它并能够将其刻录到闪存?

谢谢,
- khai

mt_dialog.
离线
最后一次露面:3个月4天前
职员
加入:2015-06-08 11:34
嗨kqtrinh,

嗨kqtrinh,

是智能代码段能够将自定义数据刻录到闪光灯中,可以使用完全标题编程器甚至闪光灯刻录机,没有任何特定的格式,以便使用智能片段将数据刻录到闪光灯中。您可以通过将随机二进制文件刻录到DEV套件闪存的某些地址来测试此问题。

谢谢mt_dialog.

kqtrinh.
离线
最后一次露面:3年10个月前
加入:2016-08-24 00:17
我想学习如何

我想了解SmartSnippets如何使用Flash_Programmer或JTAG_Programmer到/ Write /擦除闪存。你有它们的源代码吗?

谢谢,
- khai

kqtrinh.
离线
最后一次露面:3年10个月前
加入:2016-08-24 00:17
没关系。找到了。

没关系。找到了。

kqtrinh.
离线
最后一次露面:3年10个月前
加入:2016-08-24 00:17
有应用笔记吗?

有关Flash_Programmer实用程序的谈话吗?

mt_dialog.
离线
最后一次露面:3个月4天前
职员
加入:2015-06-08 11:34
嗨kqtrinh,

嗨kqtrinh,

不,没有应用程序注意,记录JTAG_Programmer的函数。此FW是由智能代码段工具使用而不是代码参考。

另外请不要在无关主题上发布一个新问题,您可以始终创建一个新帖子。

谢谢mt_dialog.