精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

嵌入式Linux上的以太網TSN簡介

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Brandon Lewis ? 2022-06-27 11:56 ? 次閱讀

本系列文章深入探討了新興的確定性以太網標準以太網時間敏感網絡 (TSN),以及如何在各種基于 Linux嵌入式系統上有效地實現它。我們將使用一系列低成本、現成的開發板硬件,演示如何為我們的用例配置 Raspberry Pi聯發科 LinkIt 智能板,然后使用實時數據包技術在設備之間進行通信,并控制機器人外圍設備。

首先,需要對底層組件有基本的了解。在本文中,我們從嵌入式 Linux 開始。

桌面 Linux 與嵌入式 Linux

嵌入式 Linux 是 Linux 內核的改編版,用于嵌入式系統。嵌入式 Linux 最流行的例子是 Android 操作系統

但是,需要大量硬件資源來支持嵌入式 Linux,特別是如果它將部署在實時機器對機器 (M2M) 通信、機器人控制或本系列后面重點介紹的復雜計時應用等用例中. 這些資源至少包括支持以太網和其他基本接口的嵌入式硬件平臺(板或片上系統),以及用于容納操作系統、庫、文件系統、應用程序、引導加載程序、等等

就像普通的 Linux 一樣,嵌入式 Linux 是開源的、可修改的,并且是用 C 語言編寫的。同樣就像桌面 Linux 或任何其他操作系統一樣,嵌入式 Linux 的作用是將用戶和應用程序從底層處理器中抽象出來,內存和其他硬件組件;為各種功能分配和交付系統資源;同時管理多個任務和應用程序,等等。因此,嵌入式 Linux 系統堆棧看起來就像您的典型桌面。

盡管如此,如果您現在還沒有注意到,嵌入式 Linux 和傳統桌面 Linux 之間存在許多顯著差異。其中包括直接從閃存而不是硬盤驅動器啟動的能力。

下面提供了一個比較嵌入式和桌面 Linux 之間一些主要差異的圖表。

pYYBAGK5KoqAWPfzAALzjnCxN-I165.png

嵌入式 Linux:交叉編譯器、庫和引導加載程序

由于嵌入式 Linux 是為特定應用程序設計的,因此工程師在開始需要開源操作系統的系統設計時必須使用一些特定的開發工具。下面當然不是一個詳盡的列表,但一個很好的起點是使用正確的庫、強大的交叉編譯器和與 Linux 內核配對的高效引導加載程序。

交叉編譯器

對于不熟悉的人,交叉編譯器是一種編譯器,它執行編寫的代碼以在編譯器所在的機器之外的其他機器上運行。例如,在您的 PC 或筆記本電腦上運行的交叉編譯器能夠生成為嵌入式系統(如 Android 智能手機)編寫的代碼。

poYBAGK5KoOAEIj2AABhUkULLxM649.png

嵌入式 Linux 系統需要交叉編譯器,因為這些設備通常沒有本地編譯代碼所需的資源,因此必須在其他地方編譯代碼然后交付給目標。

當涉及到提供諸如大小優化、支持控制處理的特性等特性的交叉編譯器時,有幾個選項。但是這里列出了一些最常見的交叉編譯器:

構建根

Crosstool-NG

約克托

C 庫

C 庫提供內核和應用程序之間的接口,因此必須是交叉編譯過程的一部分。嵌入式 Linux 系統中的任何程序,無論是用 pythonjava 還是其他語言編寫的,都必須在運行時調用 C 庫,以便通過 Linux 內核訪問硬件資源。

pYYBAGK5KnyAUOx6AADC_0NNnn0815.png

以下是一些用于嵌入式 Linux 系統的流行 C 庫。

glibc – 標準的 GNU C 庫功能豐富,但以占用大量內存為代價。它也沒有任何配置選項。

uClibc – “u”表示 uClibc 是一個用于嵌入式系統的小型微控制器 C 庫。

musl – musl 也很小,在 RAM 和存儲空間有限的系統中是一個不錯的選擇。

eglibc – eglibc 與 glibc 相同,但經過修改使其更適合在嵌入式設備中使用,例如支持配置。

特定應用程序庫

嵌入式 Linux 內核的功能有限,因此需要特定的庫。我們當然不能全部列出,但下面列出了一些更受歡迎的。其中一些將在本系列的后面部分使用。

libgpiod——標準命令行并不是當今與 Linux 設備文件交互的唯一方式。libgpiod 用于與 Linux 設備中的 GPIO 硬件進行交互。

libusb ——libusb 是一個 C 庫,它為來自單一平臺的所有通用 USB 設備提供驅動程序。

套接字——套接字庫連接網絡上的節點。

serdisplib – 這個庫可以驅動多個顯示器,如 OLED、USB 顯示器或帶有內置控制器的顯示器。

Pigpio – Pigpio 庫可用于控制 Raspberry Pi GPIO。

opc-ua – opc-ua 協議是一種適用于時間敏感網絡的協議。

lockdev - 鎖定和解鎖設備

libxls - 該庫用于讀取和轉換 excel 文件。

libstroke – 用于識別鼠標筆劃和手勢的庫。

libserialport – 在編寫使用串行端口的軟件時提取特定于操作系統的詳細信息

hidapi – 用于與 USB 和藍牙 HID 設備通信的庫。血紅蛋白

mjpg_streamer – 用于從一個或多個輸入中捕獲 JPEG 幀并通過 IP 網絡流式傳輸它們

奶酪– 奶酪可以幫助您使用網絡攝像頭拍攝視頻、照片等。

Elisa – 這是一個簡單的音樂播放器,因此您可以播放任何音頻

引導加載程序

引導加載程序是系統上電后運行的第一個代碼,它處理基本的硬件初始化,并從嵌入式 Linux 系統中的硬盤驅動器或 SD 卡或閃存等可引導設備加載操作系統。一旦引導加載程序為 Linux 內核設置了可執行環境并且內核開始執行,就不再需要引導加載程序。

引導加載程序有各種形狀和大小,可以根據用戶或系統需要進行定制。事實上,一些嵌入式電路板帶有引導加載程序。

這里有一些常用的引導加載程序和它們支持的處理器架構。

這些是您可能每天都在使用的各種基于 Linux 的嵌入式系統背后的關鍵構建塊,甚至可能不知道它們運行 Linux,例如智能電視、無線路由器和網絡附加存儲設備。

既然這些基礎知識已經解決,在第 2 部分中,我們將仔細研究嵌入式硬件目標的來龍去脈,我們將在其上運行嵌入式 Linux,稍后將支持我們的以太網 TSN 堆棧。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5072

    文章

    19026

    瀏覽量

    303532
  • Linux
    +關注

    關注

    87

    文章

    11232

    瀏覽量

    208961
  • 路由器
    +關注

    關注

    22

    文章

    3709

    瀏覽量

    113569
收藏 人收藏

    評論

    相關推薦

    RT-Thread 發布 EtherKit開源以太網硬件!

    EtherKit是RT-Thread聯合瑞薩電子推出的一款高性能、多功能以太網MPU開發板,采用瑞薩電子RZ/N2L芯片,搭載ArmCortex-R52內核,主頻高達400MHz;支持TSN的3端口
    的頭像 發表于 11-20 01:07 ?366次閱讀
    RT-Thread 發布 EtherKit開源<b class='flag-5'>以太網</b>硬件!

    嵌入式linux開發的基本步驟有哪些?

    嵌入式Linux開發是一個復雜的過程,涉及到硬件選擇、操作系統移植、驅動開發、應用程序開發等多個方面。以下是嵌入式Linux開發的基本步驟,以及每個步驟的說明。 硬件選擇 在開始
    的頭像 發表于 09-02 09:11 ?413次閱讀

    嵌入式linux開發板怎么操作

    嵌入式Linux開發板是一種基于Linux操作系統的嵌入式系統開發平臺。它通常包括一個處理器、內存、存儲器、輸入/輸出接口等硬件組件,以及一個基于L
    的頭像 發表于 09-02 09:09 ?332次閱讀

    嵌入式linux開發板芯片的工作原理

    嵌入式Linux開發板是一種基于Linux操作系統的嵌入式系統開發平臺,它廣泛應用于工業控制、智能家居、智能交通、醫療設備等領域。 嵌入式
    的頭像 發表于 09-02 09:07 ?344次閱讀

    利用TSN以太網特性改善工業以太網控制器的時序

    電子發燒友網站提供《利用TSN以太網特性改善工業以太網控制器的時序.pdf》資料免費下載
    發表于 08-30 10:53 ?0次下載
    利用<b class='flag-5'>TSN</b><b class='flag-5'>以太網</b>特性改善工業<b class='flag-5'>以太網</b>控制器的時序

    車載以太網與傳統以太網的區別

    車載以太網與傳統以太網在多個方面存在顯著的差異,這些差異主要體現在傳輸速率、實時性、可靠性、物理層標準、應用場景以及技術發展等方面。
    的頭像 發表于 07-25 11:12 ?1495次閱讀

    以太網要怎么連接

    以太網連接是現代計算機網絡通信中最為基礎和重要的環節之一。它利用以太網電纜和網卡等硬件設備,將計算機或其他設備連接到網絡交換機或路由器,從而實現與其他設備或互聯網的通信。以下將詳細介紹以太網
    的頭像 發表于 07-09 10:28 ?998次閱讀

    TSN DDS運轉起來——面向智能汽車的以太網測試解決方案

    概述經緯恒潤作為OPEN聯盟和AUTOSAR聯盟的核心成員,多年來持續為國內外各大OEM和供應商提供車載以太網相關的咨詢服務,涵蓋TCP/IP、SOME/IP、DDS、診斷、TSN等前沿技術
    的頭像 發表于 06-25 16:02 ?1281次閱讀
    讓<b class='flag-5'>TSN</b> DDS運轉起來——面向智能汽車的<b class='flag-5'>以太網</b>測試解決方案

    工業以太網和普通以太網區別在哪

    工業以太網和普通以太網是兩種不同的以太網技術,它們在設計、性能、應用和可靠性等方面存在顯著差異。本文將詳細介紹這兩種以太網技術的區別。 設計差異 工業
    的頭像 發表于 06-11 10:30 ?2400次閱讀

    使用VN5620監控記錄以太網總線數據#車載以太網 #CANape

    以太網硬件
    北匯信息POLELINK
    發布于 :2024年06月09日 16:45:04

    車載以太網硬件接口VN5620設備展示與介紹#車載以太網

    車載以太網
    北匯信息POLELINK
    發布于 :2024年05月31日 10:27:03

    車載以太網接口VN5650使用場景介紹#車載以太網

    以太網
    北匯信息POLELINK
    發布于 :2024年05月11日 17:58:05

    TSN時間敏感網絡四大板塊介紹#TSN #時間敏感網絡 #車載以太網

    車載以太網TSN
    北匯信息POLELINK
    發布于 :2024年04月23日 16:21:30

    PLC以太網開放通信概述

    以太網開放通信概述:   1、以太網開放通信,即就是通信協議是由用戶自由定義的;   2、以太網開放
    發表于 04-16 12:06 ?967次閱讀
    PLC<b class='flag-5'>以太網</b>開放<b class='flag-5'>式</b>通信概述

    和共享以太網相比,交換以太網有什么不同的特點?

    和共享以太網相比,交換以太網有什么不同的特點? 交換以太網是一種通過交換機連接多臺計算機的
    的頭像 發表于 02-21 11:25 ?3276次閱讀