1.產(chǎn)品簡(jiǎn)介
1.1 netX 90介紹
netX90是基于netX51/52的成功開(kāi)發(fā)的新一代網(wǎng)絡(luò)控制器,其安全性是產(chǎn)品的核心價(jià)值,可實(shí)現(xiàn)具有更高性能的集成,并提高功率效率等級(jí)。在netX90 SoC中集成了兩個(gè)獨(dú)立CPU內(nèi)核 ,其中一個(gè)用于實(shí)時(shí)工業(yè)通訊,另一個(gè)可實(shí)現(xiàn)用戶應(yīng)用程序的開(kāi)發(fā)。這兩個(gè)CPU之間的數(shù)據(jù)交互仍基于雙端口內(nèi)存DPM結(jié)構(gòu),統(tǒng)一的API接口。工業(yè)通訊協(xié)議棧以可加載固件(LFW)形式提供,經(jīng)過(guò)全面的測(cè)試和協(xié)議預(yù)認(rèn)證,應(yīng)用程序軟件開(kāi)發(fā)人員能快速的實(shí)現(xiàn)驅(qū)動(dòng)的移植和應(yīng)用程序的開(kāi)發(fā)。
圖1 netX90芯片硬件框圖
無(wú)論netX 90是作為單芯片解決方案,還是作為配有HOST CPU的通訊協(xié)處理器,基于可加載固件(LFW)形式的協(xié)議棧,都可做為單獨(dú)部件獨(dú)立運(yùn)行。其外部HOST主機(jī)接口,不僅能夠滿足過(guò)程I/O數(shù)據(jù)大吞吐量的高速訪問(wèn),同時(shí)滿足網(wǎng)絡(luò)通訊周期的精確時(shí)鐘同步。
1.2 NXHX 90-JTAG介紹
XHX 90-JTAG是赫優(yōu)訊基于netX90芯片自主研發(fā)的開(kāi)發(fā)板,方便客戶前期評(píng)估測(cè)試,本文測(cè)試以此開(kāi)發(fā)板為主。
圖2 NXHX 90-JTAG硬件框圖
基于netX90的開(kāi)發(fā)板NXHX 90-JTAG,主要特性:
(1) 主機(jī)接口:
◆作為配有Host MCU通訊處理器:8位/16位的并行DPM模式,2xSPI/SQI 串行DPM模式;
◆單芯片解決方案:16 bit SDRAM,用于以太網(wǎng)PHY的MII,定制化模塊方案。
(2) 通過(guò)SPI/SQI為串行DPM(SPM0)提供額外的主機(jī)接口引腳;
(3) 用于調(diào)試的JTAG MIPI-20接口;
(4) 用于OpenOCD的板載JTAG-to-USB適配器(FTDI)
(5) 用于診斷和下載協(xié)議棧固件的板載UART-to-USB的適配器(FTDI)
(6) Mini-B型USB連接器用于通過(guò)FTDI進(jìn)行JTAG-to-USB調(diào)試和UART-to-USB用于診斷及固件下載;
(7) 帶有“Link”和“Activity”LED燈的兩個(gè)RJ45以太網(wǎng)接口
(8) NXHX傳統(tǒng)現(xiàn)場(chǎng)總線模塊的接口(PROFIBUS、CANopen、DeviceNet和CC-Link)
(9) 4MB 的SQI Flash
(10) RS-232串口
(11) 具有Biss、SSI或ENDat連接的編碼器接口
(12) 模數(shù)轉(zhuǎn)換器(ADC)接口
(13) MMIO連接
(14) 配置啟動(dòng)模式(Alternative boot mode和Console mode)的開(kāi)關(guān)
NXHX 90-JTAG 開(kāi)發(fā)板有不同的Debug方式:
(1)JTAG-to-USB:連接開(kāi)發(fā)板上Mini-USB接口(X1000),S701 Switch1=OFF;
(2) External debugger:連接開(kāi)發(fā)板上JTAG接口(X400),S701 Switch1=ON。
1.3 netX Studio CDT配置軟件
netX Studio CDT(C/C++開(kāi)發(fā)工具)是用于Hilscher netX SoC的基于Eclipse的集成開(kāi)發(fā)環(huán)境,可用于以下具體操作:
◆對(duì)象定義和映射
◆設(shè)備配置
◆創(chuàng)建產(chǎn)品文件(構(gòu)建過(guò)程)
◆將產(chǎn)品文件和可加載固件下載到硬件設(shè)備
◆離線模擬或在線診斷。
netX Studio CDT工具的應(yīng)用范圍僅限于基于netX的從屬設(shè)備,或者使用可加載的固件進(jìn)行操作,該工具主要用于實(shí)時(shí)以太網(wǎng)從站設(shè)備的開(kāi)發(fā)。
圖3 netX Studio CDT界面
使用這個(gè)工具可以對(duì)NXHX 90-JTAG開(kāi)發(fā)板進(jìn)行相應(yīng)的配置,并調(diào)試netX 90應(yīng)用程序。
2. EtherNet/IP Adapter協(xié)議棧技術(shù)參數(shù)
3. 硬件平臺(tái)
EtherNet/IP Scanner:cifX 50-RE/ +ML,赫優(yōu)訊實(shí)時(shí)以太網(wǎng)主站板卡
EtherNet/IP Adapter:NXHX 90-JTAG,netX90開(kāi)發(fā)板
MCU:STM32 F7開(kāi)發(fā)板
配置工具:
(1) 主站側(cè):采用SYCON.net進(jìn)行網(wǎng)絡(luò)組態(tài),并進(jìn)行通訊測(cè)試;
(2) 從站側(cè):?jiǎn)涡酒鉀Q方案時(shí),采用netX Studio CDT進(jìn)行硬件配置,協(xié)議棧下載,并運(yùn)行應(yīng)用程序;基于外部STM32開(kāi)發(fā)板,netX90作為通訊芯片時(shí),采用netX Studio CDT進(jìn)行硬件配置,以及下載相應(yīng)的文件,然后采用System Workbench for STM32運(yùn)行應(yīng)用程序。
4. 單芯片解決方案
netX90作為單芯片解決方案,即同時(shí)采用netX90芯片內(nèi)部負(fù)責(zé)Communication和Application的內(nèi)核,兩個(gè)核通過(guò)iDPM建立連接。此時(shí),只需要通過(guò)netX Studio CDT配置NXHX 90-JTAG板,然后,通過(guò)以太網(wǎng)口連接主站PLC即可建立通訊。
4.1 配置NXHX 90-JTAG板
通過(guò)miniUSB端口,將NXHX 90-JTAG連接至電腦進(jìn)行配置,需設(shè)置開(kāi)發(fā)板上S701 Switch1=OFF,并且啟動(dòng)模式為Stand boot Mode,所以S400 Switch 5 = OFF,Switch 6 = OFF。
(1)編譯工程
硬件開(kāi)發(fā)板設(shè)置完成之后,打開(kāi)netX Studio CDT軟件,在歡迎界面中選擇Open project,進(jìn)入工程文件選擇界面,選擇netXStudio_EISV5_simpleConfig,打開(kāi)。導(dǎo)入工程文件之后,需要先編譯整個(gè)工程,選擇Build,點(diǎn)擊Build Solution,如下圖所示:
圖4 選擇Build整個(gè)工程
(2)創(chuàng)建Doxygen html文檔
選擇Doxygen,點(diǎn)擊Build Documentation,如下圖所示。完成構(gòu)建Doxygen html文件之后,在Doc文件夾下會(huì)自動(dòng)生成一個(gè)Html文件夾。
圖5 構(gòu)建Doxygen html文件
(3)生成硬件配置二進(jìn)制文件
在提供的工程文件中,包含硬件設(shè)置文件的xml文檔,可在netX Studio CDT軟件中生成二進(jìn)制文件,在單芯片解決方案中,需要啟動(dòng)內(nèi)部idpm,所以需要選擇hardware_config_idpm.xml,右鍵點(diǎn)擊Build Hardware Configuration命令,如下圖所示:
圖6 生成二進(jìn)制格式硬件配置文件
分別生成基于LMF和MFW的硬件配置文件:hardware_config_idpms.hwc和hardware_config_idpm.hwc,點(diǎn)擊OK保存即可。
(4)燒寫配置文件
點(diǎn)擊Tool,選擇Flasher,或者可以直接點(diǎn)擊上側(cè)導(dǎo)航欄的小閃電按鈕,進(jìn)入之后,會(huì)自動(dòng)掃描所連接的開(kāi)發(fā)板, 掃面到設(shè)備之后,點(diǎn)擊Next,進(jìn)入Flasher。
首先點(diǎn)擊Brower Project,選擇硬件配置文件,因本測(cè)試選擇的Loadable Firmware,所以選擇硬件配置文件時(shí)選擇hardware_config_idpm.hwc, 需要下載的文件如下圖所示,分別將這幾個(gè)文件下載到netX90開(kāi)發(fā)板即可。
圖7 需下載的文件
4.2 調(diào)試工程文件
NXHX 90-JTAG開(kāi)發(fā)板完成之后,可以netX Studio CDT軟件中調(diào)試應(yīng)用程序,首先,設(shè)置調(diào)試相關(guān)參數(shù),點(diǎn)擊Debug,選擇Set Startup Target,以確定所要測(cè)試的為:armv7em-none-eabi/4.9.3/netx90_app_iflash。
點(diǎn)擊Start Debugging之后,出現(xiàn)一個(gè)Debug Setting選擇框,如下圖所示,選擇目標(biāo)板為NXHX-90,Debugger為NXHX-90 On-Board Debugger,點(diǎn)擊Debug即可。
圖8 設(shè)置Debug目標(biāo)
在Debug過(guò)程中,會(huì)出現(xiàn)一個(gè)選擇框,是否將是否將應(yīng)用程序燒寫至APP端的Internal Flash中,選擇Yes即可。程序運(yùn)行起來(lái)之后,相當(dāng)于已經(jīng)啟動(dòng)了EtherNet/IP Adapter設(shè)備,可連接主站進(jìn)行通訊測(cè)試。
4.3 通訊測(cè)試
關(guān)于NXHX 90-JTAG開(kāi)發(fā)板那邊的設(shè)置以及應(yīng)用程序的調(diào)試已經(jīng)完成,可與主站建立通訊,本文選擇主站為赫優(yōu)訊主站板卡cifX50-RE/+ML,在SYCON.net完成組態(tài),配置完成主站板卡,添加從站設(shè)備,完整組態(tài)。將所有配置信息下載到板卡,既可以進(jìn)行通訊測(cè)試。
圖9 通訊診斷信息
注:在通訊測(cè)試過(guò)程中,可能在會(huì)通訊不成功,原因是軟件程序中設(shè)置的固定IP,如果在網(wǎng)絡(luò)組態(tài)中IP地址不匹配會(huì)造成通訊不成功,可用赫優(yōu)訊以太網(wǎng)軟件Ethernet Device Configuration掃描設(shè)備查看IP地址。
5.配有主CPU的解決方案實(shí)例介紹
netX90可作為配有主CPU的通訊處理器,只采用其內(nèi)部負(fù)責(zé)通訊的內(nèi)核運(yùn)行協(xié)議棧,而不是用應(yīng)用程序內(nèi)核。本文中,選擇STM32-F7開(kāi)發(fā)板作為主CPU,采用netX90基于STM32的應(yīng)用案例作為主應(yīng)用程序,主站為赫優(yōu)訊實(shí)時(shí)以太網(wǎng)主站板卡進(jìn)行測(cè)試。
5.1 配置NXHX 90-JTAG開(kāi)發(fā)板
配置NXHX 90-JTAG開(kāi)發(fā)板與netX90作為單芯片解決方案時(shí)的步驟一樣,前面第(1)(2)步不再做詳細(xì)介紹。netX90作為配有主CPU的通訊處理器時(shí),不在啟用其內(nèi)部idpm,而是通過(guò)SPI的方式連接搭配主機(jī),所以在硬件配置中有不同,需選擇hardware_config_spm.xml生成二進(jìn)制硬件配置文件。生成二進(jìn)制文件時(shí),同樣會(huì)生成基于LFW和MFW的兩個(gè)二進(jìn)制文件,都點(diǎn)擊保存即可。然后將硬件配置文件和協(xié)議棧hardware_config_spm.hwc和協(xié)議棧文件X090D000.nxi燒寫到開(kāi)發(fā)板,并進(jìn)行Debug即可。
圖10 選擇硬件配置xml文件
5.2.運(yùn)行基于STM32的應(yīng)用程序
在選擇基于外部CPU進(jìn)行通訊測(cè)試時(shí),需要通過(guò)SPI引腳,與主CPU建立連接。然后,打開(kāi)System Workbench for STM32軟件,選擇上側(cè)導(dǎo)航欄File→Import,導(dǎo)入工程文件,如下圖所示:
圖11 導(dǎo)入工程文件
在跳出的界面選擇Existing Projects into Workspace,然后點(diǎn)擊Next,選擇將文件保存在STM32工作區(qū)。如下圖所示:
圖12 選擇將文件保存
然后進(jìn)入具體的工程文件選項(xiàng),如下圖所示:
圖13 選擇文件
點(diǎn)擊Brown,根據(jù)相應(yīng)的路徑選擇STM32文件夾中的Project,如下圖所示:
圖14 工程文件
赫優(yōu)訊提供的資料中包含多種以太網(wǎng)實(shí)例,用戶可根據(jù)自己的測(cè)試選擇相應(yīng)的文件,本文測(cè)試EthernNet/IP從站,所以可只選擇EthernNet/IP工程文件。編譯整個(gè)工程,點(diǎn)擊Build→Build all。編譯好整個(gè)文件,進(jìn)入程序調(diào)試模式,選擇Run→Debug,如下圖所示:
圖15 程序調(diào)試
點(diǎn)擊開(kāi)發(fā)板的Restart按鈕,可以通過(guò)串口工具Tera Term查看相應(yīng)的打印信息。
5.3 通訊測(cè)試
關(guān)于NXHX 90-JTAG開(kāi)發(fā)板那邊的設(shè)置以及應(yīng)用程序的調(diào)試已經(jīng)完成,可與主站建立通訊,本文選擇主站為赫優(yōu)訊主站板卡cifX50-RE/+ML,在SYCON.net完成組態(tài),配置完成主站板卡,添加從站設(shè)備,完整組態(tài)。將所有配置信息下載到板卡,既可以進(jìn)行通訊測(cè)試。
圖16 通訊測(cè)試
6. 總結(jié)
在本文的測(cè)試中,netX90無(wú)論是作為單芯片解決方案還是作為配有主CPU的通訊處理器解決方案,在赫優(yōu)訊提供的配置軟件中完成硬件引腳的配置,然后通過(guò)應(yīng)用程序方便快捷的實(shí)現(xiàn)EtherNet/IP從站的開(kāi)發(fā)。