增加新的测试用例;错误恢复,增加对主站的对应的SM复位操作

This commit is contained in:
2025-09-10 23:42:04 +08:00
parent f700b11e84
commit 139035e79e
3 changed files with 479 additions and 1 deletions

View File

@@ -378,9 +378,10 @@ def gen_tc_runlist():
f.close()
def genTcStartFrameCode(tcname, des):
def genTcStartFrameCode(tcname, des, vardef="\n"):
upper_name = tcname.upper()
code_str = f'''\tbegin:{upper_name}_TESTCASE\n'''\
+vardef \
+f'''\t\t`BEGIN_TESTCASE("{__pre_gen_log_path}/{tcname}_result.log");\n'''\
+'''\t\t_t_start = $realtime;\n'''\
+f'''\t\t$fdisplay(spidata_file,"\\n\\n测试用例{upper_name}");\n'''

View File

@@ -2605,3 +2605,460 @@ def tc30():
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
return gen_file_def
def tc31():
genPkt = GenPkt()
gen_file_def = "base_tc31"
sm_idx = 0
tc_des = "测试主站之间的同步利用latch信号进行主站间的同步。\\n"
genPkt.clean()
genPkt.setPktType(1)
#subPkt参数索引、索引类型、地址、命令、长度、数据
#genPkt.addSubPkt(0x0, 0, 0x0, 0xc, 12, b'\0'*12)
genPkt.addBeforeExc(genTcStartFrameCode(gen_file_def, tc_des, "reg [63:0] latch_t1;\n reg [63:0] latch_t2;\n")
+genMessageCode("--清除中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--复位4号设备")
+genIFRwDataCode(4, 0x40, True, 4, [0x01, 0x00, 0x66, 0x79])
+"#5000"
+genIFRwDataCode(4, 0x09, True, 1, [0, ], False, iface=1)
+using_proper_code(4)
+genIFRwDataCode(4, 0x0, True, 1, [1, ])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
#+genEnableInsertTimeCode(0xa)
)
sm_idx = 0
genPkt.addAfterExc(genWriteTransLenCode(gen_file_def, sm_idx)
+genWriteTransPktCode(gen_file_def, sm_idx)
+genTrgTransPktCode(gen_file_def, sm_idx)
+genReadAckPktCode(gen_file_def, sm_idx)
+genMessageCode("--清除中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
#-------------------------------------------------------------------------
genPkt.clean()
genPkt.setPktType(0)
gen_file_def_ap = gen_file_def + "_rw01"
genPkt.addBeforeExc(genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
+genMessageCode("--设置事件")
+genIFRwDataCode(0, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genIFRwDataCode(1, 0x500, True, 4, [0x0F, 0x00, 0x03, 0x00] )
+genIFRwDataCode(2, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genIFRwDataCode(3, 0x500, True, 4, [0x0F, 0x00, 0x03, 0x00] )
+genIFRwDataCode(4, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
+genIFRwDataCode(0, 0x148, True, 8, [0,] * 8)
+genIFRwDataCode(4, 0x148, True, 8, [0,] * 8)
)
genPkt.addAfterExc( "latch0 <= 1;\n"
+"latch1 <= 1;\n"
+"#5000\n"
+"latch0 <= 0;\n"
+"latch1 <= 0;\n"
+"#5000\n"
+"latch0 <= 1;\n"
+"latch1 <= 1;\n"
+"#5000\n"
+"latch0 <= 0;\n"
+"latch1 <= 0;\n"
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
+genIFRwDataCode(2, 0x74, False, 4)
+genIFRwDataCode(3, 0x74, False, 4)
+genIFRwDataCode(4, 0x74, False, 4)
+genMessageCode("--清除中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
+genIFRwDataCode(2, 0x74, False, 4)
+genIFRwDataCode(3, 0x74, False, 4)
+genIFRwDataCode(4, 0x74, False, 4)
+genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
+ '''spi_trans( (16'h0518), (`SPI_READ), (8), (`IF_IDX(0)));\n'''
+ '''_temp_time = rxBuf[3] + (rxBuf[4] << 8) + (rxBuf[5] << 16) + (rxBuf[6] << 24) + (rxBuf[7] << 32) + (rxBuf[8] << 40) + (rxBuf[9] << 48) + (rxBuf[10] << 56);\n'''
+ '''latch_t1 = _temp_time;\n\n'''
+ '''spi_trans( (16'h0518), (`SPI_READ), (8), (`IF_IDX(4)));\n'''
+ '''_temp_time = rxBuf[3] + (rxBuf[4] << 8) + (rxBuf[5] << 16) + (rxBuf[6] << 24) + (rxBuf[7] << 32) + (rxBuf[8] << 40) + (rxBuf[9] << 48) + (rxBuf[10] << 56);\n'''
+ '''latch_t2 = _temp_time;\n'''
+ '''_temp_time = latch_t1 - latch_t2;\n\n'''
+ '''txBuf[3] = _temp_time[7:0];\n'''
+ '''txBuf[4] = _temp_time[15:8];\n'''
+ '''txBuf[5] = _temp_time[23:16];\n'''
+ '''txBuf[6] = _temp_time[31:24];\n'''
+ '''txBuf[7] = _temp_time[39:32];\n'''
+ '''txBuf[8] = _temp_time[47:40];\n'''
+ '''txBuf[9] = _temp_time[55:48];\n'''
+ '''txBuf[10] = _temp_time[63:56];\n'''
+ '''spi_trans( (16'h0148), (`SPI_WRITE), (8), (`IF_IDX(4)));\n'''
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
#-------------------------------------------------------------------------
genPkt.clean()
genPkt.setPktType(0)
gen_file_def_ap = gen_file_def + "_rw02"
genPkt.addBeforeExc(genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
+genMessageCode("--设置事件")
+genIFRwDataCode(0, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genIFRwDataCode(1, 0x500, True, 4, [0x0F, 0x00, 0x03, 0x00] )
+genIFRwDataCode(2, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genIFRwDataCode(3, 0x500, True, 4, [0x0F, 0x00, 0x03, 0x00] )
+genIFRwDataCode(4, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
)
genPkt.addAfterExc( "latch0 <= 1;\n"
+"latch1 <= 1;\n"
+"#5000\n"
+"latch0 <= 0;\n"
+"latch1 <= 0;\n"
+"#5000\n"
+"latch0 <= 1;\n"
+"latch1 <= 1;\n"
+"#5000\n"
+"latch0 <= 0;\n"
+"latch1 <= 0;\n"
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
+genIFRwDataCode(2, 0x74, False, 4)
+genIFRwDataCode(3, 0x74, False, 4)
+genIFRwDataCode(4, 0x74, False, 4)
+genMessageCode("--清除中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
+genIFRwDataCode(2, 0x74, False, 4)
+genIFRwDataCode(3, 0x74, False, 4)
+genIFRwDataCode(4, 0x74, False, 4)
+genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
#--------------------------------------------------------------------
genPkt.clean()
genPkt.setPktType(0)
gen_file_def_ap = gen_file_def + "_rw03"
genPkt.addBeforeExc(genMessageCode("--复位0号设备")
+"#100000\n"
+genIFRwDataCode(0, 0x40, True, 4, [0x01, 0x00, 0x66, 0x79])
+"#5000\n"
+genIFRwDataCode(0, 0x09, True, 1, [0, ], False, iface=1)
+using_proper_code(0)
+genIFRwDataCode(0, 0x0, True, 1, [1, ])
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(0, 0x7c, True, 2, [0x10, 0x80])
+genIFRwDataCode(0, 0x70, True, 4, [0x03, 0x00, 0x00, 0xf0])
+genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
+genMessageCode("--设置事件")
+genIFRwDataCode(0, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genIFRwDataCode(1, 0x500, True, 4, [0x0F, 0x00, 0x03, 0x00] )
+genIFRwDataCode(2, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genIFRwDataCode(3, 0x500, True, 4, [0x0F, 0x00, 0x03, 0x00] )
+genIFRwDataCode(4, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
+genIFRwDataCode(0, 0x148, True, 8, [0,] * 8)
+genIFRwDataCode(4, 0x148, True, 8, [0,] * 8)
)
genPkt.addAfterExc( "latch0 <= 1;\n"
+"latch1 <= 1;\n"
+"#5000\n"
+"latch0 <= 0;\n"
+"latch1 <= 0;\n"
+"#5000\n"
+"latch0 <= 1;\n"
+"latch1 <= 1;\n"
+"#5000\n"
+"latch0 <= 0;\n"
+"latch1 <= 0;\n"
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
+genIFRwDataCode(2, 0x74, False, 4)
+genIFRwDataCode(3, 0x74, False, 4)
+genIFRwDataCode(4, 0x74, False, 4)
+genMessageCode("--清除中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
+genIFRwDataCode(2, 0x74, False, 4)
+genIFRwDataCode(3, 0x74, False, 4)
+genIFRwDataCode(4, 0x74, False, 4)
+genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
+ '''spi_trans( (16'h0518), (`SPI_READ), (8), (`IF_IDX(0)));\n'''
+ '''_temp_time = rxBuf[3] + (rxBuf[4] << 8) + (rxBuf[5] << 16) + (rxBuf[6] << 24) + (rxBuf[7] << 32) + (rxBuf[8] << 40) + (rxBuf[9] << 48) + (rxBuf[10] << 56);\n'''
+ '''latch_t1 = _temp_time;\n\n'''
+ '''spi_trans( (16'h0518), (`SPI_READ), (8), (`IF_IDX(4)));\n'''
+ '''_temp_time = rxBuf[3] + (rxBuf[4] << 8) + (rxBuf[5] << 16) + (rxBuf[6] << 24) + (rxBuf[7] << 32) + (rxBuf[8] << 40) + (rxBuf[9] << 48) + (rxBuf[10] << 56);\n'''
+ '''latch_t2 = _temp_time;\n'''
+ '''_temp_time = latch_t1 - latch_t2;\n\n'''
+ '''txBuf[3] = _temp_time[7:0];\n'''
+ '''txBuf[4] = _temp_time[15:8];\n'''
+ '''txBuf[5] = _temp_time[23:16];\n'''
+ '''txBuf[6] = _temp_time[31:24];\n'''
+ '''txBuf[7] = _temp_time[39:32];\n'''
+ '''txBuf[8] = _temp_time[47:40];\n'''
+ '''txBuf[9] = _temp_time[55:48];\n'''
+ '''txBuf[10] = _temp_time[63:56];\n'''
+ '''spi_trans( (16'h0148), (`SPI_WRITE), (8), (`IF_IDX(4)));\n'''
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
#-------------------------------------------------------------------------
genPkt.clean()
genPkt.setPktType(0)
gen_file_def_ap = gen_file_def + "_rw04"
genPkt.addBeforeExc(genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
+genMessageCode("--设置事件")
+genIFRwDataCode(0, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genIFRwDataCode(1, 0x500, True, 4, [0x0F, 0x00, 0x03, 0x00] )
+genIFRwDataCode(2, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genIFRwDataCode(3, 0x500, True, 4, [0x0F, 0x00, 0x03, 0x00] )
+genIFRwDataCode(4, 0x500, True, 4, [0x03, 0x00, 0x0F, 0x00] )
+genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
)
genPkt.addAfterExc( "latch0 <= 1;\n"
+"latch1 <= 1;\n"
+"#5000\n"
+"latch0 <= 0;\n"
+"latch1 <= 0;\n"
+"#5000\n"
+"latch0 <= 1;\n"
+"latch1 <= 1;\n"
+"#5000\n"
+"latch0 <= 0;\n"
+"latch1 <= 0;\n"
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
+genIFRwDataCode(2, 0x74, False, 4)
+genIFRwDataCode(3, 0x74, False, 4)
+genIFRwDataCode(4, 0x74, False, 4)
+genMessageCode("--清除中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(1, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(2, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
+genIFRwDataCode(2, 0x74, False, 4)
+genIFRwDataCode(3, 0x74, False, 4)
+genIFRwDataCode(4, 0x74, False, 4)
+genMessageCode("--读取事件寄存器组")
+genIFRwDataCode(0, 0x500, False, 0x48)
+genIFRwDataCode(1, 0x500, False, 0x48)
+genIFRwDataCode(2, 0x500, False, 0x48)
+genIFRwDataCode(3, 0x500, False, 0x48)
+genIFRwDataCode(4, 0x500, False, 0x48)
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
#--------------------------------------------------------------------
#恢复系统
genPkt.clean()
genPkt.setPktType(1)
gen_file_def_ap = gen_file_def+"_rw05"
sm_idx = 0
genPkt.addBeforeExc(genMessageCode("--恢复系统")
+genIFRwDataCode(4, 0x40, True, 4, [0x01, 0x00, 0x66, 0x79])
+"#5000"
+genIFRwDataCode(4, 0x09, True, 1, [0, ], False, iface=1)
+using_proper_code(4)
+genIFRwDataCode(4, 0x00, True, 1, [2, ])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
)
genPkt.addAfterExc(genWriteTransLenCode(gen_file_def_ap, sm_idx)
+genWriteTransPktCode(gen_file_def_ap, sm_idx)
+genTrgTransPktCode(gen_file_def_ap, sm_idx)
+genReadAckPktCode(gen_file_def_ap, sm_idx)
+genMessageCode("--清除主中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
genPkt.clean()
genPkt.setPktType(0)
gen_file_def_ap = gen_file_def+"_rw06"
sm_idx = 0
#genPkt.addBeforeExc(genMessageCode("--设置环境,进行第一次嗅探"))
genPkt.addSubPkt(0x0, 0, 0x0, 0xb, 2, [0x3f, 0xff])
genPkt.addAfterExc(genWriteTransLenCode(gen_file_def_ap, sm_idx)
+genWriteTransPktCode(gen_file_def_ap, sm_idx)
+genTrgTransPktCode(gen_file_def_ap, sm_idx)
+genReadAckPktCode(gen_file_def_ap, sm_idx)
+genMessageCode("--清除主中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
genPkt.clean()
genPkt.setPktType(1)
gen_file_def_ap = gen_file_def+"_rw07"
sm_idx = 0
genPkt.addAfterExc(genWriteTransLenCode(gen_file_def_ap, sm_idx)
+genWriteTransPktCode(gen_file_def_ap, sm_idx)
+genTrgTransPktCode(gen_file_def_ap, sm_idx)
+genReadAckPktCode(gen_file_def_ap, sm_idx)
+genMessageCode("--清除主中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genTcEndFrameCode(gen_file_def)
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1, True, gen_file_def_ap)
return gen_file_def

View File

@@ -44,6 +44,9 @@ def tc1():
+genMessageCode("--清除中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--清除主站错误")
+genIFRwDataCode(0, 0x300 + sm_idx * 4, True, 1, [0x1, ], wlog = False)
+genMessageCode("--读取统计寄存器")
+genIFRwDataCode(0, 0x80, False, 24)
+genIFRwDataCode(0, 0xa0, False, 24)
@@ -186,6 +189,9 @@ def tc2():
+genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--清除主站错误")
+genIFRwDataCode(0, 0x300 + sm_idx * 4, True, 1, [0x1, ], wlog = False)
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
@@ -255,6 +261,9 @@ def tc3():
+genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--清除主站错误")
+genIFRwDataCode(0, 0x300 + sm_idx * 4, True, 1, [0x1, ], wlog = False)
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
@@ -292,6 +301,8 @@ def tc4():
+genReadAckPktCode(gen_file_def, sm_idx)
+genMessageCode("--清除中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--清除主站错误")
+genIFRwDataCode(0, 0x300 + sm_idx * 4, True, 1, [0x1, ], wlog = False)
)
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
@@ -387,6 +398,9 @@ def tc5():
+genMessageCode("--清除中断")
+genIFRwDataCode(0, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--清除主站错误")
+genIFRwDataCode(0, 0x300 + sm_idx * 4, True, 1, [0x1, ], wlog = False)
+genMessageCode("--数据包状态寄存器")
+genIFRwDataCode(0, 0x22, False, 2)
@@ -618,6 +632,9 @@ def tc6():
+genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--清除主站错误")
+genIFRwDataCode(0, 0x300 + sm_idx * 4, True, 1, [0x1, ], wlog = False)
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)
@@ -803,6 +820,9 @@ def sm_wr_err_test(tc_id, sm_id, pre_g_pkt = 1, good_pkt_in_bad = 1, after_g_pkt
+genIFRwDataCode(3, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genIFRwDataCode(4, 0x78, True, 4, [0xff, 0xff, 0xff, 0xff])
+genMessageCode("--清除主站错误")
+genIFRwDataCode(0, 0x300 + sm_idx * 4, True, 1, [0x1, ], wlog = False)
+genMessageCode("--读取中断")
+genIFRwDataCode(0, 0x74, False, 4)
+genIFRwDataCode(1, 0x74, False, 4)