* [components][clock_time] Refactor time subsystem around clock_time Introduce the clock_time core with clock source/event separation, high-resolution scheduling, and boot-time helpers, plus clock_timer adapters for timer peripherals. Remove legacy ktime/cputime/hwtimer implementations and migrate arch and BSP time paths to the new subsystem while keeping POSIX time integration functional. Update drivers, Kconfig/SConscript wiring, documentation, and tests; add clock_time overview docs and align naming to clock_boottime/clock_hrtimer/clock_timer. * [components][clock_time] Use BSP-provided clock timer frequency on riscv64 * [risc-v] Use runtime clock timer frequency for tick and delays * [bsp] Add clock timer frequency hooks for riscv64 boards * [bsp] Update Renesas RA driver doc clock_timer link * [bsp] Sync zynqmp-r5-axu4ev rtconfig after config refresh * [bsp][rk3500] Update rk3500 clock configuration * [bsp][hpmicro] Add rt_hw_us_delay hook and update board delays * [bsp][stm32l496-st-nucleo] enable clock_time for hwtimer sample in ci * [bsp][hpmicro] Fix rtconfig include scope for hpm6750evk Move rtconfig.h include outside the ENET_MULTIPLE_PORT guard for hpm6750evk and hpm6750evk2 so configuration macros are available regardless of ENET settings. * [bsp][raspi3] select clock time for systimer * [bsp][hpm5300evk] Trim trailing blank line * [bsp][hpm5301evklite] Trim trailing blank line * [bsp][hpm5e00evk] Trim trailing blank line * [bsp][hpm6200evk] Trim trailing blank line * [bsp][hpm6300evk] Trim trailing blank line * [bsp][hpm6750evk] Trim trailing blank line * [bsp][hpm6750evk2] Trim trailing blank line * [bsp][hpm6750evkmini] Trim trailing blank line * [bsp][hpm6800evk] Trim trailing blank line * [bsp][hpm6e00evk] Trim trailing blank line * [bsp][nxp] switch lpc178x to gcc and remove mcx timer source * [bsp][stm32] fix the CONFIG_RT_USING_CLOCK_TIME issue. * [docs][clock_time] add clock time documentation * [docs][clock_time] Update clock time subsystem documentation - Update device driver index to use correct page reference - Clarify upper layer responsibilities in architecture overview - Update README to describe POSIX/libc, Soft RTC, and device driver usage - Refine architecture diagram with improved layout and color scheme - Remove obsolete clock_timer.md file * [kernel][utest] Trim trailing space * [clock_time] Fix hrtimer wrap handling * [clock_time] fix the static rt_inline issue * [clock_time] fix the rt_clock_hrtimer_control result issue
nRF5340-PCA10095 BSP说明
简介
该文件夹主要存放所有主芯片为nRF5340的板级支持包。
目前支持的开发板如下
| 支持开发板型号 | 开发板上外设 | 备注 |
|---|---|---|
| NRF5340-DK-PCA10095 | QSPI FLASH, 4 button,4 LED | UART0 |
| NRF7002-DK-PCA10143 | QSPI FLASH, 2LED, 2BUTTON | UART0 |
选择开发板请使用menuconfig -> Hardware Driver Config -> Select Bsp board
选择对应的开发板
本文主要内容如下:
- 开发板资源介绍
PCA10095-nrf5340 开发板常用 板载资源 如下:
- MCU:NRF5340,双核, Arm® Cortex®-M33,DSP, ARMV8,应用核128M Hz, 网络核64MHz
- MCU 外设: GPIO, UART, SPI, I2C(TWI), RTC,TIMER,NFC,QSPI,PWM,ADC,USB
- 板载外设
- LED:4个,P0.28(LED1), P0.29(LED2), P0.30 (LED3), P0.31(LED4) 。
- 按键:5个,P0.23(SW1), P0.24(SW2), P0.08(SW3), P0.09(SW4)。BOOT/RESET(SW5)
- FLASH: P0.13(QSPI0), P0.14(QSPI1), P0.15(QSPI2), P0.16(QSPI3), P0.17(QSPI_CLK), P0.18(QSPI_CS) =》QSPI flash
- USB: 1个
- UART1: RXD(P1.00), TXD(P1.01), CTS(P0.10), RTS(P0.11) => 连接的JLINK中的VCOM0
- UART2: RXD(P0.22), TXD(P0.20), CTS(P0.21), RTS(P0.19) => 连接的JLINK中的VCOM1
- Segger RTT (RTT Console)
- NFC: NFC1(P0.02), NFC2(P0.03)
- 常用接口:USB device、Arduino Uno 接口
- 调试接口:板载 J-LINK 调试器。
PCA10143-nrf7002 开发板常用 板载资源 如下:
- 板载设
-
LED:2个,LED1(P1.06), LED2(P1.07).
-
BUTTON: 2个, SW1(P1.08), SW2(P1.09)
-
UART1: RXD(P1.00), TXD(P1.01), CTS(P0.10), RTS(P0.11) => 连接的JLINK中的VCOM0
-
UART2: RXD(P0.22), TXD(P0.20), CTS(P0.21), RTS(P0.19) => 连接的JLINK中的VCOM1
-
SPI_HS: SCK(P0.08), MOSI(P0.09), MISO(P0.10), CS(P0.11) => 连接MX25 QSPI FLASH
-
I2C: SDA(P1.02) SCL(P1.03)
-
NRF7002 CTRL: BUCKEN(P0.12), IRQ(P0.23), GRANT(P0.24), REQ(P0.28), STATUS1(P0.29), STATUS0(P0.30)
-
NRF7002(QSPI): CS(P0.18), CLK(P0.17), QSPI0(P0.13), QSPI1(P0.14), QSPI2(P0.15), QSPI3(P0.16)
-
开发板介绍
外设支持
本 BSP 目前对外设的支持情况如下:
| 片上外设 | 支持情况 | 备注 |
|---|---|---|
| GPIO | 支持 | GPION |
| UART | 支持 | UART0 请暂时使用1000000波特率 |
| PWM | 支持 | 支持 |
| SPI | 支持 | 支持 |
| QSPI | 支持 | 支持开发板上QSPI FLASH |
| RTC | 支持 | |
| ADC | 支持 | |
| Segger_rtt | 支持 | 在Hardware Drivers Config → Onboard Peripheral Drirs中选中即可 |
进阶使用
此 BSP 默认只开启了 GPIO 和 串口 0 的功能,更多高级功能需要利用 env 工具对 BSP 进行配置,步骤如下:
-
在 bsp 下打开 env 工具。
-
输入
menuconfig命令配置工程,配置好之后保存退出。 -
输入
pkgs --update命令更新软件包。 -
输入
scons --target=mdk5命令重新生成工程。
启用Openocd调试
{
"version": "0.2.0",
"configurations": [
{
"name": "nRF5340_Debug-RT-Thread",
"executable": "${workspaceRoot}/rt-thread.elf",
"request": "launch",
"type": "cortex-debug",
"runToEntryPoint": "main",
"targetId": "nRF5340_xxAA_APP",//填device名
"servertype": "jlink",
"device": "nRF5340_xxAA_APP",//填device名
"interface": "swd",
"svdFile": "${workspaceRoot}/packages/nrfx-latest/mdk/nrf5340_application.svd",
"armToolchainPath": "D:/bin/env-windows/tools/gnu_gcc/arm_gcc/mingw/bin", // 这里填入GCC 工具链路径,我用的是env的gcc
"serverpath": "D:/RT-ThreadStudio/repo/Extract/Debugger_Support_Packages/SEGGER/J-Link/v7.92/JLinkGDBServerCL.exe" // 这里填入GDB 路径,我用的是RT-ThreadStudio,注意你的jlink路径跟我的不一样一样,可以参考
}
]
}
支持其他开发板
客户可以将自己的开发板的.config文件和board/Kconfig文件到board/$(board_name)下面添加README.md即可,使用的时候替换.config文件
注意事项
联系人信息
维护人:
- [Andrew], 邮箱:andrew.li@nordicsemi.no