目前车载以太网(100Base-T1, 1000Base-T1) 的应用越来越多,相应的对于车载以太网的仿真测试需求日渐趋多;
这里介绍一款车载以太网专用仿真测试软件,为德国Technica Engineering 2009年推出市场;BMW,AUDi等域控制器功能测试即使用ANDi 软件进行仿真测试(需结合专门的Ethernet HIL)
对于一款新的脚本编程软件,通常都是从"Hello World"开始;
Hello,World!” from ANDi
ANDi基于Ironpython, 是Python在DotNet上的实现。在ANDi里用Python来编写以太网代码,非常简单。
让我们先用ANDi发出第一个以太网报文:Hello World!
代码说明:
from globals import *
#create IPV4 message object
msg_eth=message_builder.create_ethernet_message('Sender','Receiver')
#parameterize the ethernet layer
msg_eth.mac_address_source=Sender.get_mac()
msg_eth.mac_address_destination="FF:FF:FF:FF:FF:FF"
#parameterize the payload
msg_eth.payload=System.Array[Byte](bytearray("Hello, World!"))
#send
msg_eth.send()
message_builder是ANDi自带API,能够通过它创建各种消息对象。本例创建了ethernet报文。
Sender和Receiver分别指用来发出或接收报文的网络适配器。在ANDi的Adapters Configuration里进行设置。Sender和Receiver这个名字可以按需要修改,将其映射到具体的网络适配器即可。
然后设置源MAC地址,和目的MAC地址。源地址是Sender所代表的网络适配器的地址,而目的地址是广播地址。
Payload设置时,需将Hello, World!由字符串变成字符数组。
最后通过send()方法发送出去。