題描述:客户在设计硬件平台的时候没有预留 SD 卡座 ,平台需要从串口来启动 ,下面以 EVM2 平台实现串口从 U-Boot 启动的过程
Software :BSP 15.0
Version:Vision V2.0
Silicon:S32V234
Details:
将 U-Boot.bin 通过 UART 的方式下载到RAM 中,然后 A53 从特定地址开始执行程序 ,步骤是 :(Ping -> Connect -> Load -> Run)Ping : 确认主机和板子连接Connect:将 Bootloader 加载到 M4 的 TCMLoad: 下载程序到内存Run: 从特定地址执行程序
一 . 硬件平台环境搭建 :设置 S32V从串口启动需把BOOT_MODE0 和BOOT_MODE1 设置为低电平 (对应的 EVM2 的座子为 J40 和 J42)
以上图片来自于 : S32V234RM_Rev2_2 Page: 981
根据
威廉希尔官方网站
图 S32V234-EVB2-SPF-29288_REV_B2.pdf ,J40 和 J42 需 2 和 3 连接
具体的连接方式请参考下面的图片 :
二 . 软件平台环境搭建 :
1. 运行上位机的应用程序 s32vSerialBoot.exe 需要安装 .NET 的开发工具 ,工具包名为:dotNetFx40_Full_x86_x6.exe (由于工具包比较大 ,请自行下载安装)
2. 下面的文件是上位机的应用程序 :
https://edit.wpgdadawant.com/uploads/news_file/blog/2019/189/tinymce/kick_uboot_evb2.0.zip
三 . 具体操作步骤 :
1,把 EVB2 的 UART0 连接到 PC 端
2,把 SD 卡从 EVB2 上移除 ,然后重启 EVM2
3,通过电脑的设备管理器查看相应的 COM 口
4,修改文件夹kick_uboot_evb2.0 里面文件KICK_UBOOT.bat 的 COMX 设置
5,双击KICK_UBOOT.bat ,等待程序下载 ,将看到以下信息
6,通过串口工具查看 U-boot 启动信息
通过串口工具查看 U-boot 启动信息需要注意以下两点 :
1 s32vSerialBoot.exe 的应用程序在运行的时候 ,串口工具不能连接
2 KICK_UBOOT.bat 批处理文件运行完后需立即打开串口工具 ,由于U-boot 有一个BOOTDELAY 的时间为 3S ,延时打开串口工具将看不到结果 ,建议把 s32v.h BOOTDELAY 的时间做以下修改 :
#define CONFIG_BOOTDELAY 3
#define CONFIG_BOOTDELAY 10