nrf52840笔记-时钟管理

测试目标板:nrf52840开发板

nRF52的时钟管理

nRF52时钟树:

nrf52的系统时钟可以从内部或者外部为系统提供时钟源。频率振荡器根据模块的个别要求分配,时钟分配是自动并且按照模块独立分配的,以限制未使用模块的电流消耗。

时钟树中的时钟如下:

64MHZ片上振荡器

64MHZ晶体振荡器,使用外部32MHZ晶体

32.768KHZ±250ppmRC振荡器

32.768KHZ晶体振荡器,使用外部32.768KHZ晶体

64MHZ振荡器生成的32.768KHZ振荡器

高速时钟控制器:HFCLK clock controller

高速时钟控制器为系统提供如下时钟:

HCLK64M:64MHZ CPU时钟

PCLK1M:1MHZ外设时钟

PCLK16M:16MHZ外设时钟

PCLK32M:32MHZ外设时钟

高速时钟控制器的时钟源为:

HFINT:64MHZ内部振荡器

HFXO:64MHZ晶体振荡器

当系统请求从HFCLK控制器一个或多个时钟时,HFCLK将自动提供它们。如果系统不再要求从HFCLK提供时钟,则进入省电模式

当请求HFCLK且HFXO尚未启动时,将会使用HFINT作为时钟源。

HFXO是通过触发HFCLKSTART任务来启动的,通过触发HFCLKSTOP任务来停止的。当HFCLKSTART任务被触发时,一旦HFXO稳定,就会生成HFCLKSTARTED事件。

HFXO必须运行使用RADIO NFC或者与32.768KHZ RC振荡器相关的校准机制进行校准。

64 MHz晶体振荡器(HFXO)是由一个32 MHz的外部晶体控制的。

  1. 低速时钟控制器:LFCLK clock controller
  2. 系统支持多个低频时钟源。
  3. 32.768 kHz RC振荡器(LFRC)
  4. 32.768 kHz晶体振荡器(LFXO)
  5. 由HFCLK合成的32.768 kHz(LFSYNT)

在系统关闭模式下,LFCLK控制器和所有LFCLK时钟源都处于关闭状态。

LFCLK时钟的启动首先需要在LFCLKSRC寄存器中选择首选的时钟源,然后触发LFCLKSTART任务。如果选择了LFXO作为时钟源,那么在LFXO启动过程中,LFCLK将首先从32.768 kHz的LFRC运行,并在该振荡器运行后自动切换到使用LFXO。当LFXO启动后,将生成LFCLKSTARTED事件。

LFCLK时钟通过触发LFCLKSTOP任务来停止。

在LFCLK运行时不允许写寄存器LFCLKSRC

一个LFCLKSTOP任务会停止LFCLK振荡器。然而,只有在LFCLKSTAT寄存器中状态字段指示LFCLK处于运行状态后,才能触发LFCLKSTOP任务。合成的32.768 kHz时钟依赖于HFCLK来运行。如果LFCLK从合成的32.768 kHz时钟运行需要高精度,那么HFCLK必须从HFXO源运行。

32.768 kHz RC振荡器(LFRC)

LFRC振荡器有两种工作模式:正常模式和超低功耗(ULP)模式,允许用户根据需求在功耗和时钟精度之间进行权衡。LFRC模式在寄存器LFRCMODE中进行配置。在更改振荡器模式之前,必须停止LFRC振荡器。

LFRC的频率会受到温度变化的影响。在校准过程中,可以使用HFXO作为参考振荡器来校准LFRC振荡器,从而提高其精度。

在LFRC振荡器启动并运行后,可以通过触发CAL任务来对其进行校准。

LFRC振荡器将临时请求使用HFCLK作为校准的参考。校准完成后,将生成一个DONE事件。为了使校准机制工作,必须启动HFCLK晶体振荡器(通过触发HFCLKSTART任务)。

在校准过程中,不允许停止LFRC或向LFRCMODE写入数据。

校准定时器

校准定时器可用于设定32.768 kHz RC振荡器的校准间隔。通过触发CTSTART任务来启动校准定时器,通过触发CTSTOP任务来停止校准定时器。

校准定时器总是从CTIV(保留)寄存器中指定的值开始倒计时,当计时器达到0时,会生成一个CTTO事件。当校准定时器达到0时,它会自动停止。

32.768 kHz 晶体振荡器(LFXO)

对于需要更高LFCLK精度(当需要优于±500 ppm的精度时),必须使用低频晶体振荡器(LFXO)。

支持以下外部时钟源:

应用到XL1引脚的Low swing时钟信号。此时,XL2引脚应接地。

应用到XL1引脚的Rail-to-rail时钟信号。此时,XL2引脚应接地或保持未连接状态。

从HFCLK合成的32.768 kHz(LFSYNT)

LFCLK也可以从HFCLK时钟源合成。此时,LFCLK的精度将是HFCLK的精度。

使用LFSYNT时钟可以避免对32.768 kHz晶体的需求,但由于系统需要请求HFCLK,因此会增加平均功耗。

### 回答1: nRF52840-DK开发板是一款由Nordic Semiconductor推出的功能强大的开发板,适用于无线应用的开发和原型设计。该开发板基于nRF52840芯片,具有蓝牙5、蓝牙Mesh、Thread、Zigbee等多种无线通信协议的支持,是开发智能穿戴设备、物联网设备以及传感器网络等应用的理想选择。 nRF52840-DK开发板具有丰富的硬件接口,包括USB、UART、SPI、I2C、GPIO等,使得开发者可以方便地连接、控制各种外部设备。同时,开发板上还集成了按钮、LED指示灯、天线等常用的外设,便于用户进行基础的应用开发和调试。 nRF52840-DK开发板不仅提供了开发所需的硬件资源,还配备了丰富的软件开发工具和库函数。开发者可以使用Nordic Semiconductor提供的nRF5 SDK进行应用开发,还可以通过Keil、IAR和GCC等常用的集成开发环境进行编程。 除此之外,nRF52840-DK开发板还支持在线固件更新(OTA),提供了方便快捷的开发和调试环境。开发者可以使用Segger J-link等调试工具进行调试和烧录。 总之,nRF52840-DK开发板是一款强大而灵活的开发工具,适用于广泛的无线应用开发。无论是初学者还是有经验的开发者,都能够利用该开发板快速构建各种创新的无线应用,并实现功能丰富、稳定的产品。 ### 回答2: nrf52840-dk是一款常用的开发板,广泛用于物联网(IoT)和蓝牙应用的开发。以下是关于该开发板的一些重要信息: 1. 芯片:nrf52840是Nordic Semiconductor公司推出的一款高性能低功耗蓝牙LE SoC(System-on-a-Chip)芯片。这款芯片集成了一个Arm Cortex-M4F处理器和2.4GHz无线收发器,可支持蓝牙5.0和其他无线通信协议。 2. 开发板:nrf52840-dk是基于nrf52840芯片的开发板,具有丰富的外围设备和接口,方便开发者进行软件编程和硬件原型设计。该开发板包含了带有按钮、指示灯和天线的nRF52840 SoC模块,以及一系列GPIO引脚、USB接口、电源管理电路等。 3. 软件开发工具:使用nrf52840-dk进行开发时,可以使用Nordic Semiconductor提供的nRF5软件开发工具套件。这个工具套件包含了一系列用于编写和调试nRF52840软件的开发工具、库文件和示例代码。开发者可以使用该工具套件进行代码编辑、编译、下载和调试等操作。 4. 功能和应用:nrf52840-dk开发板支持蓝牙LE和其他无线通信协议,可以广泛应用于物联网设备、可穿戴设备、智能家居、健康监测、无线传感器网络等领域的开发。开发者可以利用该开发板进行传感器数据采集、通信协议开发和物联网应用的原型验证。 总之,nrf52840-dk开发板是一款功能强大、易于使用的开发工具,适用于物联网和蓝牙应用的开发。它提供了丰富的外围设备和接口,配合Nordic Semiconductor的软件开发工具套件,开发者可以快速进行硬件原型设计和软件编程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值