分个运行测试用例基本测试通过,先备份测试用例的新修改

This commit is contained in:
2025-09-03 00:23:32 +08:00
parent cbd52792a5
commit c71f155de7
13 changed files with 141 additions and 116 deletions

View File

@@ -1,5 +1,31 @@
from pyutils import *
'''
看门狗0超时逻辑
1. 看门狗0从系统发送下行包时触发工作
2. 系统上行时,停止看门狗工作并复位看门狗计数器;若发生超时,报超时状态,复位继续工作,此时有上行包,不予响应;
3. 看门狗不使能,则对应的看门狗停止工作,也不会报相关的状态位与中断;
4. 写对应的看门狗状态寄存器,对应看门狗被复位;需要重新触发才能工作。
SM0/2/4/6与SM1/3/5/7超时逻辑
1. 看门狗从读写第一个字节被触发计时工作;第二次读写第一个字节,不影响看门狗工作;
2. 读写最后一个字节,停止看门狗工作并复位看门狗计数器;若发生超时,报超时状态,复位继续工作,此时系统读到最后一个字节,不予响应。
3. 看门狗不使能,则对应的看门狗停止工作,也不会报相关的状态位与中断;
4. 写对应的看门狗状态寄存器,对应看门狗被复位;需要重新触发才能工作。
看门狗17超时逻辑
1. 看门狗17从系统发送第一个下行包时触发工作
2. 系统发送第二个下行包时,停止看门狗工作并复位看门狗计数器;若发生超时,报超时状态,复位继续工作;
3. 看门狗不使能,则对应的看门狗停止工作,也不会报相关的状态位与中断;
4. 写对应的看门狗状态寄存器,对应看门狗被复位;需要重新触发才能工作。
复位继续工作指看门狗需要重新被触发开始计数直至超时或者复位。写看门狗状态无论超时没超时对应bit为1则对应看门狗被复位。
'''
def watchdog_test_sm_wr_timeout(tc_id, wd_id):
genPkt = GenPkt()
@@ -64,12 +90,15 @@ def watchdog_test_sm_wr_timeout(tc_id, wd_id):
+genIFRwDataCode(2, 0x074, False, 0x04)
+genIFRwDataCode(3, 0x074, False, 0x04)
+genIFRwDataCode(4, 0x074, False, 0x04)
+genMessageCode("--延时后检查看门狗寄存器")
+"#700000\n"
+genIFRwDataCode(1, 0x400, False, 0x04)
+genIFRwDataCode(1, 0x400, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(1, 0x400, False, 0x04)
+genMessageCode("--复位数据缓冲区")
+genIFRwDataCode(1, 0x300 + slave_sm_id * 4, True, 1, [0, ])
+"#800000\n"
+genMessageCode("--延时后检查看门狗寄存器")
+"#1200000\n"
+genIFRwDataCode(1, 0x400, False, 0x04)
+genTcEndFrameCode(gen_file_def))
@@ -121,7 +150,7 @@ def watchdog_test_sm_rd_timeout(tc_id, wd_id):
data[1] = 0x00
genPkt.addSubPkt(0x0, 0, 0x302 + slave_sm_id * 4, 0xe, 2, data)
data = [0,] * 0x10
data = list(range(0x10))
#subPkt参数索引、索引类型、地址、命令、长度、数据
sm_addr = slave_sm_id * 0x1000 + 0x800
@@ -139,12 +168,19 @@ def watchdog_test_sm_rd_timeout(tc_id, wd_id):
+genIFRwDataCode(2, 0x074, False, 0x04)
+genIFRwDataCode(3, 0x074, False, 0x04)
+genIFRwDataCode(4, 0x074, False, 0x04)
+genIFRwDataCode(1, slave_sm_id * 0x1000 + 0x800, False, 4)
+"#500000\n"
+genMessageCode("--读缓冲区")
+genIFRwDataCode(1, 0x800 + slave_sm_id * 0x1000, False, 8)
+genMessageCode("--延时后检查看门狗寄存器")
+"#1000000\n"
+genIFRwDataCode(1, 0x400, False, 0x04)
+genIFRwDataCode(1, 0x400, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(1, 0x400, False, 0x04)
+genMessageCode("--复位数据缓冲区")
+genIFRwDataCode(1, 0x300 + slave_sm_id * 4, True, 1, [0, ])
+genMessageCode("--延时后检查看门狗寄存器")
+"#500000\n"
+genIFRwDataCode(1, 0x400, False, 0x04)
+genTcEndFrameCode(gen_file_def))
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)