CubeMX配置STM32VET6實現網口通信(無操作系統版-附源碼)

下面是使用CubeMX配置STM32F407VET6,實現以太網通訊(PHY芯片為LAN8720)的具體步驟總結:

一、硬件連接方式:

  • 硬件原理圖:

    使用外部晶振為PHY芯片提供時鐘。

image-20250407202838959

  • STM32F407VET6 與 LAN8720 采用 RMII 模式連接。
STM32F407VET6引腳功能(RMII)LAN8720引腳
PA1ETH_REF_CLKREF_CLK(50MHz時鐘輸入)
PA2ETH_MDIOMDIO
PC1ETH_MDCMDC
PA7ETH_CRS_DVCRS_DV
PC4ETH_RXD0RXD0
PC5ETH_RXD1RXD1
PB11ETH_TX_ENTX_EN
PB12ETH_TXD0TXD0
PB13ETH_TXD1TXD1
PA8ETH_RESETnRST

注意:

  • LAN8720使用RMII模式,需提供50MHz外部時鐘至LAN8720芯片的XTAL1/CLKIN引腳。

    • LAN8720芯片外接的晶振頻率為 25MHz,連接至LAN8720的XTAL1/CLKIN管腳。

      STM32F407在使用RMII模式進行以太網通信時,LAN8720內部會將這個25MHz時鐘倍頻為50MHz后輸出到STM32的PA1引腳(ETH_REF_CLK),因此你只需要給LAN8720提供一個25MHz的晶振即可。

      • 外部晶振:25MHz
      • RMII參考時鐘:LAN8720輸出50MHz到STM32
  • LAN8720的地址引腳PHYAD0置0(接地),則默認PHY地址為0(我這里默認接地了,只是原理圖沒畫出來)。

    • 根據LAN8720官方Datasheet說明:
    • 當PHYAD0引腳 下拉到GND 時,PHY地址為 0
    • 當PHYAD0引腳 上拉到VDDIO 時,PHY地址為 1

    在原理圖中,這個引腳既未上拉也未下拉(即懸空狀態),通常會導致PHY地址不確定,在實際工作中可能會導致STM32無法正確識別PHY芯片。


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

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

相關文章

Android Compose 中獲取和使用 Context 的完整指南

在 Android Jetpack Compose 中,雖然大多數 UI 組件不再需要直接使用 Context,但有時你仍然需要訪問它來執行一些 Android 平臺特定的操作。以下是幾種在 Compose 中獲取和使用 Context 的方法: 1. 使用 LocalContext 這是 Compose 中最常用…

在VMware下Hadoop分布式集群環境的配置--基于Yarn模式的一個Master節點、兩個Slaver(Worker)節點的配置

你遇到的大部分ubuntu中配置hadoop的問題這里都有解決方法!!!(近10000字) 概要 在Docker虛擬容器環境下,進行Hadoop-3.2.2分布式集群環境的配置與安裝,完成基于Yarn模式的一個Master節點、兩個…

PID燈控算法

根據代碼分析,以下是針對PID算法和光敏傳感器系統的優化建議,分為算法優化、代碼結構優化和系統級優化三部分: 一、PID算法優化 1. 增量式PID 輸出平滑 // 修改PID計算函數 uint16_t PID_calculation_fun(void) {if(PID_Str_Val.Tdata >…

文件映射mmap與管道文件

在用戶態申請內存,內存內容和磁盤內容建立一一映射 讀寫內存等價于讀寫磁盤 支持隨機訪問 簡單來說,把磁盤里的數據與內存的用戶態建立一一映射關系,讓讀寫內存等價于讀寫磁盤,支持隨機訪問。 管道文件:進程間通信機…

在 Java 中調用 ChatGPT API 并實現流式接收(Server-Sent Events, SSE)

文章目錄 簡介OkHttp 流式獲取 GPT 響應通過 SSE 流式推送前端后端代碼消息實體接口接口實現數據推送給前端 前端代碼創建 sseClient.jsvue3代碼 優化后端代碼 簡介 用過 ChatGPT 的伙伴應該想過自己通過調用ChatGPT官網提供的接口來實現一個自己的問答機器人,但是…

硬盤分區格式之GPT(GUID Partition Table)筆記250407

硬盤分區格式之GPT(GUID Partition Table)筆記250407 GPT(GUID Partition Table)硬盤分區格式詳解 GPT(GUID Partition Table)是替代傳統 MBR 的現代分區方案,專為 UEFI(統一可擴展固…

Vite環境下解決跨域問題

在 Vite 開發環境中,可以通過配置代理來解決跨域問題。以下是具體步驟: 在項目根目錄下找到 vite.config.js 文件:如果沒有,則需要創建一個。配置代理:在 vite.config.js 文件中,使用 server.proxy 選項來…

交換機與ARP

交換機與 ARP(Address Resolution Protocol,地址解析協議) 的關系主要體現在 局域網(LAN)內設備通信的地址解析與數據幀轉發 過程中。以下是二者的核心關聯: 1. 基本角色 交換機:工作在 數據鏈…

【Spring】小白速通AOP-日志記錄Demo

這篇文章我將通過一個最常用的AOP場景-方法調用日志記錄&#xff0c;帶你徹底理解AOP的使用。例子使用Spring BootSpring AOP實現。 如果對你有幫助可以點個贊和關注。謝謝大家的支持&#xff01;&#xff01; 一、Demo實操步驟&#xff1a; 1.首先添加Maven依賴 <!-- Sp…

git功能點管理

需求&#xff1a; 功能模塊1 已經完成&#xff0c;已經提交并推送到遠程&#xff0c;準備交給測試。功能模塊2 已經完成&#xff0c;但不提交給測試&#xff0c;繼續開發。功能模塊3 正在開發中。 管理流程&#xff1a; 創建并開發功能模塊1&#xff1a; git checkout main…

QGIS實戰系列(六):進階應用篇——Python 腳本自動化與三維可視化

歡迎來到“QGIS實戰系列”的第六期!在前幾期中,我們從基礎操作到插件應用逐步提升了 QGIS 技能。這一篇,我們將邁入進階領域,探索如何用 Python 腳本實現自動化,以及如何創建三維可視化效果,讓你的 GIS 項目更高效、更立體。 第一步:Python 腳本自動化 QGIS 內置了 Py…

高德地圖 3D 渲染-區域紋理圖添加

引入-初始化地圖&#xff08;關鍵代碼&#xff09; // 初始化頁面引入高德 webapi -- index.html 文件 <script src https://webapi.amap.com/maps?v2.0&key您申請的key值></script>// 添加地圖容器 <div idcontainer ></div>// 地圖初始化應該…

ffmpeg視頻轉碼相關

ffmpeg視頻轉碼相關 簡介參數 實戰舉栗子獲取視頻時長視頻轉碼mp4文件轉為hls m3u8 ts等文件圖片轉視頻抽取視頻第一幀獲取基本信息 轉碼日志輸出詳解轉碼耗時測試 簡介 FFmpeg 是領先的多媒體框架&#xff0c;能夠解碼、編碼、 轉碼、復用、解復用、流、過濾和播放 幾乎所有人…

【ISP】HDR技術中Sub-Pixel與DOL的對比分析

一、原理對比 Sub-Pixel&#xff08;空間域HDR&#xff09; ? 核心機制&#xff1a;在單個像素內集成一大一小兩個子像素&#xff08;如LPD和SPD&#xff09;&#xff0c;利用其物理特性差異&#xff08;靈敏度、滿阱容量&#xff09;同時捕捉不同動態范圍的信號。 ? 大像素&…

Vulnhub-IMF靶機

本篇文章旨在為網絡安全滲透測試靶機教學。通過閱讀本文&#xff0c;讀者將能夠對滲透Vulnhub系列IMF靶機有一定的了解 一、信息收集階段 靶機下載地址&#xff1a;https://www.vulnhub.com/entry/imf-1,162/ 因為靶機為本地部署虛擬機網段&#xff0c;查看dhcp地址池設置。得…

Linux內核中TCP協議棧的實現:tcp_close函數的深度剖析

引言 TCP(傳輸控制協議)作為互聯網協議族中的核心協議之一,負責在不可靠的網絡層之上提供可靠的、面向連接的字節流服務。Linux內核中的TCP協議棧實現了TCP協議的全部功能,包括連接建立、數據傳輸、流量控制、擁塞控制以及連接關閉等。本文將深入分析Linux內核中tcp_close…

java+postgresql+swagger-多表關聯insert操作(七)

入參為json&#xff0c;然后根據需要對多張表進行操作&#xff1a; 入參格式&#xff1a; [{"custstoreName":"swagger-測試經銷商01","customerName":"swagger-測試客戶01","propertyNo":"swaggertest01",&quo…

R語言——繪制生命曲線圖(細胞因子IL5)

繪制生命曲線圖&#xff08;根據細胞因子&#xff09; 說明流程代碼加載包讀取Excel文件清理數據重命名列名處理IL-5中的"<"符號 - 替換為檢測下限的一半首先找出所有包含"<"的值檢查缺失移除缺失值根據IL-5中位數將患者分為高低兩組 創建生存對象擬…

Python----計算機視覺處理(Opencv:道路檢測完整版:透視變換,提取車道線,車道線擬合,車道線顯示,)

Python----計算機視覺處理&#xff08;Opencv:道路檢測之道路透視變換) Python----計算機視覺處理&#xff08;Opencv:道路檢測之提取車道線&#xff09; Python----計算機視覺處理&#xff08;Opencv:道路檢測之車道線擬合&#xff09; Python----計算機視覺處理&#xff0…

【Oracle篇】跨字符集遷移:基于數據泵的ZHS16GBK轉AL32UTF8全流程遷移

&#x1f4ab;《博主主頁》&#xff1a;奈斯DB-CSDN博客 &#x1f525;《擅長領域》&#xff1a;擅長阿里云AnalyticDB for MySQL(分布式數據倉庫)、Oracle、MySQL、Linux、prometheus監控&#xff1b;并對SQLserver、NoSQL(MongoDB)有了解 &#x1f496;如果覺得文章對你有所幫…