rt-thread-official/bsp/hpmicro/hpm6800evk
Fan Yang 96ba787e25
Bugfix/fix weak handle trap in riscv common crash rv64 trap handling (#9189)
* [bsp][hpmicro] add weak handle_trap implementation

- added weak handle_trap implementation

Signed-off-by: Fan YANG <fan.yang@hpmicro.com>

* [libcpu][risc-v][common] remove weak handle_trap function

- removed weak handle_trap function from trap_common.c

Signed-off-by: Fan YANG <fan.yang@hpmicro.com>

---------

Signed-off-by: Fan YANG <fan.yang@hpmicro.com>
2024-07-15 17:51:32 +08:00
..
applications [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
board [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
figures [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
startup Bugfix/fix weak handle trap in riscv common crash rv64 trap handling (#9189) 2024-07-15 17:51:32 +08:00
.config [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
Kconfig bsp中option env语句替换为新语句,并同步更新了source "$xxx"语句 2024-06-20 14:40:42 +08:00
README.md [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
README_zh.md [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
SConscript [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
SConstruct [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
rtconfig.h [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
rtconfig.py [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00
rtconfig_preinc.h [bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update hpm_sdk 2024-06-03 18:05:20 +08:00

README.md

HPMicro HPM6800EVK BSP(Board Support Package) Introduction

中文页 |

Introduction

This document provides brief introduction of the BSP (board support package) for the HPM6800EVK development board.

The document consists of the following parts:

  • HPM6800EVK Board Resources Introduction
  • Quickly Getting Started
  • Refreences

By reading the Quickly Get Started section developers can quickly get their hands on this BSP and run RT-Thread on the board. More advanced features will be introduced in the Advanced Features section to help developers take advantage of RT-Thread to drive more on-board resources.

Board Resources Introduction

HPM6800EVK is a development board based on the RISC-V core launched by HPMicro, with rich on-board resources and on-chip resources for Display, Audio motor controletc. board

Peripheral Condition

Each peripheral supporting condition for this BSP is as follows:

On-board Peripherals Support Note
USB
QSPI Flash
Ethernet
GPIO
SPI
I2C
SDIO
RTC
PWM
On-Board Debugger ft2232

Execution Instruction

Quickly Getting Started

The BSP support being build via the 'scons' command, below is the steps of compiling the example via the 'scons' command

Parpare Environment

  • Step 1: Prepare RT-Thread ENV
  • Step 2: Prepare toolcahin
    • Download the package and extract it into a specified directory, for example: C:\DevTools\riscv32-gnu-toolchain
  • Step 3: Set environment variable RTT_RISCV_TOOLCHAIN to <TOOLCHAIN_DIR>\bin
    • For example: C:\DevTools\riscv32-gnu-toolchain\bin
  • Step 4: Prepare OpenOCD
    • Download and extract it to specified directory, for example: C:\DevTools\openocd-hpmicro
    • Add OpenOCD environment variable OPENOCD_HPMICRO to <OPENOCD_HPMICRO_DIR>\bin
      • For example: C:\DevTools\openocd-hpmicro\bin

Configure and Build project

Open RT-Thread ENV command-line, and change directory to this BSP directory, then users can:

  • Configure the project via menuconfig in RT-Thread ENV
  • Build the project using scons -jN, N equals to the number of CPU cores
  • Clean the project using scons -c

Hardware Connection

  • Switch BOOT pin to 2'b00
  • Connect the PWR_DEBUG port to PC via TYPE-C cable

Dowload / Debug

  • Users can download the project via the below command:

    %OPENOCD_HPMICRO%\openocd.exe -f boards\debug_scripts\probes\ft2232.cfg -f boards\debug_scripts\soc\hpm6880.cfg -f boards\debug_scripts\boards\hpm6800evk.cfg -c "init; halt; flash write_image erase rtthread.elf; reset; shutdown"
    
  • Users can debug the project via the below command:

    • Connect debugger via OpenOCD:
%OPENOCD_HPMICRO%\openocd.exe -f boards\debug_scripts\probes\ft2232.cfg -f boards\debug_scripts\soc\hpm6880.cfg -f boards\debug_scripts\boards\hpm6800evk.cfg
  • Start Debugger via GDB:
%RTT_EXEC_PATH%\riscv32-unknown-elf-gdb.exe rtthread.elf
  • In the gdb shell, type the following commands:
load
c

Running Results

Once the project is successfully downloaded, the system runs automatically. The LED on the board will flash periodically.

Connect the serial port of the board to the PC, communicate with it via a serial terminal tool(115200-8-1-N). Reset the board and the startup information of RT-Thread will be observed:

 \ | /
- RT -     Thread Operating System
 / | \     5.0.1 build Aug 16 2023 18:18:18
 2006 - 2023 Copyright by RT-Thread team

References