13个帖子/ 0新
最后一篇
yamazaki.
离线
最后一次露面:4年9月前
加入:2014-01-08 06:00时
UART启动DA14580-01

嗨,支持成员,

DA14580-01无法从P0_4 / 5以外启动。
简单的;P0_0/1, P0_2/3

对AN-B-001的描述(从串行接口启动的DA14580)是正确的?
而且,它应该更新?

最好的问候,
yamazaki.

bb_dialog.
离线
最后一次露面:10个月2天前
职员
加入:2013-12-05 14:44
嗨yamazaki,

嗨yamazaki,

DA14580_01必须能够从所有8个P0_n端口引导。
在启动期间,它会为外部设备扫描“所有P)端口,例如,在UART,SPI,I2C。

确保您正在使用的BAORD为您喜欢使用的UART配对有线。
REV C2主板是P0_4 / P0_5的默认连接。

最好的问候,
对话框支持团队。

qhan
离线
最后一次露面:6年6个月前
加入:2014-07-24 04:21
嗨,支持成员,

嗨,支持成员,
DA14580_01必须能够从所有8个P0_n端口引导。
在启动期间,它会为外部设备扫描“所有P)端口,例如,在UART,SPI,I2C。
如果我只想通过使用端口P0_4和P0_5从UART启动,DA14580必须扫描另一个
外部设备?我们是否会关闭其他扫描,如SPI,I2C。

FH_Dialog
离线
最后一次露面:2个月4周前
职员
加入:2013-12-06十五12
在启动期间,它“扫描”所有

在启动期间,它为外部设备的“扫描”所有P)端口。它是由BootRom完成的,它不允许客户修改它。如果要使用端口P0_4和P0_5使用外部设备从UART启动,则可以在OTP中编程第二引导加载程序。请参阅文件http://support.dialog-semicondiondiondum-b-012-creation-secondary-boot ...

holetri
离线
最后一次露面:6年4个月前
加入:2014-11-20 09:33
嗨fh_dialog,

嗨fh_dialog,

我正在设计新的电路板,包括外部SPI Flash MX25L2006E。
我尝试从P0_4和P0_5的UART引导,并将固件写入MX25L2006E。
该方法在DA14580DEVKT-B中验证。但是当我尝试在我的新设计板时,它会失败。失败在电路板检测到的复位信号后,并开始下载固件,但无法下载。以下是日志文件:

[信息@ 14-12-26 10:24:54]固件文件c:\ users \ tri \ smartsnippets \资源\ flash_programmer.bin已被选中
[INFO @14-12-26 10:24:54] Connection to COM14 port has successfully opened。
[info @ 14-12-26 10:24:54]开始下载程序...
[ACTION @14-12-26 10:24:55]请按单板上的硬件复位按钮来启动下载过程。
[信息@ 14-12-26 10:24:57]重置检测到
[INFO @14-12-26 10:25:09]下载固件到单板失败。

你能帮忙给出任何想法,提出这个失败吗?另外请指出我在哪里可以在日志文件中获取更多详细信息。

问候,
- 何

holetri
离线
最后一次露面:6年4个月前
加入:2014-11-20 09:33
嗨fh_dialog,

嗨fh_dialog,

同样如AN-B-001第6.2节所示,当从UART模式启动时,DA14580-1通过P0_4, P0_5自动发送“0x02”到笔记本电脑/ PC。
但是在我的设计中,我只看到“0x40”返回。我看不出你的AN-B-001的十六进制数据有什么意义。
你能给我一些关于这个数据消息的建议吗?

问候

mvfofana
离线
最后一次露面:5年5个月前
加入:2015-12-03 21:21
你好对话人员。

你好对话人员。
我有你的DA14580模块设计在一个系统作为一个UART从到一个cortex M3 Master。
DA按照(AN-B-001)配置为串行启动,P0_4和P0_5被选为UART Rx/Tx线,希望达到57.6波特率。
我能够成功转换(使用hex2bin.exe和binforuart.py)将keil生成的sps_device.hex文件转换为c字节数组并将其传输到DA14580,然后将其准确计算并返回下载的SPS_DEVICE配置文件上的预期CRC。
收到预期的CRC后,我用ACK(0x06)回复(根据AN-B-001),这应该触发SYS_CTRL_REG的编程:
1.)Remap to SysRAM (SYS_CTRL_REG[REMAP_ADR0] = 10)。
2.)应用SW重置,因此系统在RempedApped地址处启动执行代码(Sys_ctrl_reg [sw_reset] = 10)。

我已经跟随了(AN-B-001)到了这封信,但似乎你的Bootrom代码没有让它过去最终的引导阶段。
我仍然从模块的UTX行上得到stx (0x02s),尽管已经用ACK(0x06)确认了返回的CRC。

谁能帮我把这个弄清楚?
是否有一个特殊的命令后需要从主机的最终ACK,以得到这个东西启动?

谢谢
Mamadee V. Fofana.

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

嗨mvfofana,

如果在启动过程结束后在同一端口上看到STX,那么您的设备可能会重置并重新启动整个启动过程。没有其他命令指示da开始执行代码,只要.bin文件被下载到da,并且您确认crc应该工作。您能够通过使用智能代码片段下载代码,您可以比较智能代码片段和您的自定义启动序列之间的事务。您还可以通过jtag下载二级引导加载程序,并尝试通过UART引导,代码类似于bootrom代码,也许通过这种方式您将发现什么错误。

谢谢mt_dialog.

ru
离线
最后一次露面:4年9月前
加入:2014-01-27 19:56
我们遇到了类似的问题。后

我们遇到了类似的问题。从DA中读取0x02后,发送3个字节0x01和2个长度字节。然而,此后我们收到一个不等于Ack或Nack的字节。但是有一些其他的价值。奇怪的是,它偶尔会起作用。此外,当我们从设备上取下电池,过一段时间再放回去时,它似乎更像是一个循环。它注意到,如果失败,它总是在发送前三个字节之后。
我们使用Murata模块与DA芯片上的DA芯片。可以是该模块通过早于VCC稳定的IO引脚来供电吗?
应该是0x06或0x15的字节似乎与0X60相差很多。

由于路德

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

嗨ruud,

就您收到的无关字节(而不是0x60而不是0x06或OX15),我假设是0x06,最低有效位首先在UART标准中发送。它强制发送这三个字节(0x01,len_lsb,len_msb),因为它们定义了程序的长度。

启动过程依赖于在DA上应用的电压,因为BootROM执行ADC测量以便进入电压电平,有时电压电平被错误地测量,并且BootROM仅执行一次,如果是那些供电的IO引脚也会执行一次UART引脚(涉及UART过程)导致VBAT电压约为1V〜1.5V,这可以防止DA执行启动过程。

谢谢mt_dialog.

Shuaiwei Yin
离线
最后一次露面:1年3个月前
加入:2017-03-13 07:27
我正在努力启动

我正在从串行端口启动DA14580(P0.4,P0.5)。我们将逻辑分析器连接到串行端口,以识别引导过程中发生的情况。最后,我们必须知道主机没有确认CRC字节,然后无法启动DA。主机应将ACK发送到DA,因为它被编程。但逻辑分析仪中没有出现ACK。这可能是由主机的硬件错误或其他一些原因引起的。
如果没有收到CRC字节,我的问题是DA14580的表现恰好。DA在几个MS等待和超时后重复启动序列(发送0x02)?还是有没有办法让主人知道这个失败并尝试再次启动da?

Shuaiwei Yin
离线
最后一次露面:1年3个月前
加入:2017-03-13 07:27
可以任何帮助这个问题吗?

可以任何帮助这个问题吗?

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

嗨Shuaiwei Yin,

ROM引导加载程序依次扫描UART端口,如果一个端口不能完成这个过程,设备就会跳到下一个可用的端口,问题是,由于引导加载程序错误读取了580,在某些情况下不会重复引导代码,但它将以引导过程结束,并保持可用的JTAG,以便从那里引导。没有迹象表明在特定端口上启动失败,设备只是继续扫描下一个接口。为了重新启动引导加载程序从扫描再次您可以发出一个重置从您的主机。如果从580计算的crc匹配,那么最终的ACK将从主机发送,如果它匹配,那么580将获得OK并继续引导,如果不是,你可以重置设备以重新运行引导加载程序。

谢谢mt_dialog.