一、 前言
芯驰 X9H 芯片,搭载多个操作系统协同运行,系统实现了仪表、空调、中控、副驾多媒体的四屏驱动控制,在人车智能交互上可以通过显示屏、屏幕触摸控制、语音控制、物理按键控制、车身协议的完美融合,使汽车更智能。让车主及乘客有更好的体验乐趣。在开发过程中 SPI 接口多数情况会使用到,调试时往往先使用测试程序进行先期测试,本文介绍如何使用 SPI 测试程序。
二、 软件环境搭建
1. 软件基线下载
本文使用 PTG4.3 版本基线,使用 X9M_MS_Linux_Serdes_3G_emmc_2133.json 配置文件。
- 配置 key
- 下载 buildsystem 文件夹
- source lunch_sd.sh -c X9M_MS_Linux_Serdes_3G_emmc_2133.json -b X9_3.0.0_PTG4.3 -u customer_c
- make sync_all 同步代码
- make build_all 编译
- make genpac 生成 pac 包
2. 软件烧录
使用提供的 SdToolsBox 工具进行下载,验证基础功能完好。
三、 调试流程
1. 配置 PIN 脚
使用 SDToolBox 工具配置引脚复用功能使用 SPI5、SPI6、SPI8
2. 修改 DTS 文件,开启节点
打开 SPI 节点,此处需要注意在引脚配置时使用的是 SPI5、SPI6、SPI8,对应到 DTS 中是 SPI4、SPI5、SPI7,修改如下
3. 修改 DTS 文件,开启 SPI 时钟
打开 SPI CLK 时钟,如下图
4. 修改 defconfig 文件
修改对应的 x9_ref_linux_defconfig 文件
四、 测试验证
1. 编译
使用 make build_all 命令整体编译,然后烧录。
2. 测试
在 /sys/bus/spi/devices/ 路径下有 spi0.0 spi1.0 spi2.0 节点
3. 波形测量
使用命令 echo 16 > spi_test_rw 测试,同时使用逻辑分析仪测试引脚波形。
五、 总结
经过以上几步,可以验证 SPI 接口输出是否正常,后续继续开发应用程序。