Apologies if this question has been asked before. We recently purchased a number of DA14531 modules to integrate into a BLE-using project. At present we're still at the investigation phase.
To investigate how the module works, I hooked it up to a STM32L552 microcontroller (MCU) as recommended in section 7 of the datasheet:
* J14 TX on DA14531 to LPUART1 RX pin on the MCU.
*DA14531上的J10 RX到MCU上的LPUART1 TX引脚。
* J12 RST on DA14531 to GPIO pin on the MCU, left floating for now.
I had naively assumed that the module would come pre-configured with Codeless AT commands from the manufacturer, but I am not getting any response to the simple "ATI" identification command off the module at either 57600bps or 115200bps.
Presumably I need to flash the module with the Codeless .hex file before it can be used. However, the module is already soldered in-circuit and connected to the MCU. And I don't currently have a development board to flash the module separately. Once we go to production we will want to flash and/or upgrade the module in-circuit rather than have to flash them separately before soldering in-place.
是否有某种方法可以使用上述引脚配置将模块置于引导加载程序模式?我在SDK中找到了代码“DA145xx\u SDK/6.0.14.1114/utilities/flash\u programmer”,它似乎是在模块上运行以执行引导加载的代码。基于这些信息,我可以很容易地编写自己的flash实用程序在STM32L552内部运行。代码似乎表明引导加载程序使用1线UART模式,为此,我可能需要重新排列一点到MCU的布线。我有内联电阻在电路中,所以重新排列电线应该不是一个大的戏剧,我们将在下一个原型修复电路板。
What is the sequence that I need to use to force the DA14531 module into its bootloader, whether the module is already flashed or not? Pull RST high and wait a bit? Toggle some other pin? It isn't clear to me from the documentation at the moment how to do this. A document describing the bootloading sequence would be very handy. I may have missed it while scanning, so sorry if I missed something obvious.
希望有一种方法可以做到这一点,从工厂新的DA14531模块。
Hi Rhys Weatherley,
Thanks for your question online and for your interest in our TINY module BLE solution.
该模块是没有预定的公司来ware, thus you will need to flash it ( with the CodeLess FW in your case) before using it.
它可以通过P05上的1线UART或JTAG接口编程。如果您有任何对话框dk,您可以使用它通过JTAG对模块进行编程。所有DA145xx开发包都包含一个Segger J-Link设备,该设备提供串行线调试(SWD)功能。默认情况下,此J-Link设备连接到开发工具包板上的DA145xx设备,但也可以将其连接到您自己的硬件,从而使开发工具包板充当调试探针。有关以下教程的更多信息,请参见:
http://lpccs-docs.dialog-semiconductor.com/Tutorial\u SDK6/debug\u probe.html
老实说,我不明白为什么你需要flash是一个引导程序。该模块和DA14531 SoC通常是从特定引脚引导,引导过程包括非常具体的步骤。
I would recommend first checking outAN-B-072: DA14531 Booting from OTP and Serial Interfacesapplication note, as describes what are the available booting options using serial interfaces such as I2C, UART, SPI and how to program the DA14531 a firmware into Flash, EEPROM or OTP memory.
In Section 4, the booting Sequence and booting pins can be found.
According to the module’s datasheet, the J9 (P0_10/SWDIO) and J10 (P0_2/SWCLK) are sued for the SWD interface, as set by default. So, this means that is not possible to use J10 for the UART RX.
According to the DA14631 datasheet, the SWD signal mapping is defined by SYS_CTRL_REG[DEBUGGER_ENABLE]. However, these signals are mapped on the ports by default. The alternative SWD mapping is selected by the SYS_CTRL_REG[DEBUGGER_ENABLE] bit field. The RST default functionality can be disable by the HWR_CTRL_REG[DISABLE_HWR] bit.
So, if you would like to use J10 (P0_2) as UART pins, you should remap the SWCLK and configure the sceptic pin on the software accordingly.
如果您检查无代码的源代码并打开user\u periph\u setup.h文件,您将看到UART TX配置在P0\u 6上,UART RX配置在P0\u 5上。您可以根据自己的要求更改配置。请记住,如果您计划使用任何可用的睡眠模式,您也需要连接RTS/CTS信号。
谢谢,下午好
谢谢你的消息。我将调查,看看我是否可以利用1线接口做我想要的。
"To be honest, I am not able to understand why you need to flash is with a bootloader. The module and generally the DA14531 SoC is booting from specific pins and the booting procedure includes very specified steps."
We want to reduce the complexity of programming the device as much as possible for production purposes. If it is possible to program in new firmware via the UART, then we can also perform in-field firmware updates from the MCU side. Which is hard to do with JTAG.
Can you suggest an alternative Dialog BLE module like the SmartBond Tiny that comes preprogrammed with an AT command set for plug-and-play operation? We chose to investigate this one primarily because of its low power properties. We don't need to run our own code on the module - we have a separate chip for that.
Hi Rhys Weatherley,
谢谢你的回复。我们已经采取了这个离线形式的论坛,并将要求Avnet AU跟进,并直接联系到您的注册电子邮件地址。
谢谢,下午好
如何将接收器安装在非蓝牙设备中进行电力传输
Hi Miracle Thomas,
Thanks for your comment. Could you please clarify what you are trying to do?
谢谢,下午好