用 NXP RT1170 EVK ,運行 Ethnernet QoS 網路連線

QoS 是 Quality of Service 的縮寫,在網路應用上,是表示可以透過機制,用以控制機器在傳輸網路訊息的流量,藉此確保網路訊息的傳輸品質。由於這樣的技術已行之有年,一般的使用者很難特別感受到 QoS 所帶來的好處,因此現今的涉及網路通訊的裝置,也將此技術列為必要功能配置。目前 QoS 被廣泛應用在:電競、視訊、遠端會議、遠距醫療等,需要非常注重網路品質的應用場景。

大聯大世平集團,所代理的 NXP 產品線,其中的 MCU --- i.MX RT1170 是一款通用型 MCU,在 Ethernet 的技術上有支援 QoS,舉凡家電、醫療、工業等應用場景都很合適。


以下就開始說明,如何運行 i.MX RT1170 在 Ethernet 的 QoS 範例!

本次範例的環境需求如下表:


1. 首先說明 i.MX RT1170 EVK 的硬體接法,由於 i.MX RT1170 EVK 有提供一個 1G 及一個 10/100MB 的 Ethernet Port,由於我們這次執行的範例程式,在初始化時會自動偵測哪一個 Ethernet Port 被使用,因此不必擔心接錯位置。

2. 然後是設定電腦端 Ethernet 的網路配置,進行靜態 IP 設置:


3. 隨後開啟 TCP/UDP Tool,並開始監聽 Port 10001:


4. 上述設定完成後,開啟 MCUXpresso,點選「Import SDK Example(s)...」


5. 選擇 i.MX RT1170 EVK 後,點選「下一步」:


6. 選擇 lwip_ipv4_ipv6_cho_enet_qos_freertos_cm7 後,點選「完成」:


7. 我們可以在 drivers/fsl_enet_qos.h 內,找到 QoS 相關的定義,在此我們就先不細看這些定義:


8. 點選「Debug」,程式開始自動編譯、燒錄:


9. 燒錄好後,我們開啟 Tera Term,並選擇正確的 COM Port:


10. 點選「Play」,讓程式繼續執行


11. 此時可以看到 Tera Term 中,程式初始化時會偵測哪一個 Erthernet Port 在使用中:


12. 程式初始化完成後,輸入「help」,可以看到有提供哪些範例指令:


13. 由於我們的電腦是作為 Server,因此 i.MX RT1170 EVK 要當作 Client 對 Server 做連線,因此輸入「echo_tcp_client 192.168.0.100 10001」。

14. i.MX RT1170 與 電腦連線後,處於監聽狀態:


15. 我們在電腦上的 TCP/UDP Tool 內,輸入任意文字後送出,可以看到 i.MX RT1170 EVK 有回傳相同 Byte 長度 的內容給電腦,並且在 TCP/UDP Tool 上顯示的就是方才輸入的文字:



至此,整個範例的運行就此告一段落......我是很想這麼說啦,但倘若想要修改 i.MX RT1170 回傳的內容,則可以到 /source/socket_task.c 中參考 wrtie(sck, &buf, bytes) 這個 Function,此 Function 就是進行 Ethernet 的資訊傳送:


至此,整個範例真的要就此告一段落啦!

相關影片

NXP i.MX RT1170 的 QOS 及 Ethernet 範例

說明如何使用 NXP i.MX RT1170 EVK 進行 QOS 及 Ethernet 範例

★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★博文作者未開放評論功能