目前車載以太網(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()方法發送出去。