增加新的测试用例,调整内部的延时。±176ppm测试通过,184ppm测试未通过,但差得字节数并不多,最终偏差大概在180ppm上下
This commit is contained in:
@@ -1884,4 +1884,76 @@ def tc29():
|
||||
+genTcEndFrameCode(gen_file_def))
|
||||
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
|
||||
|
||||
return gen_file_def
|
||||
|
||||
|
||||
def tc30():
|
||||
genPkt = GenPkt()
|
||||
|
||||
|
||||
gen_file_def = "base_tc30"
|
||||
sm_idx = 0
|
||||
tc_des = ("写,单次通讯2048个字节。每个子包包含数据502个字节,最多4个子包。 \\n"
|
||||
+"(502 + 8) * 4 + 4(HEAD) + 4(CRC) = 2048\\n"
|
||||
+"可以通过屏蔽子包的方式,增大或者缩小发送的数据量。最大的数据量不超过2048个字节。"
|
||||
)
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#>>>>>>普通数据包 sm2,广播读
|
||||
genPkt.clean()
|
||||
genPkt.setPktType(0)
|
||||
data_len = 502
|
||||
data_len_wr = [(data_len & 0xff), ((data_len >> 8) & 0xff)]
|
||||
#genPkt.addSubPkt(0x00, 0, 0x302, 0xe, 2, data_len_wr) #500
|
||||
#subPkt参数:索引、索引类型、地址、命令、长度、数据
|
||||
genPkt.addSubPkt(0x01, 0, 0x800, 0x1, data_len, list(range(256)) + list(range(256)))
|
||||
genPkt.addSubPkt(0x02, 0, 0x800, 0x1, data_len, list(range(256)) + list(range(256)))
|
||||
genPkt.addSubPkt(0x03, 0, 0x800, 0x1, data_len, list(range(256)) + list(range(256)))
|
||||
genPkt.addSubPkt(0x04, 0, 0x800, 0x1, data_len, list(range(256)) + list(range(256)))
|
||||
|
||||
sm_idx = 2
|
||||
|
||||
|
||||
genPkt.addBeforeExc(genTcStartFrameCode(gen_file_def, tc_des)
|
||||
+genIFRwDataCode(1, 0x0302, True, 2, data_len_wr)
|
||||
+genIFRwDataCode(2, 0x0302, True, 2, data_len_wr)
|
||||
+genIFRwDataCode(3, 0x0302, True, 2, data_len_wr)
|
||||
+genIFRwDataCode(4, 0x0302, True, 2, data_len_wr)
|
||||
)
|
||||
|
||||
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, 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(1, 0x800, False, data_len)
|
||||
+genIFRwDataCode(2, 0x800, False, data_len)
|
||||
+genIFRwDataCode(3, 0x800, False, data_len)
|
||||
+genIFRwDataCode(4, 0x800, False, data_len)
|
||||
|
||||
+genTcEndFrameCode(gen_file_def))
|
||||
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
|
||||
|
||||
return gen_file_def
|
||||
Reference in New Issue
Block a user