UTP自动化测试系统支持对SPI通信进行自动化测试,支持自动仿真各类SPI外设同被测控制板的通信。
支持对数据发送的大小端设置。
支持对四种传输模式的设置。
支持对时钟的频率设置。
接收发送时自动返回0xff无效数据。
宏控UTP自动化测试系统可根据用户的特定的需求选配相应的测试机器人和相应的硬件模块。
本文以USB接口的SPI硬件模块为例进行SPI通信测试的介绍。具体关系参考下图
安装包下载前请先注册并登录UTP测试平台,登录后才可以下载
点击链接下载页面,进入安装包下载页面,选配测试工具,并提交下载
下载完成,解压,双击文件夹中的“AntbotBoxRTC.exe”启动测试工具
双击“AntbotBoxRTC.exe”启动测试工具
启动软件后出现如下界面,在此界面输入用户名密码进行登录:
登录完成,弹出测试机器人盒子界面:
右键点击“SPI主机仿真测试机器人”下方的SPIMasterAnbot节点,在弹出的菜单中点击“添加Antbot”:
弹出基本信息设置界面,根据需要修改测试机器人名称,然后点击“确定”按钮:
进入更多信息设置界面,下面是对此界面的介绍:
USB端口:为机器中连接的I2C测试硬件连接顺序,如有多个硬件连接,第一个为0,第二个为1,依次类推;
SPI速率:根据实际情况进行SPI速率选择;
数据格式:根据实际协议传输规则设置帧格式为MSB还是LSB;
采样模式:包含4种采样模式(0,1,2,3)
采样模式-0(CPOL=0,CPHA=0)
采样模式-1(CPOL=0,CPHA=1)
采样模式-2(CPOL=1,CPHA=0)
采样模式-3(CPOL=1,CPHA=1)
配置完成后点击“OK”按钮:
新创建的测试机器人显示如下图:
如需要对某个已创建的测试机器人的配置信息进行调整,可以先在“测试机器人列表”中选中该测试机器人,
然后在右侧的页面进行调整,可以修改测试机器人名称,修改配置信息。
打开网页客户端,点击“登录”按钮:
输入用户名密码进行登录:
然后点击“立即登录”,即可进入测试工作区::
导入协议:点击协议管理或者相同图标,进入协议管理界面
点击导入按钮选择“SPI通信协议.json”打开,示例协议在下载的UtpEmbTestSuite内的示例协议中,然后点击“确定”按钮,
新建项目:点击“新建项目”按钮创建测试项目:
填写项目基本信息,然后点击“提交”按钮:
项目创建成功:
点击“进入项目”按钮,进入测试项目:
点击“用例管理”页面右侧的“测试机器人管理”,进行测试机器人配置:
点击测试机器人管理中的“+”,新建测试机器人:
先选择“嵌入式测试”,再选择“SPI主机仿真测试”类型的测试机器人,再填写测试机器人名称,进行协议文件选择 协议类型选择genericBusFrame,协议文件选择“SPI通信协议.json”,完成测试机器人的配置:
机器人配置完成:
然后,再次点击“测试机器人管理”,收起该页面:
剩下步骤参考如下
点击此链接查看如何进行测试用例创建与执行查看
此链接为总线通用快速入门操作,仅供参考
SPI通信测试属于总线通信测试的一种,所以对模拟从机的测试机器人SPISlaveAntbot所包含的命令类型与其他总线通信测试所包含的命令基本相同
对于SPI通信测试的命令可以参考文档《总线测试协议及测试命令介绍.pdf》
UTP系统支持直接发送十六进制数,也支持通过协议消息自动构建数据进行发送。
示例场景1:
通过SPI主机向SPI从机发送协议构建数据
示例命令:
示例场景2:
通过SPI主机向SPI从机发送十六进制数
示例命令:
UTP系统支持向被测单元单元发送周期性数据。
示例场景:
主机向从机按一定频率发送信号进行识别
示例命令:
接收被测系统发出的SPI数据包并进行检查。
示例场景:
接收并检查数据帧,检查数据包中的字段值是否满足条件,检查数据包是否满足预设条件,检查数据包的时序和接收到的时间等。
示例命令:检查接收到的消息的字段值是否同预期一致
示例命令:检查被测系统是否在规定时间内发出预期消息
可以通过SPI从机通信测试机器人对被测系统-被测单元发出SPI数据包进行自动回复。。
示例场景:
被测系统发出消息A,SPI测试机器人接收到A后自动回复消息B。
下图中先定义了"SPI消息2"的ID为"messagelD紧接着将"messagell配置为"SPI消息1“的回复消息
示例命令:自动回复
对于SPI通信测试的命令可以参考文档《总线测试协议及测试命令介绍.pdf》
下面介绍SPI主机仿真测试专用命令
UTP总线测试系统支持对端口的操作。
示例场景:
打开或者关闭端口
示例命令:打开或者关闭端口
startFlag为打开端口表记,作为SPI主机时startFlag只能设置为0
设置SPI主机每次接收数据的长度。
示例场景:
主机需要从从机接收一次长度固定为4的信息
示例命令:
设置SPI主机每次接收数据的长度-固定消息类型。
示例场景:
主机需要从从机接收一次固定类型(M2)的信息。
示例命令: