在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

如何利用HAL庫去驅動W5500芯片呢

工程師鄧生 ? 來源:嵌入式技術開發 ? 作者:Mr張工 ? 2022-09-16 18:04 ? 次閱讀

W5500 芯片是一款集成全硬件 TCP/IP 協議棧的嵌入式以太網控制器,為單片機提供了更加簡單、快速、穩定、安全的以太網接入方案。采用標準4線SPI接口,理論速率上可以達到 80MHz。

硬件設計

原理圖如下,需要注意的是R12~R17幾個電阻是模式選擇,根據實際需求選擇焊接哪些。

58ffed06-3571-11ed-ba43-dac502259ad0.png

芯片采樣SPI接口與單片機連接,再加上INT和RST引腳,共占用6個IO,其中INT引腳可以不用,RST一般需要連接。

網口可以使用帶網絡變壓器的接口,或者網絡變壓器和接口獨立的,都可以,這里使用的HR911105A是帶網絡變壓器的。、

軟件設計

W5500官方提供了一個完整的驅動庫,可以使用戶不必太關心底層寄存器的配置,使用起來非常方便。

接下來,使用STM32CubeMx軟件初始化配置,主要是SPI配置如下:

594fbde0-3571-11ed-ba43-dac502259ad0.png

配置完成后,生成代碼。然后將官方的驅動庫添加到工程中。

下載完成后,可以看到,驅動庫中包含了W5100、W5200等多個芯片的驅動:

596fccfc-3571-11ed-ba43-dac502259ad0.png

我們只需將W5500文件夾下的.c文件以及socket.c和wizchip_conf.c文件添加到工程中即可。如下:

598ef370-3571-11ed-ba43-dac502259ad0.png

打開wizchip_conf.c文件,可以看到,里面定義了一些SPI片選及讀寫的函數,但內容都是空的,這些是需要我們自己實現的。我們直接添加如下程序到文件中,實現芯片的復位和參數初始化功能。


pYYBAGMkSwWAH191AAEBFxs1WNg372.jpgpYYBAGMkSw-AS9zgAAFwKgEA0e8246.jpg

其中,W5500_ChipInit初始化函數中注冊的SPI相關函數定義如下:

pYYBAGMkSxyAbDkYAADTME3RNII985.jpgpYYBAGMkSzOAVMR6AAAeWD6ULqM888.jpg

添加完成后,直接在主函數中調用W5500_ChipInit();即可完成初始化。初始化完成后,可以實現TCP、UDP等的通訊,以TCP客戶端程序為例,程序如下。程序比較簡單,就不做詳細分析了。

poYBAGMkS1OASYYyAAELPk3YZI8281.jpgpYYBAGMkS1qAeg_DAAAsu5R9GLc523.jpg

另外,官網還有很多其它應用的例程可供參考,非常實用:

59a45300-3571-11ed-ba43-dac502259ad0.png

總結

對于大多數內部沒有以太網控制器的單片機來說,W5500是個很不錯的選擇。即使是帶有以太網控制器的單片機,如STM32F407系列,也需要外部的PHY芯片才行,而且占用IO多,還需要移植軟件協議棧,軟件上更復雜一些。

審核編輯:劉清

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

    關注

    41

    文章

    3670

    瀏覽量

    131030
  • 以太網控制器

    關注

    0

    文章

    40

    瀏覽量

    12948
  • W5500
    +關注

    關注

    5

    文章

    45

    瀏覽量

    18032

原文標題:STM32使用HAL庫驅動W5500

文章出處:【微信號:嵌入式技術開發,微信公眾號:嵌入式技術開發】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    基于STM32 HAL與標準的esp8266接入機智云方案(二)

    在《基于STM32HAL與標準的esp8266接入機智云方案(一)》中,我們詳細介紹了硬件連接和機智云客戶端的創建。本篇將重點講解如何下載代碼、分析下載的代碼,并直接使用這些代碼連接機智云。同時
    的頭像 發表于 05-28 18:02 ?343次閱讀
    基于STM32 <b class='flag-5'>HAL</b><b class='flag-5'>庫</b>與標準<b class='flag-5'>庫</b>的esp8266接入機智云方案(二)

    w5500隨機出現接收問題

    我現在用STM32F103CBT6與W5500作為TCP Server,多臺PC與服務器連接上后,服務器會實時傳輸數據到PC上,并且PC隨時能通過控制軟件發送數據至服務器。但是運行一段時間后,PC上
    發表于 05-15 09:45

    通過注冊表和Technitium MAC Address Changer修改MAC地址(支持W5500模塊及通用網卡)

    Changer工具(適合小白用戶),以W5500以太網模塊為例,同時適用于普通網卡。 二、通過注冊表修改MAC地址 1. 硬件準備 W5500模塊:通過USB轉以太網適配器或開發板連接PC。 PC
    的頭像 發表于 03-28 09:27 ?1893次閱讀
    通過注冊表和Technitium MAC Address Changer修改MAC地址(支持<b class='flag-5'>W5500</b>模塊及通用網卡)

    通過注冊表和Technitium MAC Address Changer修改MAC地址(支持W5500模塊及通用網卡)

    Changer工具(適合小白用戶),以W5500以太網模塊為例,同時適用于普通網卡。 二、通過注冊表修改MAC地址 1. 硬件準備 W5500模塊:通過USB轉以太網適配器或開發板連接PC。 PC
    發表于 03-28 09:18

    使用STM32F103驅動W5500,多臺設備接入交換機時,偶發出現有兩臺設備只要同時都接入后就會互相影響,怎么解決?

    使用STM32F103驅動W5500,單臺設備連接電腦網絡助手通訊沒有問題,多臺設備接入交換機的時候,偶發出現有兩臺設備只要同時都接入后就會互相影響,導致網絡數據交互堵塞,丟幀等問題。這兩臺設備只要
    發表于 03-13 07:05

    W5500+DSP28335通信問題

    我采用W5500芯片+DSP于上位機進行UDP通信 前29次可以正常進行通信,但是當到達30次的時候,W5500開始崩了,其getSn_RX_RSR(0)開始返回60000并且開始無序跳變,才是把
    發表于 01-08 21:53

    HAL在Arduino平臺上的使用

    HAL在Arduino平臺上的使用 Arduino平臺是一個開源的電子原型平臺,它包括硬件(基于微控制器的電路板)和軟件(Arduino IDE)。Arduino平臺因其簡單易用而受到廣泛歡迎
    的頭像 發表于 12-02 14:04 ?1506次閱讀

    HAL和標準的區別 HAL與CMSIS的關系

    在嵌入式系統開發中,HAL(硬件抽象層)和標準是兩種常用的軟件,它們在功能和使用場景上有所不同。 1. 標準 標準
    的頭像 發表于 12-02 14:02 ?3064次閱讀

    HAL的函數調用示例

    HAL(Hardware Abstraction Layer,硬件抽象層)是STM32等微控制器中常用的,它為開發者提供了訪問和控制硬件設備的接口。以下是一些常用的HAL庫函數及其
    的頭像 發表于 12-02 14:01 ?1441次閱讀

    HAL在STM32開發中的重要性

    HAL(Hardware Abstraction Layer Library,硬件抽象層)在STM32開發中扮演著至關重要的角色。以下是HAL
    的頭像 發表于 12-02 13:35 ?1232次閱讀

    如何快速入門HAL編程 HAL與裸機編程的比較

    如何快速入門HAL編程 要快速入門HAL編程,可以遵循以下步驟: 了解基礎知識 : 掌握C語言編程基礎,包括變量、數據類型、函數、指針等。 了解嵌入式系統的基本概念,如微控制器、中
    的頭像 發表于 12-02 11:39 ?1034次閱讀

    HAL在嵌入式系統中的應用

    HAL(Hardware Abstraction Layer Library,硬件抽象層)在嵌入式系統中扮演著至關重要的角色。以下是HAL
    的頭像 發表于 12-02 11:32 ?1957次閱讀

    w5500 作為tcp server,客戶端異常發送【RST,ACK】斷開連接問題

    測試1 w5500 作為tcp server,上位機labveiw程序作為clinet,正常第二次交互結束后,客戶端發送一個【RST,ACK】報文斷開了連接; (1)使用wireshark抓取
    發表于 10-14 14:01

    使用wiznet+w5500,打印顯示spi與5500通訊成功,但是shell無法輸入,為什么?

    使用wiznet+w5500,打印顯示spi與5500通訊成功,但是shell無法輸入,插拔網線能顯示link up或者down, main函數的循環打印也可以顯示,請問會是什么原因~~
    發表于 09-26 07:09

    第12章-ADC采集電壓和顯示 基于STM32的ADC—電壓采集(詳細講解+HAL

    第12章-ADC采集電壓和顯示 基于STM32的ADC—電壓采集(詳細講解+HAL
    的頭像 發表于 08-21 16:31 ?5101次閱讀
    第12章-ADC采集電壓和顯示 基于STM32的ADC—電壓采集(詳細講解+<b class='flag-5'>HAL</b><b class='flag-5'>庫</b>)
    主站蜘蛛池模板: 特级毛片aaaa级毛片免费 | 四虎影院最新网站 | 在线观看深夜观看网站免费 | 国产精品久久久精品三级 | 久久久久久久久久免观看 | 婷婷久月 | 免费网站黄 | 成人一二| 中文字幕一二三四区2021 | 亚洲最新 | 狠狠色丁香九九婷婷综合五月 | 国产精品永久免费 | 中国免费黄色片 | 午夜影院免费观看视频 | 天天舔天天干 | 天堂69亚洲精品中文字幕 | 久久精品国产99国产精品澳门 | 国产黄在线观看 | 欧美xxx69 | 午夜久久久久久 | 日本黄色一级网站 | 五月天色婷婷丁香 | 午夜黄色 | 四虎院影永久在线观看 | 免费高清在线观看a网站 | 午夜国产片 | 中文天堂在线最新版在线www | 久久频这里精品99香蕉久网址 | 麻豆国产一区二区在线观看 | 夜夜爽天天干 | 四虎永久在线精品视频免费观看 | 国产成人在线网址 | 乱码精品一区二区三区 | 久久久噜噜噜久久中文字幕色伊伊 | 日本亚洲一区二区 | 四虎现在的网址入口 | 天天射日日干 | 国产高清在线精品 | 色偷偷成人 | 欧美一级www片免费观看 | 国产成人综合日韩精品婷婷九月 |