nRF52840_Zigbee_OTA

Zigbee OTA Firmware Packaging 1. nRF52840 Feature list1.1 FeaturesBluetooth® 5, IEEE 802.15.4-2006, 2.4 GHz transceiver-95 dBm sensitivity in 1 Mbps Bluetooth® low energy mode-103 dBm ...
摘要由CSDN通过智能技术生成
Zigbee OTA Firmware Packaging

1. nRF52840 Feature list

1.1 Features

  • Bluetooth® 5, IEEE 802.15.4-2006, 2.4 GHz transceiver
    • -95 dBm sensitivity in 1 Mbps Bluetooth® low energy mode
    • -103 dBm sensitivity in 125 kbps Bluetooth® low energy mode (long range)
    • -20 to +8 dBm TX power, configurable in 4 dB steps
    • On-air compatible with nRF52, nRF51, nRF24L, and nRF24AP Series
    • Supported data rates:
      • Bluetooth® 5: 2 Mbps, 1 Mbps, 500 kbps, and 125 kbps
      • IEEE 802.15.4-2006: 250 kbps
      • Proprietary 2.4 GHz: 2 Mbps, 1 Mbps
    • Single-ended antenna output (on-chip balun)
    • 128-bit AES/ECB/CCM/AAR co-processor (on-the-fly packet encryption)
    • 4.8 mA peak current in TX (0 dBm)
    • 4.6 mA peak current in RX
    • RSSI (1 dB resolution)
  • ARM® Cortex® -M4 32-bit processor with FPU, 64 MHz
    • 212 EEMBC CoreMark score running from flash memory
    • 52 µA/MHz running CoreMark from flash memory
    • Watchpoint and trace debug modules (DWT, ETM, and ITM)
    • Serial wire debug (SWD)
  • Rich set of security features
    • ARM® TrustZone® Cryptocell 310 security subsystem
      • NIST SP800-90A and SP800-90B compliant random number generator
      • AES-128: ECB, CBC, CMAC/CBC-MAC, CTR, CCM/CCM*
      • Chacha20/Poly1305 AEAD supporting 128- and 256-bit key size
      • SHA-1, SHA-2 up to 256 bits
      • Keyed-hash message authentication code (HMAC)
      • RSA up to 2048-bit key size
      • SRP up to 3072-bit key size
      • ECC support for most used curves, among others P-256 (secp256r1) and Ed25519/Curve25519
      • Application key management using derived key model
    • Secure boot ready
      • Flash access control list (ACL)
      • Root-of-trust (RoT)
      • Debug control and configuration
      • Access port protection (CTRL-AP)
    • Secure erase
  • Flexible power management
    • 1.7 V to 5.5 V supply voltage range
    • On-chip DC/DC and LDO regulators with automated low current modes
    • 1.8 V to 3.3 V regulated supply for external components
    • Automated peripheral power management
    • Fast wake-up using 64 MHz internal oscillator
    • 0.4 µA at 3 V in System OFF mode, no RAM retention
    • 1.5 µA at 3 V in System ON mode, no RAM retention, wake on RTC
  • 1 MB flash and 256 kB RAM
  • Advanced on-chip interfaces
    • USB 2.0 full speed (12 Mbps) controller
    • QSPI 32 MHz interface
    • High-speed 32 MHz SPI
    • Type 2 near field communication (NFC-A) tag with wake-on field
      • Touch-to-pair support
    • Programmable peripheral interconnect (PPI)
    • 48 general purpose I/O pins
    • EasyDMA automated data transfer between memory and peripherals
  • Nordic SoftDevice ready with support for concurrent multiprotocol
  • 12-bit, 200 ksps ADC - 8 configurable channels with programmable gain
  • 64 level comparator
  • 15 level low-power comparator with wake-up from System OFF mode
  • Temperature sensor
  • 4x 4-channel pulse width modulator (PWM) unit with EasyDMA
  • Audio peripherals: I2S, digital microphone interface (PDM)
  • 5x 32-bit timer with counter mode
  • Up to 4x SPI master/3x SPI slave with EasyDMA
  • Up to 2x I2C compatible 2-wire master/slave
  • 2x UART (CTS/RTS) with EasyDMA
  • Quadrature decoder (QDEC)
  • 3x real-time counter (RTC)
  • Single crystal operation
  • Package variants
    • aQFN™ 73 package, 7 x 7 mm
    • WLCSP93 package, 3.544 x 3.607 mm

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个错误提示可能是由于库文件中的某个函数或变量没有进行正确的链接,导致链接失败而导致的。具体来说,l6915e错误代码表示链接时遇到了错误,而__use_no_s则是一个符号或变量名称(可能是一个宏定义),它在库文件中被引用,但链接时没有找到它的定义。可能原因是库文件路径或名称不正确,或者库文件中缺少某些必需的符号或变量定义。为了解决这个问题,我们可以尝试重新编译和链接整个项目,或者检查库文件和路径是否正确,并且确认库文件中是否包含了需要的符号或变量定义。如果还是无法解决,可能需要联系开发团队或者查阅相关的开发文档等。 ### 回答2: 该错误信息说明了,编译时出现了一个名为l6915e的链接库报告了一个错误,具体错误为__use_no_s。这是一个比较常见的错误,通常出现在使用ARM的编译器时,该编译器有一个叫做scatter loading的特性。该特性允许用户使用一个链接脚本,指定程序在内存中的布局,以及使用的存储器类型等信息。 __use_no_s是在链接时,scatter loading特性决定是否使用系统的启动代码来初始化非零的全局变量。如果选择“启动时不使用零初始化”,则会在链接时遇到__use_no_s这个标志,表示不使用零初始化。通常这种情况下,编译器会将非零的全局变量放在静态片上,然后启动代码会从这个地址加载变量的初始值。 出现这种错误的原因可能是开发者在使用ARM编译器时,手动修改了链接脚本或链接器选项,使得这个标志被打开。需要找到打开这个标志的原因,并进行适当的修改或调整。一般来说,最好使用默认的链接脚本和选项,除非有特殊的需求。同时,开发者也可以根据具体情况,选择使用其他的初始化方式,比如在启动代码中使用memcpy函数等来完成初始化。 ### 回答3: 这个错误是由于在编译nrf52840程序时,使用了ARM库中的一个错误,出现了__use_no_s的问题。这个错误在有些情况下也可能会被称为“库错误”。通常情况下,这个错误会提示__use_no_s symbol已被定义,这意味着它被编译器识别并给出了相关的错误报告。 但是,解决这个错误并不是一件非常困难的事情。在这种情况下,我们需要仔细检查编译器输出的错误信息,以确定问题的确切原因。一种比较常见的情况是,我们在编译程序时使用了不兼容的库,或者库缺少一些关键的文件或函数。 为了解决这个问题,我们需要在编译器中添加一个-lc-no-merge的选项。然后重新编译程序即可。这个选项可以告诉编译器不要合并libc中的函数和数据。这样可以避免出现__use_no_s symbol已被定义的错误。 另外,我们还可以通过升级编译器版本来解决这个问题。如果我们的编译器版本过低或者不兼容,那么也可能会导致出现这个错误。因此,在解决这个问题时,我们需要确认编译器版本是否是最新的,并且与库文件兼容。 总之,出现编译错误是很常见的事情,而错误信息可能不太清晰。但只要我们认真检查错误信息,并尝试不同的解决方法,我们就可以轻松地解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值