有关 ArceOS 更多详细信息,请参阅 readme.org.md
当前实现了下面的例程,具体代码实现可以查看 examples 目录下的文件
相关例子的介绍可以查看具体的 examples 文件夹对应的 README.md 文件
驱动需要遵循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 例程代码
usb start fatload usb 0 0x90000000 fan_aarch64-phytium-pi.bin
# 配置网络
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