CAN總線簡介

1. CAN總線概述

在這里插入圖片描述

1.1 CAN定義與歷史背景

CAN,全稱為Controller Area Network,是一種基于消息廣播的串行通信協議。它最初由德國Bosch公司在1983年為汽車行業開發,目的是實現汽車內部電子控制單元(ECUs)之間的可靠通信。CAN總線的設計滿足了汽車對安全性、舒適性、方便性、低公害和低成本的要求,通過減少線束數量和實現高速數據通信來優化汽車電子系統。

1.2 CAN總線的標準化

CAN總線已經成為國際標準,具體為ISO 11898系列,這一標準涵蓋了物理層和數據鏈路層的定義。ISO 11898-1定義了數據鏈路層協議,ISO 11898-2規定了高速CAN總線物理層協議,而ISO 11898-3則規定了低速CAN總線物理層協議。此外,還有針對時間觸發通信的ISO 11898-4標準,以及定義節能特性的ISO 11898-5和ISO 11898-6標準。

2. CAN總線通信原理

2.1 多主控制機制

CAN總線采用多主控制(Multi-Master)機制,這意味著網絡上的任何節點都可以隨時開始發送消息。在總線空閑時,最先訪問總線的節點獲得發送權。如果多個節點同時開始發送消息,則通過基于消息標識符(ID)的優先級來解決沖突,具有更高優先級(即ID數值更小)的消息將獲得發送權。

2.2 仲裁機制

CAN總線的仲裁機制是一種非破壞性的過程,它確保了在多個節點同時嘗試發送消息時,總線上的數據傳輸有序進行。當沖突發生時,節點會根據其消息的ID進行比較。如果一個節點的消息ID高于(即優先級較低)正在發送的消息ID,它將停止發送并進入接收模式。這個過程保證了高優先級的消息能夠無阻礙地傳輸。

2.3 同步機制

CAN總線采用基于時間的同步機制,所有節點都以相同的波特率進行通信。位時序包括同步段、位段1和位段2,通過這些段的控制,CAN總線能夠進行位同步,吸收節點時鐘差異產生的波特率誤差,確保數據傳輸的準確性。

3. CAN總線的優缺點

3.1 優點

  • 可靠性:CAN總線具有錯誤檢測和恢復機制,能夠確保數據傳輸的可靠性。
  • 靈活性:支持多種網絡拓撲結構,易于擴展。
  • 實時性:由于多主控制和仲裁機制,CAN總線能夠快速響應網絡事件。
  • 成本效益:使用雙絞線作為傳輸介質,降低了成本。
  • 抗干擾性:差分信號傳輸提高了CAN總線在工業環境中的抗干擾能力。

3.2 缺點

  • 速率限制:最高傳輸速率為1Mbps,可能不滿足高帶寬需求。
  • 節點限制:理論上節點數量無限制,但實際應用中受限于網絡延遲和電氣負載。
  • 技術復雜性:相比于簡單的通信協議,CAN總線的實現更為復雜。

4. CAN總線的仲裁機制和同步機制

4.1 仲裁機制

  • 節點A 發送消息,ID為A001
  • 節點B 同時發送消息,ID為B010
  • CAN總線 檢測到兩個信號,開始仲裁過程。
  • 仲裁邏輯 比較兩個ID,A001優先級更高。
  • 結果 節點A 繼續發送,節點B 暫停發送。

4.2 同步機制

  1. 開始通信:節點選擇發送數據。
  2. 位時序設定:所有節點根據設定的波特率調整位時序。
  3. 同步段:節點等待并檢測總線上的跳變沿,實現同步。
  4. 位段1和位段2:節點根據采樣點采樣數據,并根據需要調整位段長度。
  5. 數據傳輸:數據按照同步的位時序在總線上傳輸。
  6. 錯誤檢測:如果發現錯誤,節點發送錯誤標志并嘗試重新同步。
  7. 傳輸完成:數據成功傳輸后,總線回到空閑狀態。

2. CAN總線工作原理

2.1 CAN總線結構

CAN總線結構由物理層和數據鏈路層組成,其中物理層負責傳輸原始的比特流,而數據鏈路層則負責幀的組織和錯誤檢測。

  • 物理層:由兩條導線構成,即CAN_H(高電平)和CAN_L(低電平),它們之間的電壓差表示傳輸的數據。物理層還涉及電氣特性的定義,如差分電壓、終端電阻等。
  • 數據鏈路層:定義了數據幀的格式和結構,包括幀起始、仲裁場、控制場、數據場、CRC場、應答場和幀結束。數據鏈路層還負責錯誤檢測和處理機制。

2.2 通信方式

CAN總線的通信方式基于以下關鍵概念:

  • 幀類型:CAN總線支持多種幀類型,包括數據幀、遠程幀、錯誤幀和過載幀。每種幀都有其特定的用途和結構。
  • 位填充:為了保持同步,CAN總線使用位填充技術。當發送器檢測到5個連續的相同電平位時,會在第6位插入一個相反電平的位。
  • 錯誤檢測:CAN總線能夠檢測多種錯誤類型,包括位錯誤、幀錯誤、CRC錯誤等。錯誤檢測機制確保了數據傳輸的可靠性。
  • 應答機制:當一個節點成功接收到一個數據幀后,它會發送一個應答(ACK)位,以通知發送節點幀已被成功接收。

2.3 仲裁機制

仲裁機制是CAN總線解決總線訪問沖突的關鍵技術。當兩個或多個節點同時開始發送消息時,仲裁機制通過比較消息的標識符(ID)來決定哪個節點可以繼續發送。

  • 標識符比較:節點在發送數據時,會將自己的消息ID與總線上其他節點的消息ID進行比較。
  • 優先級確定:具有較小數值ID的消息具有更高的優先級,可以繼續在總線上傳輸。
  • 退避算法:優先級較低的消息將停止發送,等待總線空閑后再重新發送。

2.4 同步機制

同步機制確保所有節點在數據傳輸過程中保持同步,即使它們的時鐘頻率存在微小差異。

  • 波特率設置:所有節點必須使用相同的波特率進行通信,以保證位的準確傳輸。
  • 位時序:位時序包括同步段、傳播段和相位緩沖段,這些段的持續時間可以編程,以適應不同節點的時鐘差異。
  • 重同步:如果節點檢測到總線上的位時序與自己的不同步,它可以調整自己的位時序以重新同步。

4. CAN總線的仲裁機制和同步機制

4.1 仲裁機制

  • 節點A:發送具有ID A001 的消息。
  • 節點B:同時發送具有ID B010 的消息。
  • 總線檢測:CAN總線檢測到兩個信號并開始仲裁過程。
  • 仲裁邏輯:比較兩個ID,A001 優先級更高。
  • 結果:節點A繼續發送,節點B暫停發送。

4.2 同步機制流

  1. 開始通信:節點選擇發送數據。
  2. 位時序設定:所有節點根據設定的波特率調整位時序。
  3. 同步段:節點等待并檢測總線上的跳變沿,實現同步。
  4. 位段1和位段2:節點根據采樣點采樣數據,并根據需要調整位段長度。
  5. 數據傳輸:數據按照同步的位時序在總線上傳輸。
  6. 錯誤檢測:如果發現錯誤,節點發送錯誤標志并嘗試重新同步。
  7. 傳輸完成:數據成功傳輸后,總線回到空閑狀態。

3. CAN總線仲裁機制

3.1 仲裁機制原理

CAN總線的仲裁機制是基于每個節點發送的消息標識符(ID)的優先級來解決總線訪問沖突的。在CAN協議中,消息的ID越小,其優先級越高。當兩個或多個節點同時開始發送消息時,它們將通過仲裁機制來決定哪個節點可以繼續在總線上傳輸其消息。

  • 固定優先級:每個節點的消息都有一個固定的優先級,由其消息ID決定。
  • 非破壞性:仲裁過程不會破壞已經在總線上傳輸的消息,保證了通信的可靠性。
  • 實時性:仲裁機制確保了高優先級的消息可以迅速獲得總線訪問權,滿足了實時性要求。

3.2 仲裁過程詳解

當多個節點同時開始發送消息時,仲裁過程如下:

  1. 開始發送:所有發送節點開始發送它們的消息。
  2. 監控總線:節點在發送的同時,持續監控總線上的信號狀態。
  3. 比較ID:節點將自己的消息ID與總線上其他節點的消息ID進行比較。
  4. 確定優先級:如果一個節點發現其ID大于總線上的ID(即優先級較低),它將停止發送。
  5. 繼續發送:如果節點的ID是所有發送節點中最小的(即優先級最高),它將繼續發送消息。
  6. 退避:失去仲裁的節點將進入退避期,等待總線空閑后再嘗試發送。
  7. 完成發送:獲得總線訪問權的節點完成其消息的發送。

仲裁機制的關鍵在于,它允許網絡中的所有節點公平地競爭總線訪問權,同時確保了高優先級消息的快速傳輸。這一機制是CAN總線能夠在高實時性要求下穩定運行的重要因素之一。

4. CAN總線同步機制

4.1 同步機制原理

CAN總線的同步機制確保了網絡上所有節點能夠在相同的時間基準下進行通信,即使它們可能具有不同的時鐘頻率。同步機制的核心在于位時間的精確控制和調整,使得所有節點都能夠在正確的時刻發送和接收數據。

  • 波特率統一:所有節點必須同意一個共同的波特率,這是同步通信的基礎。
  • 位時序標準化:位時序被標準化為同步段、傳播段和相位緩沖段,以適應不同節點的時鐘頻率差異。
  • 動態調整:節點可以動態調整自己的位時序,以與網絡上的其他節點保持同步。

4.2 同步過程詳解

同步過程涉及以下幾個關鍵步驟:

  1. 同步段:在每個位的開始,所有節點在總線上尋找跳變沿(從隱性電平到顯性電平或反之)來同步自己的時鐘。
  2. 傳播段:傳播段是為了補償信號在物理媒介中傳播所需的時間。
  3. 相位緩沖段:相位緩沖段允許節點根據需要調整自己的時鐘,以適應網絡中的時鐘差異。
  4. 采樣點:節點在位時序的指定點(采樣點)上讀取總線上的電平狀態,以確定傳輸的是隱性電平還是顯性電平。
  5. 位填充:如果連續的相同電平位過多,將通過位填充引入一個相反的電平位,以維持同步。
  6. 重同步:如果節點檢測到與總線不同步,它可以調整自己的位時序參數,以實現重同步。
  7. 錯誤處理:如果檢測到錯誤,節點將發送錯誤標志,并可能根據錯誤的性質進行重同步。

通過這些步驟,CAN總線的同步機制確保了數據傳輸的準確性和網絡通信的可靠性。

5. CAN總線的優點與缺點

5.1 優點分析

CAN總線作為一種廣泛應用的通信協議,具有以下顯著優點:

  • 高可靠性:CAN總線具有強大的錯誤檢測能力,包括位錯誤、幀錯誤和CRC錯誤等,確保數據傳輸的準確性。
  • 實時性:由于多主控制機制和仲裁機制,CAN總線能夠快速響應網絡事件,滿足實時性要求。
  • 網絡靈活性:CAN總線支持多種網絡拓撲結構,包括線型、星型和環形等,便于根據實際需求進行網絡布局。
  • 成本效益:使用雙絞線作為傳輸介質,相對于其他通信協議,CAN總線在成本上更具優勢。
  • 抗干擾性:CAN總線采用差分信號傳輸,有效提高了抗電磁干擾的能力,適合工業環境使用。
  • 節點擴展性:理論上節點數量無限制,便于系統的擴展和升級。
  • 低延遲:由于CAN總線的仲裁機制,高優先級的消息可以快速獲得總線訪問權,從而降低通信延遲。
  • 標準化:作為國際標準化的通信協議,CAN總線具有良好的兼容性和互操作性。

5.2 缺點分析

盡管CAN總線具有許多優點,但在某些應用場景下也存在一些局限性:

  • 速率限制:CAN總線的最高傳輸速率為1Mbps,這在一些需要更高數據傳輸速率的應用中可能成為瓶頸。
  • 節點性能依賴:實際可連接的節點數量受限于網絡延遲和電氣負載,大量節點的加入可能會影響網絡性能。
  • 技術復雜性:相比于一些簡單的通信協議,CAN總線的實現更為復雜,需要專業的知識和技術支持。
  • 故障診斷困難:當網絡出現故障時,故障診斷和定位可能較為困難,需要專業的工具和方法。
  • 對網絡管理要求高:為了保持網絡的穩定性和可靠性,需要對網絡進行有效的管理和維護。
  • 兼容性問題:在與其他類型的通信協議集成時,可能會遇到兼容性問題,需要額外的接口和轉換技術。
  • 單一總線故障影響大:CAN總線通常采用雙絞線,一旦總線出現故障,可能會影響整個網絡的通信。
  • 數據傳輸效率:在某些情況下,由于仲裁和錯誤處理機制的介入,可能會降低數據傳輸的效率。

6. CAN總線應用場景

6.1 汽車電子

CAN總線在汽車電子領域的應用非常廣泛,它是現代汽車內部通信的關鍵技術之一。

  • 系統集成:汽車中的各種電子控制單元(ECUs),如發動機管理系統、制動系統、娛樂系統等,都通過CAN總線相互連接,實現了高度集成。
  • 實時控制:CAN總線的實時性保證了汽車關鍵系統的快速響應,如防抱死制動系統(ABS)和牽引力控制系統。
  • 診斷與維護:CAN總線使得對汽車的遠程診斷和維護成為可能,提高了維修效率和降低了成本。
  • 數據共享:不同ECUs之間可以共享數據,如速度信息、發動機狀態等,提高了系統的整體性能和可靠性。

6.2 工業自動化

CAN總線同樣在工業自動化領域扮演著重要角色,特別是在工業4.0的背景下。

  • 設備互聯:工業機器人、傳感器、控制器等設備通過CAN總線互聯,實現信息的實時交換和協同工作。
  • 分布式控制:CAN總線支持分布式控制系統的構建,各個控制節點可以獨立工作,同時保持數據同步。
  • 靈活布局:工業現場的設備布局經常變動,CAN總線易于布線和擴展,適應了這種變化需求。
  • 高可靠性:工業環境復雜多變,CAN總線的高可靠性和錯誤檢測機制確保了控制系統的穩定運行。
  • 遠程監控:通過CAN總線,可以實現對工業設備的遠程監控和控制,提高了生產效率和管理水平。

7. CAN總線與其他總線比較

7.1 CAN總線與SPI總線

7.1.1 通信方式

  • CAN總線:采用多主控制機制,支持多個節點同時競爭總線使用權,通過仲裁機制確保高優先級數據的傳輸。
  • SPI總線:基于主從架構,有一個主設備和多個從設備,主設備控制數據傳輸的時鐘信號和傳輸過程。

7.1.2 數據傳輸速率

  • CAN總線:最高傳輸速率可達1Mbps,適用于需要較高實時性的應用場景。
  • SPI總線:速率可達10Mbps或更高,取決于主設備和從設備的能力,以及通信距離。

7.1.3 網絡拓撲

  • CAN總線:支持線性或總線型拓撲,易于擴展,適用于復雜的網絡結構。
  • SPI總線:通常采用星型拓撲,從設備較少,適合簡單的點對點通信。

7.1.4 錯誤處理

  • CAN總線:具有強大的錯誤檢測和恢復機制,如CRC校驗、ACK機制等。
  • SPI總線:錯誤檢測能力較弱,通常依賴于主設備對從設備的管理。

7.1.5 應用場景

  • CAN總線:廣泛應用于汽車電子、工業自動化等需要高可靠性和實時性的領域。
  • SPI總線:常用于微控制器與外設之間的通信,如傳感器、存儲器等。

7.2 CAN總線與I2C總線

7.2.1 通信方式

  • CAN總線:基于廣播機制,所有節點共享同一通信介質,通過仲裁機制解決沖突。
  • I2C總線:同樣采用主從架構,但允許多個主設備和多個從設備,通過地址來區分不同的從設備。

7.2.2 數據傳輸速率

  • CAN總線:最高傳輸速率為1Mbps,適合中高速數據傳輸。
  • I2C總線:速率較低,通常在100kHz至400kHz之間,適用于低速數據傳輸。

7.2.3 網絡拓撲

  • CAN總線:支持復雜的網絡拓撲,易于實現網絡擴展。
  • I2C總線:采用總線型拓撲,布線相對簡單,但節點數量受限于總線容量。

7.2.4 錯誤處理

  • CAN總線:具備多種錯誤檢測手段,能夠確保數據傳輸的可靠性。
  • I2C總線:錯誤檢測主要依賴于ACK機制,對錯誤的處理能力有限。

7.2.5 應用場景

  • CAN總線:適用于汽車電子、工業控制等對實時性和可靠性要求較高的場合。
  • I2C總線:常用于消費電子產品中微控制器與低速外設的通信,如傳感器、EEPROM等。

8. 結論與未來展望

8.1 結論

CAN總線作為一種成熟且廣泛使用的通信協議,在汽車電子和工業自動化等領域發揮著重要作用。其獨特的多主控制機制、非破壞性仲裁機制和同步機制,為網絡通信提供了高可靠性、實時性和靈活性。同時,CAN總線的標準化和錯誤檢測機制進一步增強了其在復雜工業環境中的穩定性和抗干擾能力。然而,隨著技術的發展和應用需求的提高,CAN總線也面臨著速率限制、技術復雜性等挑戰。

8.2 未來展望

面向未來,CAN總線技術有望在以下幾個方面得到進一步的發展和完善:

  • 速率提升:隨著通信技術的進步,提高CAN總線的傳輸速率,以滿足更高帶寬需求的場景,是一個重要的研究方向。
  • 智能化:集成更先進的智能化算法,如機器學習,以提高CAN總線網絡的自適應性和自我管理能力。
  • 集成新技術:結合5G、物聯網(IoT)等新興技術,使CAN總線能夠更好地融入未來智能系統和網絡。
  • 簡化設計:研究和開發更簡化的CAN總線實現方案,降低技術門檻,使其更易于部署和維護。
  • 增強安全性:隨著網絡攻擊手段的不斷演進,加強CAN總線網絡的安全性,保護數據不被未授權訪問或篡改,變得尤為重要。
  • 標準化擴展:繼續推動CAN總線的國際標準化進程,確保不同設備和系統之間的互操作性。
  • 跨領域應用:探索CAN總線在新興領域的應用,如航空航天、醫療設備等,以滿足不同行業的特殊需求。

總體而言,CAN總線作為一種可靠且高效的通信協議,在未來仍將繼續發展,并在更多領域發揮其重要作用。隨著技術的不斷創新和優化,CAN總線將更好地適應未來智能系統的需求,為用戶提供更加安全、高效和靈活的通信解決方案。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/16468.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/16468.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/16468.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

用Vuex存儲可配置下載的ip地址(用XML進行ajax請求配置文件)

1.在public文件夾下創建一個名為Configuration的文件在創建一個Configuration.txt里面就放IP地址(這里的名字可以隨便命名一定性的被人解讀文件含義) 例如: http://172.171.208.1:80032.在store文件夾中創建一個名為 ajaxModule.js 的 Vuex …

2. CSS選擇器與偽類

2.1 基本選擇器回顧 在開始介紹CSS3選擇器之前&#xff0c;我們先回顧一下CSS的基本選擇器。這些選擇器是所有CSS開發的基礎。 2.1.1 元素選擇器 元素選擇器用于選中指定類型的HTML元素。 /* 選中所有的<p>元素 */ p {color: blue; }2.1.2 類選擇器 類選擇器用于選中…

03自動輔助導航駕駛NOP其實就是NOA

蔚來NOP是什么意思&#xff1f;蔚來NOP是啥 蔚來NOP的意思就是NavigateonPilot智能輔助導航駕駛&#xff0c;也就是大家俗稱的高階輔助駕駛&#xff0c;在車主設定好導航路線&#xff0c;并且符合開啟NOP條件的前提下&#xff0c;蔚來NOP可以代替駕駛員完成從A點到B點的智能輔助…

深入理解數倉開發(二)數據技術篇之數據同步

1、數據同步 數據同步我們之前在數倉當中使用了多種工具&#xff0c;比如使用 Flume 將日志文件從服務器采集到 Kafka&#xff0c;再通過 Flume 將 Kafka 中的數據采集到 HDFS。使用 MaxWell 實時監聽 MySQL 的 binlog 日志&#xff0c;并將采集到的變更日志&#xff08;json 格…

【二叉樹】:LeetCode:100.相同的數(分治)

&#x1f381;個人主頁&#xff1a;我們的五年 &#x1f50d;系列專欄&#xff1a;初階初階結構刷題 &#x1f389;歡迎大家點贊&#x1f44d;評論&#x1f4dd;收藏?文章 1.問題描述&#xff1a; 2.問題分析&#xff1a; 二叉樹是區分結構的&#xff0c;即左右子樹是不一…

[JDK工具-6] jmap java內存映射工具

文章目錄 1. 介紹2. 主要選項3. 生成java堆轉儲快照 jmap -dump4. 顯示堆詳細信息 jmap -heap pid5. 顯示堆中對象統計信息 jmap -histo pid jmap(Memory Map for Java) 1. 介紹 位置&#xff1a;jdk\bin 作用&#xff1a; jdk安裝后會自帶一些小工具&#xff0c;jmap命令(Mem…

PySide6升級導致的Fatal Python error: could not initialize part 2問題及其解決方法

問題出現 把PySide6從6.6.1升級到6.7.1&#xff0c;結果運行程序的時候就報如下錯誤&#xff1a; Traceback (most recent call last): File "signature_bootstrap.py", line 77, in bootstrap File "signature_bootstrap.py", line 93, in find_inc…

Kafka SASL_SSL集群認證

背景 公司需要對kafka環境進行安全驗證,目前考慮到的方案有Kerberos和SSL和SASL_SSL,最終考慮到安全和功能的豐富度,我們最終選擇了SASL_SSL方案。處于知識積累的角度,記錄一下kafka SASL_SSL安裝部署的步驟。 機器規劃 目前測試環境公搭建了三臺kafka主機服務,現在將詳…

H3CNE-7-TCP和UDP協議

TCP和UDP協議 TCP&#xff1a;可靠傳輸&#xff0c;面向連接 -------- 速度慢&#xff0c;準確性高 UDP&#xff1a;不可靠傳輸&#xff0c;非面向連接 -------- 速度快&#xff0c;但準確性差 面向連接&#xff1a;如果某應用層協議的四層使用TCP端口&#xff0c;那么正式的…

智能家居完結 -- 整體設計

系統框圖 前情提要: 智能家居1 -- 實現語音模塊-CSDN博客 智能家居2 -- 實現網絡控制模塊-CSDN博客 智能家居3 - 實現煙霧報警模塊-CSDN博客 智能家居4 -- 添加接收消息的初步處理-CSDN博客 智能家居5 - 實現處理線程-CSDN博客 智能家居6 -- 配置 ini文件優化設備添加-CS…

【MySQL】聊聊count的相關操作

在平時的操作中&#xff0c;經常使用count進行操作&#xff0c;計算統計的數據。那么具體的原理是如何的&#xff1f;為什么有時候執行count很慢。 count的實現方式 select count(*) from student;對于MyISAM引擎來說&#xff0c;會把一個表的總行數存儲在磁盤上&#xff0c;…

Linux下Vision Mamba環境配置+多CUDA版本切換

上篇文章大致講了下Vision Mamba的相關知識&#xff0c;網上關于Vision Mamba的配置博客太多&#xff0c;筆者主要用來整合下。 筆者在Win10和Linux下分別嘗試配置相關環境。 Win10下配置 失敗 \textcolor{red}{失敗} 失敗&#xff0c;最后出現的問題如下&#xff1a; https://…

基于物聯網架構的電子小票服務系統

1.電子小票物聯網架構 采用感知層、網絡層和應用層的3層物聯網體系架構模型&#xff0c;電子小票物聯網的架構見圖1。 圖1 電子小票物聯網架構 感知層的小票智能硬件能夠取代傳統的小票打印機&#xff0c;在不改變商家原有收銀系統的前提下&#xff0c;采集收音機待打印的購物…

react中的數據驅動視圖,useState()的使用

前端開發如今有一個很重要的思想就是數據驅動視圖&#xff0c;數據發生變化使ui發生變化&#xff0c;比如一個變量count&#xff0c;為0顯示三個按鈕&#xff0c;為1顯示一個按鈕&#xff0c;為2顯示兩個按鈕。這就是一個簡單的數據驅動視圖。 import { useState } from reactf…

修改 ant design tour 漫游式導航的彈窗邊框樣式

一 說明 應項目要求&#xff0c;調整ant design tour 彈窗邊框的樣式。tour 原本樣式是有遮罩層&#xff0c;因此沒有邊框看起來也不突兀。原圖如下&#xff1a; 但是UI設計是取消遮罩層&#xff0c;并設置邊框樣式。當 取消 了遮罩層&#xff0c;沒有設置邊框樣式的圖片如下&a…

python考試成績管理與分析:從列表到方差

新書上架~&#x1f447;全國包郵奧~ python實用小工具開發教程http://pythontoolsteach.com/3 歡迎關注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目錄 一、考試成績的輸入與列表管理 二、成績的總分與平均成績計算 三、成績方差的計算 四、成…

雙指針用法練習題(2024/5/26)

1三數之和 給你一個整數數組 nums &#xff0c;判斷是否存在三元組 [nums[i], nums[j], nums[k]] 滿足 i ! j、i ! k 且 j ! k &#xff0c;同時還滿足 nums[i] nums[j] nums[k] 0 。請 你返回所有和為 0 且不重復的三元組。 注意&#xff1a;答案中不可以包含重復的三元…

人工智能場景下的網絡負載均衡技術

AI技術驅動智能應用井噴&#xff0c;智能算力增速遠超通用算力。IDC預測&#xff0c;未來五年&#xff0c;我國智能算力規模年復合增長率將超50%&#xff0c;開啟數據中心算力新紀元。隨著需求激增&#xff0c;數據中心或智算網絡亟需擴容、增速、減時延&#xff0c;確保網絡穩…

rockylinux 利用nexus 搭建私服yum倉庫

簡單說下為啥弄這個私服&#xff0c;因為自己要學習一些東西&#xff0c;比如新版的k8s等&#xff0c;其中會涉及到一些yum的安裝&#xff0c;為了防止因網絡問題導致yum安裝失敗&#xff0c;和重復下載&#xff0c;所以弄個私服&#xff0c;當然也有為了意外保障的想法&#x…