117 lines
4.1 KiB
Python
117 lines
4.1 KiB
Python
from pyutils import *
|
||
|
||
|
||
def tc1():
|
||
genPkt = GenPkt()
|
||
|
||
|
||
gen_file_def = "broadcast_tc01"
|
||
sm_idx = 0
|
||
tc_des = "发送错误的数据包,导致设备出问题,出问题的设备在没有恢复的情况下,采取直通状态。\\n" \
|
||
+ "清除中断后,错误消失,出问题的设备恢复正常。"
|
||
|
||
#-------------------------------------------------------------------------
|
||
#>>>>>>广播读
|
||
genPkt.clean()
|
||
genPkt.setPktType(0)
|
||
|
||
#subPkt参数:索引、索引类型、地址、命令、长度、数据
|
||
genPkt.addSubPkt(0x0, 0, 0xc0, 0xd, 4, b"\0"*4)
|
||
genPkt.addSubPkt(0x1, 0, 0xc0, 0x0, 4, b"\0"*4)
|
||
genPkt.addSubPkt(0x2, 0, 0xc0, 0x0, 4, b"\0"*4)
|
||
genPkt.addSubPkt(0x3, 0, 0xc0, 0x0, 4, b"\0"*4)
|
||
genPkt.addSubPkt(0x4, 0, 0xc0, 0x0, 4, b"\0"*4)
|
||
genPkt.addSubPkt(random.randint(0, 2048), 0, 0xc0, 0xd, 4, b"\0"*4)
|
||
genPkt.addSubPkt(random.randint(0, 2048), 0, 0xc0, 0xd, 4, b"\0"*4)
|
||
genPkt.addSubPkt(random.randint(0, 2048), 0, 0xc0, 0xd, 4, b"\0"*4)
|
||
genPkt.addSubPkt(random.randint(0, 2048), 0, 0xc0, 0xd, 4, b"\0"*4)
|
||
|
||
|
||
#gen_file_def = "bc_r_pkt"
|
||
sm_idx = 0
|
||
|
||
genPkt.addBeforeExc(genTcStartFrameCode(gen_file_def, tc_des))
|
||
|
||
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)
|
||
+genTcEndFrameCode(gen_file_def))
|
||
|
||
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
|
||
return gen_file_def
|
||
|
||
|
||
|
||
def tc2():
|
||
genPkt = GenPkt()
|
||
|
||
gen_file_def = "broadcast_tc02"
|
||
sm_idx = 0
|
||
tc_des = "发送错误的数据包,导致设备出问题,出问题的设备在没有恢复的情况下,采取直通状态。\\n" \
|
||
+ "清除中断后,错误消失,出问题的设备恢复正常。"
|
||
|
||
#-------------------------------------------------------------------------
|
||
#>>>>>>广播写
|
||
genPkt.clean()
|
||
genPkt.setPktType(0)
|
||
|
||
#subPkt参数:索引、索引类型、地址、命令、长度、数据
|
||
data = bytearray(b"\0" * 2)
|
||
data[0] = 32
|
||
data[1] = 0
|
||
genPkt.addSubPkt(random.randint(0, 2048), 0, 0x0302, 0xe, 2, data)
|
||
|
||
data = bytearray(b"\0"*100)
|
||
for i in range(100):
|
||
data[i] = i + 1
|
||
genPkt.addSubPkt(random.randint(0, 2048), 0, 0x0800, 0xe, 32, data)
|
||
|
||
sm_idx = 0
|
||
|
||
genPkt.addBeforeExc(genTcStartFrameCode(gen_file_def, tc_des))
|
||
|
||
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)
|
||
+genTcEndFrameCode(gen_file_def))
|
||
|
||
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
|
||
return gen_file_def
|
||
|
||
|
||
def tc3():
|
||
genPkt = GenPkt()
|
||
|
||
|
||
gen_file_def = "broadcast_tc03"
|
||
sm_idx = 0
|
||
tc_des = "发送错误的数据包,导致设备出问题,出问题的设备在没有恢复的情况下,采取直通状态。\\n" \
|
||
+ "清除中断后,错误消失,出问题的设备恢复正常。"
|
||
|
||
#-------------------------------------------------------------------------
|
||
#>>>>>>广播读写
|
||
genPkt.clean()
|
||
genPkt.setPktType(0)
|
||
|
||
#subPkt参数:索引、索引类型、地址、命令、长度、数据
|
||
data = bytearray(b"\0"*100)
|
||
for i in range(4):
|
||
data[i] = i + 1
|
||
genPkt.addSubPkt(random.randint(0, 2048), 0, 0x00c0, 0xf, 4, data)
|
||
|
||
sm_idx = 0
|
||
|
||
genPkt.addBeforeExc(genTcStartFrameCode(gen_file_def, tc_des))
|
||
|
||
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)
|
||
+genTcEndFrameCode(gen_file_def))
|
||
|
||
genPkt.gen("./generated/shin/%s.vh"%(gen_file_def, ), 1)
|
||
return gen_file_def
|
||
|