一、在 Ubuntu 系统中烧写 BSP 到 SD 卡
1. 确认 SD 卡设备名
bash
lsblk
-
查看 SD 卡对应的设备名,通常是
sdb或sdc -
注意: 确认设备名无误,避免写错导致硬盘数据丢失
2. 烧写镜像(修改对应的设备名)
bash
sudo dd if=qnx-s32g399ardb3-bsp41.0.img of=/dev/sdb bs=4M status=progress conv=fsync
-
if=:输入文件(BSP 镜像) -
of=:输出设备(SD 卡,如/dev/sdb,不要带分区号) -
bs=4M:块大小 4MB -
status=progress:显示烧写进度 -
conv=fsync:确保数据完全写入
二、启动硬件并配置 U-Boot 环境变量
1. 插入 SD 卡到硬件
2. 通过串口登录
- 波特率:115200
3. 进入 U-Boot 命令行(按回车键中断启动)
4. 设置 U-Boot 环境变量
bash
setenv bootqnx 'run loadfdt; setenv image ifs-s32g399a-rdb3.ui ; run loadimage ; bootm ${loadaddr} - ${fdt_addr}'
setenv bootcmd 'run bootqnx'
saveenv
-
输出示例:
text
Saving Environment to MMC... Writing to MMC(0)... OK
5. 重启板卡
bash
reset
- 重启后会看到类似输出:
resetting ...
NOTICE: Reset status: Destructive Reset (RUN)
NOTICE: BL2: v2.10.0 (release):bsp41.0_rc7-2.10
NOTICE: BL2: Built : 09:32:10, May 27 2024
NOTICE: BL2: Booting BL31
三、进入 QNX 系统后的网络配置
1. 设置 IP 地址
-
网卡接口名:
dwceqos0 -
示例 IP:
192.168.56.60 -
子网掩码:
255.255.255.0
bash
ifconfig dwceqos0 inet 192.168.56.60 netmask 255.255.255.0 up
2. 挂载 NFS 共享目录
前提: 需要先在主机端按照文档配置好网桥
bash
fs-nfs3 -v 192.168.56.2:/var/etas/vrte/export/60 /opt
-
fs-nfs3:NFS v3 挂载命令 -
-v:详细模式 -
192.168.56.2:NFS 服务器 IP -
/var/etas/vrte/export/60:服务器共享目录 -
/opt:本地挂载点
四、笔记要点总结
| 步骤 | 关键命令 | 说明 |
|---|---|---|
| 查看 SD 卡 | lsblk |
确认是 sdb 还是 sdc |
| 烧写镜像 | dd if=... of=/dev/sdb ... |
注意 of 是设备,不是分区 |
| 串口登录 | 波特率 115200 | 使用 minicom / putty 等 |
| 设置 U-Boot | setenv bootcmd ... |
配置自动启动 QNX |
| QNX 配 IP | ifconfig dwceqos0 inet ... |
配置网络 |
| 挂载 NFS | fs-nfs3 ... /opt |
需要先建好网桥 |