初始化DA14531模块在电路中

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.xmece.com/support.我们将在未来几天修复bug /优化搜索和标记。
6个职位/ 0个新职位
最后发表
Rhys Weatherley.
离线
最后一次露面:4个月1周前
加入:2020-11-09 02:37
初始化DA14531模块在电路中

如果之前有人问过这个问题,请原谅。我们最近购买了一些DA14531模块集成到一个bleusing项目中。目前我们仍处于调查阶段。

为了调查该模块如何工作,我将其连接到STM32L552微控制器(MCU),如数据表第7节推荐:

* J14 TX上DA14531到LPUART1 RX引脚上的单片机。

* J10 RX在DA14531上的LPUART1 TX引脚MCU上。

* DA14531上的J12 RST到MCU上的GPIO引脚,暂时左浮。

我天真地认为模块将预先配置从制造商的无代码AT命令,但我没有得到任何响应简单的“ATI”识别命令从模块57600bps或115200bps。

大概我需要用Codeless .hex文件flash模块,然后才能使用它。然而,该模块已经在电路中焊接并连接到MCU。我目前没有一个开发板来单独flash模块。一旦我们开始生产,我们将希望在电路中闪光和/或升级模块,而不是必须在焊接前分别闪光。

是否有一些方法使用上述引脚配置将模块放入引导加载程序模式?我发现SDK中的代码“DA145xx_sdk / 6.0.14.1114 / ultities / flash_programmer”似乎是在模块上运行的代码以执行引导加载。我可以轻松地编写自己的Flash实用程序以根据该信息在STM32L552内部运行。代码似乎指示引导加载程序使用1-Wire UART模式,我可能必须重新排列到MCU的接线。我在电路中有直线电阻,因此重新排列电线不应该是一个大型戏剧,我们将在下一个原型中修复PCB。

我需要使用什么顺序来强制DA14531模块进入其引导加载程序,无论模块是否已经闪过?拉高RST,再等一会儿?切换其他引脚?我目前还不清楚如何从文档中做到这一点。描述引导加载顺序的文档将非常方便。我可能在扫描的时候漏掉了,如果我漏掉了一些明显的东西,我很抱歉。

希望有一种方法可以使用源自源自工厂的DA14531模块来完成此操作。

PM_DIALOG.
离线
最后一次露面:10小时31分钟前
工作人员
加入:2018-02-08 11:03
嗨里斯Weatherley,

嗨里斯Weatherley,

感谢您的在线问题和您对我们的微型模块BLE解决方案的兴趣。

该模块没有预先编程的固件,因此您需要在使用它之前flash它(在您的情况下使用无代码FW)。

它可以通过P05上的1线UART或通过JTAG接口进行编程。如果您有任何对话框DK,则可以使用它来通过JTAG进行编程模块。所有DA145xx开发套件包含一个Segger J-Link设备,提供串行电线调试(SWD)功能。默认情况下,此J-Link设备连接到开发套件上的DA145xx设备,但可以将其连接到您自己的硬件,允许开发套件作为调试探测器。查看以下教程的更多信息:

http://lpccs-docs.dialog-seminiondiond.com/tutorial_sdk6/debug_probe.html.

要诚实,我无法理解为什么你需要flash是用引导加载程序。模块和通常DA14531 SOC从特定引脚启动,引导过程包括非常指定的步骤。

我建议你先退房AN-B-072: DA14531从OTP和串行接口启动应用程序笔记,描述了什么是可用的启动选项使用串行接口,如I2C, UART, SPI和如何编程DA14531的固件到Flash, EEPROM或OTP内存。

在第4节中,可以找到启动顺序和启动引脚。

根据模块的数据表,J9 (P0_10/SWDIO)和J10 (P0_2/SWCLK)被用于SWD接口,默认设置。因此,这意味着不可能将J10用于UART RX。

根据DA14631 datasheet, SWD信号映射是由SYS_CTRL_REG[DEBUGGER_ENABLE]定义的。但是,这些信号在默认情况下被映射到端口上。可选的SWD映射由SYS_CTRL_REG[DEBUGGER_ENABLE]位域选择。RST默认功能可以通过HWR_CTRL_REG[DISABLE_HWR]位关闭。

因此,如果您想使用J10 (P0_2)作为UART引脚,您应该重新映射SWCLK并相应地在软件上配置怀疑引脚。

如果检查无附件和打开user_periph_setup.h文件的源代码,则会看到UART TX在P0_6和P0_5上的UART RX上配置。您可以根据您的要求更改该配置。请记住,如果您计划使用任何可用睡眠模式,您也需要连接RTS / CTS信号。

谢谢,PM_DIALOG.

Rhys Weatherley.
离线
最后一次露面:4个月1周前
加入:2020-11-09 02:37
谢谢你提供的详情。

谢谢你提供的详情。我会调查,看看我是否可以使用1线接口来做我想要的。

“老实说,我不能理解为什么你需要flash是一个引导加载程序。该模块和DA14531 SoC通常从特定引脚启动,启动过程包括非常特定的步骤。”

为了生产目的,我们希望尽可能减少设备编程的复杂性。如果通过UART在新固件中编程是可能的,那么我们也可以从MCU方面执行现场固件更新。JTAG很难做到这一点。

你能推荐一个替代的Dialog BLE模块吗?比如SmartBond Tiny,它预先编写了一个AT命令集,用于即插即用操作?我们选择研究这个主要是因为它的低功率特性。我们不需要在模块上运行我们自己的代码——我们有一个单独的芯片。

PM_DIALOG.
离线
最后一次露面:10小时31分钟前
工作人员
加入:2018-02-08 11:03
嗨里斯Weatherley,

嗨里斯Weatherley,

感谢您的回复。我们已将此脱机组成了论坛,并将Avnet Au向跟进并直接在您的注册电子邮件地址接触。

谢谢,PM_DIALOG.

奇迹托马斯
离线
最后一次露面:三个月两个星期前
加入:2020-12-09 15:40
如何安装我的接收器

如何在非蓝牙设备中安装我的接收器以进行电力传输

PM_DIALOG.
离线
最后一次露面:10小时31分钟前
工作人员
加入:2018-02-08 11:03
你好托马斯,奇迹

你好托马斯,奇迹

谢谢你的评论。你能解释一下你在做什么吗?

谢谢,PM_DIALOG.