5. 硬件设计类

本节介绍与硬件有关的常见问题。

5.1. 在升压模式下,是否可以从DC-DC的输出端为负载(例如传感器,LED,闪存等)提供电压?

是的。 DA14531 datasheet 中的 Table 12 指定了DC-DC在各种输出电压下可提供的最大负载电流。在升压模式下,DC-DC输出端为clamps, POR 电路,读/写OTP供电和驱动GPIO。 如果未读取/写入OTP且未驱动GPIO,则至少有95%的输出电流能力可以用为外部负载提供电源。只需注意,在启动期间,从VBAT_HIGH汲取的电流不得超过50μA(请参见 DA14531 datasheet 中的 Table 4 )。这可能意味着必须将负载连接到GPIO而不是直接连接到DC-DC的输出端。

5.2. 是否可以使用两层PCB板的设计?

是的。两种封装都不需要微通孔。应用手册 DA14531 Hardware Guidelines 给出了4层PCB板的设计样例,但是可以减少为2层。中间层仅用于互连顶层和底层。

5.3. 什么时候用旁路模式才比较有意义?

当最低功耗不重要时,可以使用旁路模式。旁路模式将允许您不使用DC-DC电感器。这样可以节省0.02美元,并减小电路板尺寸!

请参考两种封装下: DA14531 QFN/BypassDA14531 WLCSP/Bypass 的Bypass模式的电路设计。

在软件设置方面,如果要使用Bypass供电模式,请确保该宏 CFG_POWER_MODE_BYPASS 在文件 da1458x_config_basic.h 中已被定义。

5.4. 我可以不适用外部32KHz的晶振嘛?

外部32 KHz的晶振是可选的。内部RCX可以替代外部32 KHz晶振用作 Low Power Clock (LPC) 的时钟源。

在SDK6.0.14中,可以通过在 da1458x_config_advanced.h 中设置 CFG_LP_CLK 宏来选择低功耗时钟。该宏中包含了以下值:

  • LP_CLK_XTAL32 //External XTAL32 oscillator

  • LP_CLK_RCX20 //Internal RCX20 clock

  • LP_CLK_FROM_OTP //Use the selection in the corresponding field of OTP Header

5.5. 我可以使用2线UART对外部FLASH进行编程吗?

可以的。文档 DA14531 Getting Started 中的 Figure 32 展示了用于对外部设备进行编程的跳线设置 - 通过2线UART对SPI闪存进行编程。文档 DA14531 Booting Options 描述了不同的启动选项。其中包含有I2C,UART,SPI等串行接口,以及如何将固件烧录到Flash,EEPROM和OTP中。

5.6. 用户如何使用DA145xx开发套件刻录SPI闪存?

可以通过使用SmartSnippets toolbox中的 Flash Programmer 功能。共有三个选项:

  1. 使用Jtag。文档 DA14531 Getting StartedFigure 30 展示了通过JTAG编辑SPI FLASH的跳线配置。即使用默认的Pin脚配置。

  2. 使用单线UART - P0_5或P0_3接口。

  3. 使用双线UART。 文档 DA14531 Getting Started 中的 Figure 31 展示了通过双线UART编程SPI FLASH的跳线配置。

你也可以通过参考 ezFlashCLI 工具来操作DA14531的Flash。 ezFlashCLI 工具依靠Segger J-Link™ library来控制Smartbond SWD界面。

对于 DA14531 TINY Module ,也可以通过使用 Dialog Smartbond™ Flash Programmer 对其进行操作。 该工具可用于 Windows OSLinux OSmac OS 操作系统上。 请参看 user manual 来获取更多信息。

5.7. DA14531中的哪些Retention-RAM分区可以被保留?

DA14531中有 3 个RAM分区可以被分别保留。 如果在 da1458x_config_advanced.h 文件中, 标志 CFG_CUSTOM_SCATTER_FILE 未被定义, 则系统会根据默认SDK中的scatter文件和当前image的大小来计算要保留的RAM区域。 RAM3分区是始终被保留的,因为RAM3分区中包含了从ROM中使用的数据。 RAM1 holds IVT,因此需要保留它。因此,如果您的应用程序足够小以适合RAM1,则可以关闭RAM2单元的电源。

_images/da14531_ret_ram.png

Figure 8 DA14531 retention-RAM(保留RAM)

5.8. 当我使用双线URAT对DA14531进行编程时,需要禁用P0_0上的复位功能吗?

不需要。默认情况下,硬件复位功能分配在 P0_0 上。即便默认的硬件复位功能被分配在 P0_0 上,但当引导程序开始执行时候,P0_0 上的硬件复位功能会被引导程序自动禁用。此时 P0_0 接口被用于程序接口引脚。 在此情况下,当程序完成了启动,则 P0_0 接口会被释放,引导程序会重新启用 P0_0 上的硬件复位功能。 因此在使用双线UART对DA14531进行编程时,您无需担心其硬件复位功能会对其有影响。

除此之外,在应用程序内,可以通过 HWR_CTRL_REG 来禁用复位功能。应用程序一旦执行,该指令会被激活,即复位功能被禁用。

Note

DA14531的引导程序被写入了ROM中,无法对其改变。

5.9. 采用WLCSP封装的DA14531是否可以配置为从外部SPI Flash启动,并仍然具有UART和复位功能?

在这种情况下,建议使用JLINK进行编程。复位功能可以通过上电复位或将其分配到另一个GPIO上。CSP封装中的引脚个数少于WLCSP封装,因此很难支持所有功能。 此外,文档 DA14531 Booting Options 描述了使用串行接口(例如I2C,UART,SPI)的不同引导选项,以及如何将固件编程到Flash,EEPROM和OTP中。

5.10. DA14531的预期功耗是多少?

请参考 DA14531 datasheet 中的 3.3 DC Characteristics 部分。

5.11. 什么是OTP configuration script?

OTP configuration script中包含了一些具有特定值的寄存器,这些寄存器可以被写入值,这些值可以是用于在生产过程中的校准值,并会存储在该寄存器中。 有一些还在启动过程中定义了UART time-out timer。 在CPU开始运行程序代码之前,OTP configuration script将被Booter执行,以此来准备并初始化系统。 详情请参考 DA14531 datasheet 中的 4.4.2 Configuration Script

5.12. SPI如何在32 MHz下运行(快速启动)?

SPI Flash的默认运行速率是2 MHz。但是可以使用特定的configuration script的命令来覆盖默认的2 MHz的SPI引导路径,并将时钟速度设置为32 MHz。

5.13. 外部处理器可以控制DA14531吗?

是的,可以通过以下两种方法使用外部处理器来控制DA14531:

  1. 通过GTL,这是Dialog的专有协议。

详情请参见 UM-B-119: DA14585-DA14531 SW Platform Reference 中的 1.4.2. External Processor 部分。 SDK包含了可以应用于此方法的两个例程,分别为 prox_reporter_extprox_monitor_ext。 该两个例程都包含在 projects\target_apps\ble_examples 的SDK路径下。

也可通过参考 UM-B-143 Dialog External Processor Interface 用户手册来了解创建基于GTL的应用程序的一些必要信息。 其中包含了通用传输层协议(GTL)的详细说明,以及交换消息和协议操作的序列流程图。

也请参看基于该协议发布的官方例程: Booting the DA14531 with Codeless Through a STM32STM32 SUOTA via DA14531

  1. 通过 HCI,这是标准的Bluethooth SIG协议。

其中DA14531的SDK包含了基于HCI开发的应用例程。该例程可以在 projects\target_apps\hci SDK路径中找到。

5.14. DA14531是否通过了FCC认证?

是的,DA14531 SoC已通过认证。请参阅以下链接:

  1. DA14531 EN 300 328 certification test report (WLCSP)

  2. DA14531 EN 300 328 certification test report (QFN)

5.15. 我应该从哪里获取DA14531的原理图符号和PCB Footprints?

SnapEDA 网站上提供了DA14531的原理图符号以及PCB Footprints。

https://www.snapeda.com/search/?q=DA14531&search-type=parts

注册后,您可以免费下载几乎任何格式的文件(Altium,Orcad,Eagle等)! QFN和CSP均受支持。

5.16. 我可以通过DA14531专业版开发套件来调试我自己的硬件设备吗?

可以。详情请参考 Getting Started with SDK6 (HTML) 中的 Section 18

更对关于USB开发板、专业开发板套件的信息,可以在 Development Kit-USBDevelopment Kit-Pro 用户手册中找到。

也请参看 Quick Started Guide with the USB Development KitGetting Started with the Pro Development Kit (HTML) 文档来获取更多信息。

5.17. Dialog是否可以提供有关DA14531的模块?

是的。Dialog官方发布了 DA14531 SmartBond TINY™ Module - 请参看以下的产品页面:

DA14531 SmartBond TINY™ Module基于全球最小,功耗最低的Bluetooth®5.1片上系统,为集成模块带来了DA14531 SoC的优势。它仅仅需要一个外部电源和印刷电路板就能构建Bluetooth®应用程序。

该模块面向广泛的市场使用,并将在各个区域进行认证,从而大大节省了开发成本和上市时间。

它带有集成天线和易于使用的软件,使Bluetooth®Low Energy的开发比以往任何时候都更加容易。

这种优秀的组合使以前无法连接到应用程序的移动连接成为可能,以SmartBond TINY™为核心,数十亿个IoT设备将成为可能。

请点击 TINY module datasheetGetting Started guide 来获取更多有关该模块的信息。

5.18. DA14531 TINY Module的预期功耗是多少?

请查看 TINY module datasheet 中的 Table 4: DC Characteristics 来获取有关该方面的信息。