* [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
STM32F407 RT-Thread Spark Board BSP Introduction
Overview
This document is a description of the BSP (Board Support Package) provided by the RT-Thread development team for the STM32F407 RT-Thread Spark Board.
The main contents are as follows:
- Introduction of Development Board Resources
- BSP Quick Start
- Advanced Usage
By reading Quick Start Section, developers can quickly get started with the BSP and run RT-Thread on the board. In the Advanced Usage Section, more advanced features will be introduced to help developers utilize RT-Thread to drive more on-board resources.
Spark-1 Introduction
The STM32F407 is a development board based on the ARM Cortex-M4 core from RT-THREAD, with a maximum main frequency of 168Mhz. The board has a wealth of on-board resources, which can fully utilize the performance of the STM32F407 chip.
The appearance of the board is shown in the figure below:
The development board commonly used on-board resources as follows:
- MCU: STM32F407ZGT6, 168MHz, 1024KB FLASH, 192KB RAM.
- External FLASH: W25Q128 (SPI, 16MB)
- Common Peripherals
- LEDs: 2, LED_R (red, PF12), LED_B (green, PF11)
- Keys, 4, KEY_UP (both wake-up function, PIN: PC5), KEY_DOWN (PIN: PC1), KEY_LEFT (PIN: PC0), KEY_RIGHT (PIN: PC4)
- Common interfaces: USB to serial port, SD card interface, USB SLAVE, USB HOST
- Debugging interface, standard ST-LINK
For more details about the board, please refer to the official document Introduction to STM32 Spark-1 Development Board.
Peripheral Support
The BSP currently supports the following peripherals:
| Onboard peripherals | Support | note |
|---|---|---|
| USB to Serial(COM1) | Support | |
| COM2 | Support | Conflicts with Ethernet and PWM. Use CubeMX to reconfigure the UART2 pin if you want to use this peripheral. |
| COM3 | Support | |
| On-chip peripherals | Supoort | Note |
| UART | Support | UART1/2/3 |
| SPI | Support | SPI1/2/3 |
| ADC | Support | |
| RTC | Support | Support external crystal and internal low-speed clock |
| WDT | Support |
Instructions for Use
The instructions for use are divided into two sections as follows:
-
Quick Start
This section is intended for newcomers to RT-Thread. Follow the simple steps to get the RT-Thread operating system running on the board and see the results.
-
Advanced Usage
This section is for developers who want to use more of the board's resources with the RT-Thread operating system. By using the ENV tool to configure the BSP, you can enable more on-board resources and realize more advanced functions.
Quick Start
This BSP provides developers with MDK5 and IAR projects and supports GCC development environment. The following is an example of how to get the system up and running using the MDK5 development environment.
Attention please!!!
Before the compilation work, please open ENV and execute the following command (this command is used to pull the necessary HAL library and CMSIS library, otherwise it cannot be compiled):
pkgs --update
Hardware Connection
Connect the board to the PC with a cable and turn on the power switch.
Compile and Download
Double click the project.uvprojx file to open the MDK5 project, compile and download the program to the development board.
The default configuration of the project is to use JLink to download the program. On the basis of connecting the development board via JLink, click the Download button to download the program to the development board.
Running Result
After successfully downloading the program, the system will run automatically. Observe the running effect of the LED on the development board, where the red LED is always on, the green LED will blink periodically.
Connect the corresponding serial port of the development board to PC, open the corresponding serial port (115200-8-1-N) in the terminal tool, and reset the device, you can see the output information of RT-Thread.
\ | /
- RT - Thread Operating System
/ | \ 5.0.1 build Jul 4 2023 07:49:10
2006 - 2022 Copyright by RT-Thread team
msh >
Advanced Usage
This BSP only enables GPIO and Serial1 by default. If you want to use more advanced functions such as SD card, Flash, etc., you need to configure the BSP by using ENV utility, the steps are as below:
-
Open the env utility under bsp.
-
Input
menuconfigcommand to configure the project, save and exit after configuration. -
Enter the
pkgs --updatecommand to update the package. -
Enter the
scons --target=mdk5/iarcommand to regenerate the project.
For a more detailed description of this chapter, please refer to [STM32 Series BSP Peripheral Driver Tutorial](... /docs/STM32 Series BSP Peripheral Driver Tutorial.md).
Notes
Not available at this time
Connection
Maintainer:
