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.
* J10 RX在DA14531上的LPUART1 TX引脚MCU上。
* 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_sdk / 6.0.14.1114 / ultities / flash_programmer”似乎是在模块上运行的代码以执行引导加载。我可以轻松地编写自己的Flash实用程序以根据该信息在STM32L552内部运行。代码似乎指示引导加载程序使用1-Wire UART模式,我可能必须重新排列到MCU的接线。我在电路中有直线电阻,因此重新排列电线不应该是一个大型戏剧,我们将在下一个原型中修复PCB。
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-seminiondiond.com/tutorial_sdk6/debug_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_periph_setup.h文件的源代码,则会看到UART TX在P0_6和P0_5上的UART RX上配置。您可以根据您的要求更改该配置。请记住,如果您计划使用任何可用睡眠模式,您也需要连接RTS / CTS信号。
谢谢,PM_DIALOG.
谢谢你提供的详情。我会调查,看看我是否可以使用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向跟进并直接在您的注册电子邮件地址接触。
谢谢,PM_DIALOG.
如何在非蓝牙设备中安装我的接收器以进行电力传输
Hi Miracle Thomas,
Thanks for your comment. Could you please clarify what you are trying to do?
谢谢,PM_DIALOG.