* [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
EtherKit Development Board BSP Documentation
English | Chinese
Introduction
This document provides the BSP (Board Support Package) documentation for the RT-Thread EtherKit development board. By following the Quick Start section, developers can quickly get started with this BSP and run RT-Thread on the development board.
The main contents are as follows:
- Introduction to the Development Board
- BSP Quick Start Guide
Introduction to the Development Board
The EtherKit development board is based on the Renesas RZ/N2L and is designed to facilitate embedded system application development by offering flexible software package and IDE configurations.
The front view of the development board is shown below:
Key onboard resources include:
- MPU: R9A07G084M04GBG, maximum operating frequency of 400MHz, Arm Cortex®-R52 core, 128KB tightly coupled memory (with ECC), 1.5MB internal RAM (with ECC)
- Debug Interface: Onboard J-Link interface
- Expansion Interface: One PMOD connector
More detailed information and tools
Peripheral Support
This BSP currently supports the following peripherals:
Here is the translated text in English, keeping the markdown format:
| EtherCAT Solution | Support Status | EtherCAT Solution | Support Status |
|---|---|---|---|
| EtherCAT_IO | Supported | EtherCAT_FOE | Supported |
| EtherCAT_EOE | Supported | EtherCAT_COE | Supported |
| PROFINET Solution | Support Status | Ethernet/IP Solution | Support Status |
| P-Net (Open source evaluation package supporting ProfiNET slave protocol stack) | Supported | EIP | Supported |
| On-chip Peripherals | Support Status | Components | Support Status |
| UART | Supported | LWIP | Supported |
| GPIO | Supported | TCP/UDP | Supported |
| HWIMER | Supported | MQTT | Supported |
| IIC | Supported | TFTP | Supported |
| WDT | Supported | Modbus Master/Slave Protocol | Supported |
| RTC | Supported | ||
| ADC | Supported | ||
| DAC | Supported | ||
| SPI | Supported |
Usage Instructions
Usage instructions are divided into two sections:
-
Quick Start
This section is designed for beginners who are new to RT-Thread. By following simple steps, users can run the RT-Thread OS on the development board and observe the experimental results.
-
Advanced Usage
This section is for developers who need to use more of the development board's resources within the RT-Thread OS. By configuring the BSP using the ENV tool, additional onboard resources and advanced features can be enabled.
Quick Start
This BSP currently provides GCC/IAR project support. Below is a guide using the IAR Embedded Workbench for Arm development environment to run the system.
Hardware Connection
Connect the development board to the PC via a USB cable. Use the J-Link interface to download and debug the program.
Compilation and Download
- Navigate to the
bspdirectory and use the commandscons --target=iarto generate the IAR project. - Compile: Double-click the
project.ewwfile to open the IAR project and compile the program. - Debug: In the IAR navigation bar, click
Project -> Download and Debugto download and start debugging.
Viewing the Run Results
After successfully downloading the program, the system will automatically run and print system information.
Connect the corresponding serial port of the development board to the PC. Open the relevant serial port (115200-8-1-N) in the terminal tool. After resetting the device, you can view the RT-Thread output. Enter the help command to see the list of supported system commands.
\ | /
- RT - Thread Operating System
/ | \ 5.1.0 build Mar 14 2024 18:26:01
2006 - 2024 Copyright by RT-Thread team
Hello RT-Thread!
==================================================
This is an IAR project in RAM execution mode!
==================================================
msh > help
RT-Thread shell commands:
clear - clear the terminal screen
version - show RT-Thread version information
list - list objects
backtrace - print backtrace of a thread
help - RT-Thread shell help
ps - List threads in the system
free - Show the memory usage in the system
pin - pin [option]
msh >
Application Entry Function
The entry function for the application layer is located in src\hal_entry.c within void hal_entry(void). User source files can be placed directly in the src directory.
void hal_entry(void)
{
rt_kprintf("\nHello RT-Thread!\n");
rt_kprintf("==================================================\n");
rt_kprintf("This is an IAR project in RAM execution mode!\n");
rt_kprintf("==================================================\n");
while (1)
{
rt_pin_write(LED_PIN, PIN_HIGH);
rt_thread_mdelay(500);
rt_pin_write(LED_PIN, PIN_LOW);
rt_thread_mdelay(500);
}
}
Advanced Usage
Resources and Documentation
- Development Board Official Homepage
- Development Board Datasheet
- Development Board Hardware Manual
- EtherKit_User_Manual
- RZ/N2L MCU Quick Start Guide
- RZ/N2L Easy Download Guide
- Renesas RZ/N2L Group
FSP Configuration
To modify Renesas BSP peripheral configurations or add new peripheral ports, the Renesas FSP configuration tool is required. Please follow the steps outlined below for configuration. For any questions regarding the configuration, please visit the RT-Thread Community Forum.
- Download the Flexible Software Package (FSP) | Renesas, use FSP version 2.0.0.
- To add the "EtherKit Board Support Package" to FSP, refer to the document How to Import a BSP.
- For guidance on configuring peripheral drivers using FSP, refer to the document: Configuring Peripheral Drivers Using FSP for RA Series.
ENV Configuration
- To learn how to use the ENV tool, refer to the RT-Thread ENV Tool User Manual.
By default, this BSP only enables the UART0 functionality. To use more advanced features such as components, software packages, and more, the ENV tool must be used for configuration.
The steps are as follows:
- Open the ENV tool in the
bspdirectory. - Use the
menuconfigcommand to configure the project. Save and exit once the configuration is complete. - Run the
pkgs --updatecommand to update the software packages. - Run the
scons --target=iarcommand to regenerate the project.
Contact Information
If you have any thoughts or suggestions during usage, please feel free to contact us via the RT-Thread Community Forum.
Contribute Code
If you're interested in EtherKit and have some exciting projects you'd like to share, we welcome code contributions. Please refer to How to Contribute to RT-Thread Code.
