# hieuler_mcu_sample **Repository Path**: HiEuler/hieuler_mcu_sample ## Basic Information - **Project Name**: hieuler_mcu_sample - **Description**: RISC-V MCU相关例程 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-01-18 - **Last Updated**: 2024-01-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # hieuler_mcu_sample #### 介绍 RISC-V MCU相关例程.可通过源码构建出ARM侧的驱动和工具以及RISC-V侧的例程 #### 如何编译 1. 必要的配置参数 ```Makefile CROSS_COMPILE ?= aarch64-openeuler-linux- OUTPUT_DIR ?= $(CURDIR)/output KER_SRC ?= ``` - `CROSS_COMPILE` ARM侧交叉编译工具链 - `OUTPUT_DIR` 文件的输出目录,默认为当前目录下的output - `KER_SRC` 由于需要编译ipcm驱动,需要指定Linux内核源码目录 可以直接修改仓库根目录下的Makefile修改这些参数,也可以在编译时指定。 RISC-V侧工具链默认使用riscv32-linux-musl-,下载链接:https://www.ebaina.com/down/240000038480 2. 编译 在仓库根目录直接执行make命令即可,默认编译所有组件 ```shell make ``` 3. 输出文件 ```txt . ├── ipcm │   ├── node_0 # ARM侧驱动与工具 │   │   ├── ipcm.ko # ipcm驱动 │   │   ├── libsharefs.a │   │   ├── libsharefs.so │   │   ├── sharefs │   │   ├── virt-tty # LiteOS虚拟终端工具 │   │   └── virt-tty.ko # 虚拟终端驱动 │   └── node_1 # RISC-V侧静态库,已编入LiteOS │   ├── libipcm.a │   ├── libsharefs.a │   └── libvirt-tty.a ├── LiteOS.bin # LiteOS系统固件 └── load_riscv # LiteOS.bin加载工具 ``` #### 使用说明 1. 加载驱动 ```shell insmod ipcm.ko insmod virt-tty.ko ``` 2. 启动RISC-V核 ```shell load_riscv 0x44000000 LiteOS.bin ``` 3. 连接到RISC-V核 ```shell virt-tty riscv ``` 连接后可看到以下输出,Ctrl+C退出 ```txt cpu 0 entering scheduler Mount procfs finished. ************************************************************ _ipcm vdd init ... ##message recv thread run ipcm detecting thread running! sharefs init ... virt tty init ... uart init ... Huawei LiteOS # spi bus init ... i2c bus init ... gpio init ... Date:Jan 21 2024. Time:09:12:05. ************************************************************ Huawei LiteOS # ```