总览
环境
Step1 QEMU
Step2 真机
Step3 对接 Luban
| 阶段 | 目标 | BSP_USING_AIC_D13X_HW |
|---|---|---|
| Step 1 | PC 验证能进 main |
关 |
| Step 2 | D13x 板子串口打日志 | 开 |
| Step 3 | 量产级时钟/链接/外设 | 开 + Luban-Lite |
Step 0 --- 环境
-
工具链:
riscv64-unknown-elf-gcc(你已在rtconfig.py配 CDK V3.4.0) -
打开 RT-Thread env,进入:
...\rt-thread-5.2.2\bsp\artinchip\d13x
Step 1 --- QEMU(先做这个)
menuconfig(env 里执行,或menuconfig.bat)- 开 UART0 ,控制台
uart0 - 不要勾 "Use on-chip drivers for real D13x silicon"
scons -c && scons -j12qemu.bat→ 应看到ArtInChip D13x: enter main OK
Step 2 --- 真机(D13x + 调试 UART)
硬件(你提供的原理图):
- UART0,
0x18710000 - PA0 = TX,PA1 = RX
- 115200 8N1,模块时钟 60MHz
软件:
menuconfig→ 勾选 D13x HW,核对基址/时钟/IRQ(见 README 表)scons -c && scons -j12- AiBurn 烧
rtthread.bin - 串口 115200 看日志
编译架构:
- 玄铁:
../../xuantie/libraries(启动 + E907,必须有) - 真机:
./libraries/aic_d13x(时钟 / pinmux / UART)
Step 3 --- 继续完善(可选)
从 Luban-Lite 对齐:
aic_pinmux.c--- 引脚复用aic_clk.c--- 完整 CMU(你本地已扩展到 ~212 行)rtconfig.py--- 换 D13x 真机.ldaic_soc.h--- 与封装/板型一致
踩坑对照(你遇到过的问题)
| 现象 | 处理 |
|---|---|
RTT_ROOT / Kconfig 找不到 |
menuconfig.bat 或 env;Kconfig 默认 ../../.. |
soc.h 找不到 |
xuantie_incs.py 加路径 |
.ld 找不到 |
勿把 ./libraries 当 xuantie;已改 rtconfig.py |
multiple definition |
SConstruct 分开 xuantie / aic_d13x |
__rt_rvstack 未定义 |
必须链 xuantie 的 startup.S |
完整说明、menuconfig 项和排查表在:
bsp/artinchip/d13x/README.md
真机驱动细节:libraries/aic_d13x/README.md
你当前若已 scons 通过,建议按 Step 1 → Step 2 各跑一遍确认。