在电路中初始化DA14531模块

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.xmece.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
6个员额/ 0个新员额
最后发表
里斯Weatherley
离线
最后看到:9个月,3个星期前
加入:2020-11-09 02:37
在电路中初始化DA14531模块

如果之前有人问过这个问题,很抱歉。我们最近购买了一些DA14531模块,以集成到一个使用bly的项目中。目前我们还在调查阶段。

为了研究该模块是如何工作的,我将其连接到一个STM32L552微控制器(MCU),如数据表第7节所推荐的:

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

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

* DA14531上的J12 RST到MCU上的GPIO引脚,现在左浮动。

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

大概我需要在使用Codeless .hex文件之前对模块进行flash处理。但是,该模块已经在电路中焊接并连接到单片机。我目前没有一个开发板来单独刷新模块。一旦我们进入生产,我们将希望闪光和/或升级模块在电路中,而不是必须在焊接前分别闪光他们在现场。

是否有一些方法来使用上面的引脚配置将模块放入引导加载程序模式?我发现代码“DA145xx_SDK/6.0.14.1114/utilities/flash_programmer”在SDK中,这似乎是运行在模块上执行引导加载的代码。根据这些信息,我可以轻松地编写自己的flash实用程序在STM32L552中运行。代码似乎表明引导加载程序使用单线UART模式,为此我可能需要重新安排到MCU的接线。我有内联电阻在电路中,所以重新安排电线不应该是一个大戏剧,我们将在下一个原型固定PCB。

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

希望有一种方法可以用刚出厂的DA14531模块来实现这一点。

PM_Dialog
离线
最后看到:4天17小时前
工作人员
加入:2018-02-08 11:03
嗨里斯Weatherley,

嗨里斯Weatherley,

感谢您的在线问题,以及您对我们的TINY模块BLE解决方案的兴趣。

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

它可以通过P05上的单线UART或JTAG接口进行编程。如果您有任何Dialog dk,您可以使用它通过JTAG编程模块。所有DA145xx开发工具包都包含一个Segger J-Link设备,提供串行线调试(SWD)功能。默认情况下,这个J-Link设备连接到Development Kit板上的DA145xx设备,但是也可以将它连接到您自己的硬件,从而允许Development Kit板充当调试探针。查看以下教程的更多信息:

http://lpccs-docs.dialog-semiconductor.com/Tutorial_SDK6/debug_probe.html

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

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

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

根据模块的数据表,默认设置的SWD接口使用了J9 (P0_10/SWDIO)和J10 (P0_2/SWCLK)。因此,这意味着不可能将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并相应地在软件上配置怀疑引脚。

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

谢谢,PM_Dialog

里斯Weatherley
离线
最后看到:9个月,3个星期前
加入:2020-11-09 02:37
谢谢你提供的信息。

谢谢你提供的信息。我将调查并看看我是否可以利用单线接口来做我想做的事情。

“说实话,我不明白为什么你需要flash是与引导加载程序。该模块和DA14531 SoC从特定的引脚启动,启动过程包括非常特定的步骤。”

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

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

PM_Dialog
离线
最后看到:4天17小时前
工作人员
加入:2018-02-08 11:03
嗨里斯Weatherley,

嗨里斯Weatherley,

谢谢你的回复。我们已将此离线论坛,并将要求Avnet AU跟进,并直接通过您的注册电子邮件地址与您联系。

谢谢,PM_Dialog

奇迹托马斯
离线
最后看到:8个月4个星期前
加入:2020-12-09 15:40
我如何安装我的接收器

我如何安装我的接收器在一个非蓝牙设备的电力传输

PM_Dialog
离线
最后看到:4天17小时前
工作人员
加入:2018-02-08 11:03
你好托马斯,奇迹

你好托马斯,奇迹

谢谢你的评论。你能说明一下你在做什么吗?

谢谢,PM_Dialog