从集成闪存的外部CPU启动

16个帖子/ 0新
最后发表
bensalemsaif
离线
最后看到:3年9个月前
加入:2016-02-02 42
从集成闪存的外部CPU启动

你好mt_dialog,

我使用DA14580开发Kit-Basic和AN-B-023,我成功地将我的项目加载到Flash内存(W25X20CL),并从它使用SPI引导。

现在,我想使用SPI将它连接到STMicroelectronics STM32F103R8,是否有可能将我的项目加载到它的内部闪存中,并从它启动,就像我使用DA14580那样?或者我应该在ST微控制器中实现一个启动协议,通过SPI发送数据到我的BLE模块(从)?

非常感谢和问候,

- 萨法夫

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

嗨bensalemsaif,

我不完全究竟是什么想做的。当580靴子主引导程序期望特定端口上的特定字节序列(其他接口中的SPI Master / SPI从站)。请检查AN-B-001 - 从串行接口引导有关引导序列的更多信息。

由于MT_dialog

bensalemsaif
离线
最后看到:3年9个月前
加入:2016-02-02 42
嗨MT_dialolog,

嗨MT_dialolog,

感谢您的答案,事实上,我已经检查了AN-B-001,我的问题是:
我将把PAN1740模块集成到STMicroelectronics STM32F103R8中,我希望它使用SPI从ST微控制器的闪存引导,因此,我应该把我的数据发送到an - b -001中描述的580吗?

因为之前所做的,就是使用SmartSnippet,我将我的十六进制文件加载到SPI闪存中,580可以启动,它不能与ST微控制器中的集成闪存相同?如果不实现数据应该如何通过SPI发送...

谢谢你!
赛义夫

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

嗨bensalemsaif,

AN-B-001描述了所有580个接口中的启动过程,开机,580的引导加载程序将运行,您应该在您选择的接口上提供适当的数据(案例主/从配置中的SPI)以便开始引导seqence。SDK中有一个例子在2 580的一个作为主站和另一个用#define spi_booter的SPI接口中的奴隶,您可以选择您的主设备下载.bin到您的从站。该示例位于host_apps / da1458x / proximity / Reporter下。

由于MT_dialog

bensalemsaif
离线
最后看到:3年9个月前
加入:2016-02-02 42
嗨mt_dialog,

嗨mt_dialog,

谢谢你的支持,记者的例子太有帮助了!
所以现在要从.hex文件中提取图像数据,我删除了地址,然后crc和我只保留了数据,我替换了0x00的空白,然后我把数据放入缓冲区,是正确的?它是正确的吗?

谢谢你!
赛义夫

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

嗨bensalemsaif,

要下载的文件是.bin文件不是.hex文件,可以从SDK中的实用程序文件夹中从Hex2bin工具转换.hex到.bin从SDK中的Utilities文件夹,使用编辑器,复制和粘贴数据.bin在您的.c文件中,下载。

由于MT_dialog

bensalemsaif
离线
最后看到:3年9个月前
加入:2016-02-02 42
嗨mt_dialog,

嗨mt_dialog,

谢谢你,我实现了你说的,现在要确保我的引脚配置是OK的,我像AN-B-001描述:P-0-0 <-> SCK, P0_3 <-> CS, P0_5 <-> MOSI和P0_6 <-> MISO,和其他引脚,我应该放跳线吗?(TCK, TMS,蝙蝠)
第二点是关于时间的,我应该在580中的引导算法搜索SPI上的数据时完全发送数据,因此在循环和JTAG之前的5次之前需要多长时间?这是什么最好的方法?

谢谢你!

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

嗨bensalemsaif,

TCK,TMS是调试器引脚如果您想通过Keil下载您的.bin,你必须使用那些引脚,如果不是,你也可以在蝙蝠引脚是开发套件上的SPI内存的引脚。请检查您拥有的开发套件的原理图。此外,您应该在启动加载程序运行时发送数据,以便下载要成功,它应该开始默认,在AN-B-001文档中描述了引导过程的步骤的确切超时。

由于MT_dialog

bensalemsaif
离线
最后看到:3年9个月前
加入:2016-02-02 42
你好mt_dialog,

你好mt_dialog,

我仍然不能从我的SPI Master微控制器启动,所以请您帮我验证一下:

我开始使用MicroController的RESET引脚启动了580,如“AN-B-01”中所述等待103ms,然后在记者示例中策略发送报头(使能CS和发送数据)。但是我从来没有收到ACK或NACK,有时候我在STRINCE发送标题时拍摄了MISO的数据,请附上Saleae的标题发送分析的屏幕截图。

我错过了什么吗?

谢谢你!

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

嗨bensalemsaif,

使用spi奴隶580是有点棘手,请确保提供的spi时钟主至少四次小的内部spi时钟配置的奴隶,也请尝试把一些延迟主当spi总线上发送数据。也请检查你的连接,他们应该尽可能短,屏蔽和适当的端接。

由于MT_dialog

bensalemsaif
离线
最后看到:3年9个月前
加入:2016-02-02 42
你好mt_dialog,

你好mt_dialog,

谢谢你的回复,我会检查我的连接,时钟580的内部频率是16MHz,对吗?直到现在我发送数据与主时钟频率= 250KHz,所以它应该是OK的?

将一些延迟发送数据的时候,我试过,但似乎没有逻辑意义上需要这么多时间发送图像,它可能是好的为头而不是图片,所以请确认时钟频率和我将检查连接。

谢谢你!
- saif.

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

嗨bensalemsaif,

内部SPI时钟频率可以达到16MHz(最大/最小分频器为1)。当SPI Master中的580靴子时,请检查AN-B-001是否有适当的SPI时钟设置。由于您的主人在频率上发送数据到达250khz,因此您应该可以正常,因为500只有在没有发出发送字节之间的任何延迟的限制。580中的SPI采样器是非常敏感的,电线电缆可能导致批次问题,因为它可能错误地接收小尖峰或脉冲的反射。

由于MT_dialog

bensalemsaif
离线
最后看到:3年9个月前
加入:2016-02-02 42
你好mt_dialog,

你好mt_dialog,

因为SPI不工作,我想从UART启动,就像以前,我重置580然后stratocaster电吉他发送数据,当我收到0 x02 strat字节,当发送SOH, LEN_LSB LEN_MSB我0 x06 ACK,所以一切都很好,然后我发送图像,但从那以后,我没有得到任何CRC。
同样的图像被成功下载到SPI Flash内存(Smartsnippets), 580可以从它引导。
这里附上了Saleae分析,我的十六进制和bin文件(大小是19236 =4B24)和我如何发送数据:

1 - 与记者示例:数据对齐(64),大小除以4,我正在使用相同的发送功能实现
2 - 数据未对齐,只是一个具有长度=数据大小的普通缓冲区,并按字节向其发送内容字节
但结果总是一样的,有什么东西不见了吗?

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

嗨bensalemsaif,

我无法打开从UART启动。Logicdata文件(似乎该文件是空的)。只需使用hex2bin程序生成的二进制文件,并通过UART下载它。如果你不等待一个CRC和发送一个0x06 580做什么?您还可以尝试运行辅助引导加载程序来调试它,您可以在keil上运行bootloader,并模拟主引导加载程序并调试它。另外,您能够使用智能代码片段在UART上下载文件吗?此外,如果可以的话,你可以尝试从不同的TX/RX对启动。我上传了一个捕获从如何UART下载图像。

由于MT_dialog

bensalemsaif
离线
最后看到:3年9个月前
加入:2016-02-02 42
你好mt_dialog,

你好mt_dialog,

事实上我不能下载文件(或任何文件)使用SmartSnippets超过SPI/UART,它只做了JTAG,否则,我不能擦除SPI闪存,这里附加的错误:
那么问题出在哪里呢?

谢谢,

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

嗨bensalemsaif,

由于您有一个基本的工具包,智能代码片段中惟一可用的选项是UART, UART/SPI只对专业人员和专家工具包可用。程序SPI Flash你使适当的连接的基本工具(它需要一个额外的连接),请跟旁边的图你的针连接的SPI和另外连接P0_4跳投和UART的P0_5销连接。

由于MT_dialog