1.產品簡介
1.1 netX 90介紹
netX90是基于netX51/52的成功開發的新一代網絡控制器,其安全性是產品的核心價值,可實現具有更高性能的集成,并提高功率效率等級。在netX90 SoC中集成了兩個獨立CPU內核 ,其中一個用于實時工業通訊,另一個可實現用戶應用程序的開發。這兩個CPU之間的數據交互仍基于雙端口內存DPM結構,統一的API接口。工業通訊協議棧以可加載固件(LFW)形式提供,經過全面的測試和協議預認證,應用程序軟件開發人員能快速的實現驅動的移植和應用程序的開發。
圖1 netX90芯片硬件框圖
1.2 NXHX 90-JTAG介紹
XHX 90-JTAG是赫優訊基于netX90芯片自主研發的開發板,方便客戶前期評估測試,本文測試以此開發板為主。
圖2 NXHX 90-JTAG硬件框圖
基于netX90的開發板NXHX 90-JTAG,主要特性:
(1)主機接口:
作為配有Host MCU通訊處理器:8位/16位的并行DPM模式,2xSPI/SQI串行DPM模式;
單芯片解決方案:16 bit SDRAM,用于以太網PHY的MII,定制化模塊方案。
(2)通過SPI/SQI為串行DPM(SPM0)提供額外的主機接口引腳;
(3)用于調試的JTAG MIPI-20接口;
(4)用于OpenOCD的板載JTAG-to-USB適配器(FTDI);
(5)用于診斷和下載協議棧固件的板載UART-to-USB的適配器(FTDI);
(6)Mini-B型USB連接器用于通過FTDI進行JTAG-to-USB調試和UART-to-USB用于診斷及固件下載;
(7)帶有“Link”和“Activity”LED燈的兩個RJ45以太網接口;
(8)NXHX傳統現場總線模塊的接口(PROFIBUS、CANopen、DeviceNet和CC-Link);
(9)4MB 的SQI Flash;
(10)RS-232串口;
(11)具有Biss、SSI或ENDat連接的編碼器接口;
(12)模數轉換器(ADC)接口;
(13)MMIO連接;
(14)配置啟動模式(Alternative boot mode和Console mode)的開關。
NXHX 90-JTAG 開發板有不同的Debug方式:
(1)JTAG-to-USB:連接開發板上Mini-USB接口(X1000),S701 Switch1=OFF;
(2)External debugger:連接開發板上JTAG接口(X400),S701 Switch1=ON。
1.3 netX Studio CDT配置軟件
netX Studio CDT(C/C++開發工具)是用于Hilscher netX SoC的基于Eclipse的集成開發環境,可用于以下具體操作:
對象定義和映射;
設備配置;
創建產品文件(構建過程);
將產品文件和可加載固件下載到硬件設備;
離線模擬或在線診斷。
netX Studio CDT工具的應用范圍僅限于基于netX的從屬設備,或者使用可加載的固件進行操作,該工具主要用于實時以太網從站設備的開發。
圖3 netX Studio CDT界面
使用這個工具可以對NXHX 90-JTAG開發板進行相應的配置,并調試netX 90應用程序。
2.單芯片解決方案實例介紹
netX90作為單芯片解決方案,即同時采用內部負責Communication和Application的內核,兩個核通過iDPM建立連接。此時,只需要通過netX Studio CDT配置NXHX 90-JTAG板,然后,通過NXHX-DP接口連接主站cifX50-DP主站板卡即可建立通訊。
2.1 配置NXHX 90-JTAG板
通過miniUSB端口,將NXHX 90-JTAG連接至電腦進行配置,需設置開發板上S701 Switch1=OFF,并且啟動模式為Stand boot Mode,所以S400 Switch 5=OFF,Switch 6=OFF。
(1)創建整個工程
硬件開發板設置完畢之后,打開netX Studio CDT軟件,在歡迎界面中選擇Open project,進入工程文件選擇界面,選擇netX90_DPSV5_simpleCfg,打開。導入工程文件之后,需要先構建整個工程,選擇Build,點擊Build Solution,如下圖所示:
圖4 選擇Build整個工程
(2)構建Doxygen html文檔
選擇Doxygen,點擊Build Documentation,如下圖所示。完成構建Doxygen html文件之后,在Doc文件夾下會自動生成一個Html文件夾。
圖5 構建Doxygen html文件
(3)生成硬件配置二進制文件
在提供的工程文件中,包含硬件設置文件的xml文檔,可在netX Studio CDT軟件中生成二進制文件,在單芯片解決方案中,需要啟動內部idpm,所以需要選擇hardware_config_idpm.xml,右鍵點擊Build Hardware Configuration命令,如下圖所示:
圖6 生成二進制格式硬件配置文件
分別生成基于LMF和MFW的硬件配置文件:hardware_config_idpm_profibus.hwc和hardware_config_idpm_profibus.hwc,點擊OK保存即可。
(4)燒寫硬件配置文件和協議棧固件
點擊Tool,選擇Flasher,或者可以直接點擊上側導航欄的小閃電按鈕,進入之后,會自動掃描所連接的開發板, 掃面到設備之后,點擊Next,進入Flasher。
圖7 選擇Flasher工具
點擊Brower Project,選擇硬件配置文件,因本測試選擇的Loadable Firmware,所以選擇硬件配置文件時選擇hardware_config_idpm_profibus.hwc, 需要下載的文件如下圖所示,分別將這幾個文件下載到netX90開發板即可。
圖8 需下載的文件
2.2 調試工程文件
NXHX 90-JTAG開發板完成之后,可以netX Studio CDT軟件中調試應用程序,首先,設置調試相關參數,點擊Debug,選擇Set Startup Target,以確定所要測試的為:armv7em-none-eabi/4.9.3/netx90_app_iflash如下圖所示:
圖9 選擇設置調試參數
點擊Start Debugging之后,出現一個Debug Setting選擇框,如下圖所示,
選擇目標板為NXHX-90,Debugger為NXHX-90 On-Board Debugger,點擊Debug即可。
圖10 設置Debug目標
在Debug過程中,會出現一個選擇框,是否將是否將應用程序燒寫至APP端的Internal Flash中,選擇Yes即可。
圖11 Debug過程
調試完成之后,可以看到應用程序已經運行,如下圖所示:
圖12 運行應用程序
2.3 通訊測試
關于NXHX 90-JTAG開發板那邊的設置以及應用程序的調試已經完成,可與主站建立通訊,本文選擇PROFIBUS DP主站為赫優訊主站板卡cifX50-DP/+ML,在SYCON.net完成組態,配置完成主站板卡,可自動掃描從站設備,完整組態。將所有配置信息下載到板卡,既可以進行通訊測試。
圖13 通訊診斷信息
3.配有主CPU的解決方案實例介紹
netX90可作為配有主CPU的通訊處理器,只采用其內部負責通訊的內核運行協議棧,而不是用應用程序內核。本文中,通過發送非周期報文的形式完成對netX90芯片的配置。然后,通過采用赫優訊cifX 50-RE主站板卡建立連接進行通訊測試。
3.1 配置NXHX 90-JTAG開發板
配置NXHX 90-JTAG開發板與netX90作為單芯片解決方案時的步驟一樣,前面第(1)(2)步不再做詳細介紹。netX90作為配有主CPU的通訊處理器時,不在啟用其內部idpm,而是通過SPI的方式連接搭配主機,所以在硬件配置中有不同,需選擇hardware_config_spm.xml生成二進制硬件配置文件,如下圖所示:
圖14 選擇硬件配置xml文件
將硬件配置文件和協議棧文件等下載到netX90開發板,完成對開發板的配置,需要下載的文件和作為單芯片解決方案時一樣,下載完所有文件即可,無需運行軟件工程。
3.2 通過netHOST配置netX90芯片
通過netHOST配置netX90芯片,主要是通過發送非周期報文的形式實現啟動netX90,首先需通過串口接口連接到PC,打開netHOST軟件找到設備:
圖15 打開設備
打開設備之后,可以看到設備的基本信息,選擇Channel0,進入。
圖16 設備信息
對于總線設備,只有一個通道,打開通道之后,在導航欄點擊Data Transfer,選擇Packet Data,如下圖所示:
圖17 選擇Packet Data
(1)首先需要設置熱啟動參數,Dest=0x20,Cmd=3102,關于Set Configuration的數據需要參考PROFIBUS DP V5 PAI文檔,如下圖所示,設置好右側需要Send Packet的參數,點擊右下的Put Packet,再點擊左側Receive Packet的Get Packet,判斷參數是否正確,通過收到的報文的State和Cmd判斷,State=0,Cmd+1即可。
圖15 設置熱啟動參數
(2)設置I&M0參數,I&M表示Identification(標識)和Maintenance(維護)。這個報文通常從設備獲取信息,比如硬件版本、軟件版本、設備ID和序列號等,可從每個Slot中分別讀取I&M信息。具體的參數配置如下圖所示:
圖16 設置I&M參數
(3)通道初始化,通道初始化只作用于指定的通信通道,強制協議棧立即關閉所有網絡連接,并進行重新初始化。具體的參數配置如下圖所示:
圖17 通道初始化
3.3 通訊測試
關于NXHX 90-JTAG開發板那邊的設置已在netHOST軟件中完成,可與主站建立通訊,主站板卡cifX50-DP/+ML作為PROFIBUS DP主站,在SYCON.net完成組態,配置完成主站板卡,可自動掃描從站設備,完整組態。將所有配置信息下載到板卡,既可以進行通訊測試。如下圖所示,可以看到主從站之間的數據交換:
圖18 通訊測試
4.總結
在本文的測試中,無論netX 90是作為單芯片解決方案,還是作為配有HOST CPU的通訊協處理器,在赫優訊提供的應用程序上都可以方便快捷的實現PROFIBUS DP從站的開發。基于可加載固件(LFW)形式的協議棧,netX90可做為單獨部件獨立運行,其外部HOST主機接口,不僅能夠滿足過程I/O數據大吞吐量的高速訪問,同時滿足網絡通訊周期的精確時鐘同步。