logo
0
0
Login
``` docs(readme): 更新飞腾派启动说明

ArceOS && 飞腾派

有关 ArceOS 更多详细信息,请参阅 readme.org.md

例程

当前实现了下面的例程,具体代码实现可以查看 examples 目录下的文件

相关例子的介绍可以查看具体的 examples 文件夹对应的 README.md 文件

  • canfd - 飞腾派 CAN FD 数据收发
  • cem5826m11 - 飞腾派 UART CEM5826M11 传感器
  • fan - 飞腾派 PWM 风扇控制

驱动实现

驱动需要遵循ArceOS HAL (Hardware Abstraction Layer) 规范,提供统一的接口供上层应用程序调用。

驱动代码结构

驱动代码位于 modules/axhal/xxx 目录下,包含以下关键文件:

  • mod.rs - 模块定义文件,导出驱动接口
  • fcan.rs - FCAN驱动核心实现,包括寄存器操作、数据收发等
  • can.rs - CAN协议相关常量和数据结构定义
  • readme.md - 驱动说明文件(可选)

在 axhal 的 lib.rs 文件中引入实现的驱动模块:

#[cfg(feature = "myplat")] pub mod xxx;

如果驱动有新增的外部依赖需要在 modules/axhal/Cargo.toml 文件中添加对应的依赖

具体可参考 fcan 下的 fcan 驱动代码

驱动使用

引入驱动模块:

use axhal::xxx;

具体可参考 canfd 下的 canfd 例程代码

镜像上传及运行

U 盘

  • 将镜像文件拷贝到 U 盘
  • 将 U 盘插入飞腾派
  • 启动 飞腾派 进入 Uboot 模式,运行命令:
usb start fatload usb 0 0x90000000 fan_aarch64-phytium-pi.bin

tftp

  • 将镜像文件拷贝到 tftp 服务器
  • 启动飞腾派进入 Uboot 模式,运行命令:
# 配置网络 echo $ipaddr setenv ipaddr 192.168.1.20 setenv serverip 192.168.1.3 setenv gatewayip 192.168.1.1 # 保存配置 saveenv # 从 tftp 服务器下载镜像文件 # tftpboot 0x90000000 xxx_aarch64-phytium-pi.bin tftpboot 0x90000000 fan_aarch64-phytium-pi.bin # 启动程序 dcache flush go 0x90000000