嵌入式開(kāi)發(fā),仿真環(huán)節(jié)至關(guān)重要。仿真,自然脫離不了仿真設(shè)備的使用,本文基于VN5650,討論一下以太網(wǎng)的配置與使用。 本文使用軟/硬件環(huán)境:CANoe 15.0,VN5650接口卡。 工程中,開(kāi)發(fā)的節(jié)點(diǎn)(DUT:Device Under Test)支持Ethernet,開(kāi)發(fā)過(guò)程中需要測(cè)試其通信狀態(tài)。DUT、VN5650、監(jiān)控設(shè)備之間的物理連接如下所示:
其中,DUT與VN5650硬件接口卡通過(guò)以太網(wǎng)連接。對(duì)于DUT,一般使用雙絞線(xiàn),與仿真設(shè)備連接時(shí),可以使用轉(zhuǎn)換接口,轉(zhuǎn)換成RJ45與VN5650的RJ45連接器連接,也可以粗暴地直接雙絞線(xiàn)連接。VN5650與PC端通過(guò)USB連接。
如上的連接,可以將VN5650看作交換機(jī)(Switch),最終形成網(wǎng)絡(luò)結(jié)構(gòu)如下所示: Switch提供的是二層交換機(jī)的功能,負(fù)責(zé)數(shù)據(jù)的轉(zhuǎn)發(fā),它可以連接多個(gè)PP(Physical Port)/VP(Virtual Port),但其中至少一個(gè)是PP。 提示:CANoe中的虛擬端口(VP),一般不需要用戶(hù)手動(dòng)添加,CANoe會(huì)根據(jù)用戶(hù)創(chuàng)建的模塊(如IG/CAPL節(jié)點(diǎn))與Segment綁定情況自動(dòng)添加。
完成物理連接以后,進(jìn)行CANoe配置,以便于以太網(wǎng)數(shù)據(jù)的監(jiān)控和仿真。 (一)VN5650硬件網(wǎng)絡(luò)(Network)配置
安裝CANoe 15.0軟件以及VN5650驅(qū)動(dòng)以后,在開(kāi)始菜單中可以找到"Vector Hardware Configuration",如下所示: 在Vector Hardware Config的配置界面選擇VN5650,右擊->選擇"Ethernet device Configuration",如下所示: 選擇Port口,此處選擇要使用的VN5650物理端口(PP),本文僅使用Port13[1G front],即:目標(biāo)DUT與VN5650通過(guò)RJ45連接,至于Ethernet的通信速率,使用默認(rèn)的自協(xié)商(Auto-Negotiation)方式即可,配置如下:
配置好網(wǎng)絡(luò)以后,將配置好的網(wǎng)絡(luò)下載到VN5650設(shè)備中,成功配置網(wǎng)絡(luò)到VN5650后,提示如下:
提示:配置好的Network信息可以保存為*.XML文件,方便復(fù)用。 (二)CANoe軟件配置 1、Hardware::Channel Usage配置本文配置一個(gè)以太網(wǎng)網(wǎng)絡(luò),設(shè)置如下: Network訪問(wèn)方式選擇"Network-based access",如下所示: 2、Hardware::Channel Mapping配置 將配置的網(wǎng)絡(luò)與硬件通道關(guān)聯(lián),如下所示: 3、創(chuàng)建仿真IG(Interactive Generator)模塊當(dāng)需要模擬節(jié)點(diǎn)UDP/TCP報(bào)文發(fā)送時(shí),可以通過(guò)IG等模塊仿真,IG創(chuàng)建如下所示:IG屬性配置,本文設(shè)置虛擬以太網(wǎng)節(jié)點(diǎn)(IG)的IPv4地址:192.168.0.10,網(wǎng)絡(luò)掩碼:255.255.255.0,默認(rèn)網(wǎng)關(guān)地址:192.168.0.1,如下所示: 本文配置UDP報(bào)文發(fā)送屬性,發(fā)送的目標(biāo)IPv4地址:192.168.0.12,目標(biāo)端口號(hào):8088,IG端口號(hào)設(shè)置為:8089,如下所示: 添加仿真UDP報(bào)文,周期1000ms,如下所示: 提示:DUT的IP地址、網(wǎng)關(guān)、掩碼以及端口等信息,開(kāi)發(fā)過(guò)程中配置。而本文的DUT型號(hào)是芯馳的G9H,基于Linux系統(tǒng),可以通過(guò)命令行設(shè)置這些信息,本文只是臨時(shí)配置,使用臨時(shí)配置的方式修改DUT的IP地址、網(wǎng)關(guān)、掩碼信息。沒(méi)有設(shè)置之前,網(wǎng)卡eth0并未分配IP地址、網(wǎng)關(guān)、掩碼等信息,如下所示:臨時(shí)分配IP地址、網(wǎng)關(guān)、掩碼操作如下://配置網(wǎng)卡eth0的IPv4地址,網(wǎng)絡(luò)掩碼 ifconfig eth0 192.168.0.12 netmask 255.255.255.0 //配置默認(rèn)路由地址 route add default gw 192.168.0.1 再次通過(guò)ifconfig確認(rèn)DUT的IP地址、網(wǎng)關(guān)、掩碼等信息,如下所示:
4、Hardware::Port Configuration配置 將配置的PP端口以及仿真端口使能,右擊對(duì)應(yīng)端口->Active,如下所示: DUT的數(shù)據(jù)通過(guò)物理端口Port13將數(shù)據(jù)發(fā)送給Switch(VN5650),Switch在將數(shù)據(jù)轉(zhuǎn)給虛擬節(jié)點(diǎn)(IG)的虛擬端口(EthernetIG)。虛擬節(jié)點(diǎn)(IG)通過(guò)虛擬端口(EthernetIG)將要發(fā)送的UDP數(shù)據(jù)發(fā)送給Switch(VN5650),Switch在將數(shù)據(jù)通過(guò)物理端口Port13將數(shù)據(jù)發(fā)送給DUT。
|