日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

先楫單片機(jī)使用SPI驅(qū)動(dòng)網(wǎng)絡(luò)接口芯片W5xxx(wiznet)

先楫半導(dǎo)體HPMicro ? 2023-11-01 08:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、概述

本文應(yīng)用主要是使用SPI驅(qū)動(dòng)wiznet的網(wǎng)絡(luò)接口芯片W5xxx,根據(jù)wiznet提供的ioLibrary_Driver庫(kù)支持W5100、W5100S、W5200、W5300、W5500。主要從以下幾點(diǎn)進(jìn)行說(shuō)明:

使用hpm_sdk的cmake框架對(duì)接wiznet的ioLibrary_Driver。

ioLibrary_Driver的底層讀寫(xiě)相關(guān)操作接口注冊(cè)對(duì)接。

以ioLibrary_Driver庫(kù)測(cè)試wiznet的速率性能。

本文不做wiznet芯片相關(guān)寄存器闡述,只簡(jiǎn)單闡述W5xxx的通信機(jī)制。

本文以W5500作為本文測(cè)試芯片。

本文例子倉(cāng)庫(kù)分支地址:

https://github.com/RCSN/hpm_sdk_extra/tree/feature/add_spi_drive_wizchip_w5xxx_sample/spi_drive_wizchip_w5xxx


265194e4-784c-11ee-9788-92fbcf53809c.png

二、流程


(一)使用hpm_sdk的cmake框架對(duì)接wiznet的ioLibrary_Driver

在一些開(kāi)源項(xiàng)目上,可能并沒(méi)有使用cmake來(lái)進(jìn)行搭建,而hpm_sdk基于cmake構(gòu)建,所以在移植的過(guò)程中,建議使用cmake框架加入開(kāi)源項(xiàng)目。本文以對(duì)接wiznet的ioLibrary_Driver作為例子供開(kāi)發(fā)者相關(guān)參考。

wiznet的ioLibrary_Driver倉(cāng)庫(kù)地址:

https://github.com/Wiznet/ioLibrary_Driver

里面包含了w5xxx的驅(qū)動(dòng)程序以及應(yīng)用程序協(xié)議,使用該庫(kù)基本可以很快能對(duì)接好相應(yīng)的功能實(shí)現(xiàn)。

需要關(guān)心的是Ethernet文件夾,里面包含了如W5500,W5300,W5200,W5100,W5100S的讀寫(xiě)相關(guān)中間層,還提供了socket應(yīng)用層操作接口。

265bbd0c-784c-11ee-9788-92fbcf53809c.png

1、芯片讀寫(xiě)操作層加入

在此庫(kù)中,僅支持一款w5xxx,所以添加到工程,也只能是一個(gè)芯片讀寫(xiě)操作的文件夾。在每個(gè)芯片上加入cmakelists文件,把對(duì)應(yīng)的頭文件包含以及添加對(duì)應(yīng)的C文件。

如以下:比如W5100文件夾,使用sdk_inc和sdk_src命令,把該文件下的所需的文件進(jìn)行添加以及包含該文件夾的頭文件。

26663494-784c-11ee-9788-92fbcf53809c.png

2、Ethernet文件加入

外層想使用文件夾的時(shí)候,可以通過(guò)set一個(gè)參數(shù)來(lái)判斷對(duì)應(yīng)的芯片操作選擇,然后再添加ethernet內(nèi)部的socket.c和config.c文件。

通過(guò)CONFIG_WIZNET參數(shù)來(lái)進(jìn)行對(duì)不同芯片加入篩選,以及加入兩個(gè)宏定義,一個(gè)是給config表示目前使用的是哪個(gè)芯片,一個(gè)是讓app知道引用的是哪個(gè)頭文件。

267a5848-784c-11ee-9788-92fbcf53809c.png

3、APP加入ioLibrary_Driver相關(guān)文件。

在本文中,使用的芯片是W5500,需要用到DHCP和ioLibrary_Driver里面application的loopback的tcp client接口,那么在app的camkelist可以做以下操作:

(1)set(CONFIG_WIZNET "w5500") 設(shè)置CONFIG_WIZNET為w5500,這樣cmake到ioLibrary_Driver索引時(shí)候只添加w5500這個(gè)文件夾。

(2)add_subdirectory(ioLibrary_Driver) 加入ioLibrary_Driver文件目錄

(3)sdk_app_src sdk_inc 加入ioLibrary_Driver需要的相關(guān)文件和頭文件

2689c3f0-784c-11ee-9788-92fbcf53809c.png

4、使用sdk_env的start_gui生成工程或者使用命令行生成都可以。這里使用start_gui

2695932e-784c-11ee-9788-92fbcf53809c.png

可以看到ioLibrary_Drivers對(duì)應(yīng)的目錄和文件都已經(jīng)添加到SES。

26a7236e-784c-11ee-9788-92fbcf53809c.png

如此編譯也Ok

26b2a9fa-784c-11ee-9788-92fbcf53809c.png


(二)ioLibrary_Driver的底層讀寫(xiě)相關(guān)操作接口注冊(cè)對(duì)接

在ioLibrary_Drivers的config上,需要接口注冊(cè)的主要是臨界區(qū)、CS片選操作、單字節(jié)收發(fā)、塊收發(fā)傳輸接口。在該庫(kù)中也有對(duì)應(yīng)的注冊(cè)接口wizchip_conf.h中。

26c2e752-784c-11ee-9788-92fbcf53809c.png

26cd3b4e-784c-11ee-9788-92fbcf53809c.png

1、臨界區(qū)注冊(cè)

這里臨界主要做全局中斷的使能和禁止,可根據(jù)自身應(yīng)用添加

26d889e0-784c-11ee-9788-92fbcf53809c.png

2、CS片選信號(hào)操作注冊(cè)

在這里為了避免CS拉低后存在較高的間隔,實(shí)際的拉低在actual_cs_sel API操作,就是在開(kāi)啟SPI傳輸?shù)臅r(shí)候調(diào)用,具體請(qǐng)?jiān)斠?jiàn) 玩轉(zhuǎn)先楫SPI外設(shè)系列 文章,這里不做闡述說(shuō)明。

cs操作接口使用sdk對(duì)應(yīng)的board的cs操作API,可自行根據(jù)應(yīng)用更改。

26e34808-784c-11ee-9788-92fbcf53809c.png

3、讀寫(xiě)單字節(jié)操作注冊(cè)

需要注意的是,這里為了方便快速操作,比如在讀接口SPI設(shè)置為只讀,然后設(shè)置傳輸長(zhǎng)度,復(fù)位FIFO,開(kāi)啟傳輸,等待數(shù)據(jù)接收完成后讀取數(shù)據(jù)。寫(xiě)接口也是如此。具體請(qǐng)?jiān)斠?jiàn) 玩轉(zhuǎn)先楫SPI外設(shè)系列 文章,這里同樣不做闡述說(shuō)明。

26ed7f94-784c-11ee-9788-92fbcf53809c.png

4、塊讀寫(xiě)傳輸操作注冊(cè)

DMA相關(guān)的操作請(qǐng)?jiān)斠?jiàn) 玩轉(zhuǎn)先楫SPI外設(shè)系列 文章,這里同樣不做闡述說(shuō)明。

5、注冊(cè)相關(guān)操作接口

2703338e-784c-11ee-9788-92fbcf53809c.png


(三)以ioLibrary_Driver庫(kù)測(cè)試wiznet的速率性能。

W5500官方手冊(cè)中,雖然可以支持到80M的SPI SCLK,但官方的建議是33.3M推薦頻率,再高的頻率會(huì)出現(xiàn)些許采樣問(wèn)題,在實(shí)際測(cè)試的過(guò)程中也是如此,hpm_sdk的Board.h默認(rèn)為20M,本文SLCK的頻率調(diào)整為30M左右測(cè)試。

在性能上,wiznet官方也出了W5500對(duì)應(yīng)的MAX速率為15Mbps。如果需要更高的可以選擇W5100/s

27105ec4-784c-11ee-9788-92fbcf53809c.png

271eaf42-784c-11ee-9788-92fbcf53809c.png

2733fa8c-784c-11ee-9788-92fbcf53809c.png

在本文所實(shí)現(xiàn)的例子實(shí)現(xiàn)中,可通過(guò)cmakelists開(kāi)啟或者關(guān)閉DHCP,或者開(kāi)啟和關(guān)閉tcp iperf測(cè)試。默認(rèn)都是開(kāi)啟。

273ee1e0-784c-11ee-9788-92fbcf53809c.png

如果想靜態(tài)IP分配,那么直接在main.c中更改load_net_parameters API里面的ip值即可。

2756005a-784c-11ee-9788-92fbcf53809c.png

這里iperf測(cè)試主要測(cè)試W5500作為T(mén)cp client的發(fā)送性能。在SPI SCLK 30M下,可以達(dá)到17Mbps速度性能,與wiznet官方提供的15Mbsps速率相當(dāng),滿足性能需求。

27620d6e-784c-11ee-9788-92fbcf53809c.png

276d6830-784c-11ee-9788-92fbcf53809c.png

目前ioLibrary_Driver庫(kù)性能還能繼續(xù)提升,比如修改socket的send和recv實(shí)現(xiàn)邏輯,減少查詢和等待;中間層少數(shù)據(jù)收發(fā)再次封裝等等。


在邏輯分析儀下,socket的發(fā)送接口send,在實(shí)際發(fā)送前,會(huì)查詢以及等待相關(guān)網(wǎng)絡(luò)狀態(tài)寄存器,占用了不少時(shí)間。wiznet提供的15mbps只有理論的一半性能也是這個(gè)時(shí)間所消耗引起。

27852790-784c-11ee-9788-92fbcf53809c.png

27905f70-784c-11ee-9788-92fbcf53809c.png

三、總結(jié)

在ioLibrary_Driver庫(kù)下,hpm的SPI驅(qū)動(dòng)W5500的網(wǎng)絡(luò)性能可以達(dá)到17Mbps,與wiznet官方的15Mbps保持一致。


如果需要提高性能,可以選擇wetne其他芯片?;蛘咦陨韮?yōu)化wiznet的ioLibrary_Driver庫(kù)。比如socket的發(fā)送send邏輯。


對(duì)于HPM6200,HPM5300等先楫通用MCU沒(méi)有以太網(wǎng)接口,但是有實(shí)際以太網(wǎng)需求或者方案平替,可以選擇SPI驅(qū)動(dòng)相關(guān)的芯片網(wǎng)絡(luò)接口。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    463

    文章

    54463

    瀏覽量

    469667
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6078

    文章

    45591

    瀏覽量

    673971
  • 網(wǎng)絡(luò)
    +關(guān)注

    關(guān)注

    14

    文章

    8340

    瀏覽量

    95600
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1900

    瀏覽量

    102193
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    三城聯(lián)動(dòng)圓滿收官!“芯”驅(qū)動(dòng)機(jī)器人運(yùn)動(dòng)控制全鏈路落地

    這一核心賽道,活動(dòng)吸引數(shù)百位行業(yè)工程師集中參與,通過(guò)“理論+實(shí)操”的體系化課程,快速打通從芯片能力到工程落地的關(guān)鍵路徑。本次培訓(xùn)以半導(dǎo)體面向機(jī)器人關(guān)節(jié)控制推出的
    的頭像 發(fā)表于 04-24 12:03 ?979次閱讀
    三城聯(lián)動(dòng)圓滿收官!<b class='flag-5'>先</b><b class='flag-5'>楫</b>“芯”<b class='flag-5'>驅(qū)動(dòng)</b>機(jī)器人運(yùn)動(dòng)控制全鏈路落地

    WK2XXX SPI?驅(qū)動(dòng):動(dòng)態(tài)申請(qǐng)?jiān)O(shè)備號(hào)解決雙實(shí)例加載失敗

    在嵌入式Linux驅(qū)動(dòng)開(kāi)發(fā)中,基于WK2XXX系列SPI轉(zhuǎn)串口芯片驅(qū)動(dòng)開(kāi)發(fā)是很常見(jiàn)的需求,不少開(kāi)發(fā)者會(huì)遇到 兩個(gè)WK2
    的頭像 發(fā)表于 04-08 08:04 ?450次閱讀
    WK2<b class='flag-5'>XXX</b> <b class='flag-5'>SPI</b>?<b class='flag-5'>驅(qū)動(dòng)</b>:動(dòng)態(tài)申請(qǐng)?jiān)O(shè)備號(hào)解決雙實(shí)例加載失敗

    重磅更新 | 半導(dǎo)體HPM_APPS v1.10.1發(fā)布

    重磅更新 | 半導(dǎo)體HPM_APPS v1.10.1發(fā)布
    的頭像 發(fā)表于 12-26 08:33 ?1406次閱讀
    重磅更新 | <b class='flag-5'>先</b><b class='flag-5'>楫</b>半導(dǎo)體HPM_APPS v1.10.1發(fā)布

    廣州唯創(chuàng)電子單片機(jī)語(yǔ)音芯片:智能設(shè)備的聲音靈魂與技術(shù)核心

    一、揭開(kāi)單片機(jī)語(yǔ)音芯片的神秘面紗1.從基礎(chǔ)概念認(rèn)識(shí)核心技術(shù)在智能化設(shè)備普及的今天,單片機(jī)語(yǔ)音芯片已成為人機(jī)交互的重要橋梁。要理解這一技術(shù),首先需要明確其兩大核心組成部分:
    的頭像 發(fā)表于 11-25 09:07 ?965次閱讀
    廣州唯創(chuàng)電子<b class='flag-5'>單片機(jī)</b>語(yǔ)音<b class='flag-5'>芯片</b>:智能設(shè)備的聲音靈魂與技術(shù)核心

    國(guó)產(chǎn)芯片賦能機(jī)器人創(chuàng)新 | 半導(dǎo)體亮相ROSCon China 2025

    機(jī)器人技術(shù)前沿趨勢(shì)與實(shí)踐突破。上海半導(dǎo)體科技有限公司(半導(dǎo)體,HPMicro)作為機(jī)器人領(lǐng)域國(guó)產(chǎn)核心芯片及嵌入式解決方案提供商,攜其
    的頭像 發(fā)表于 11-03 12:07 ?1291次閱讀
    國(guó)產(chǎn)<b class='flag-5'>芯片</b>賦能機(jī)器人創(chuàng)新 | <b class='flag-5'>先</b><b class='flag-5'>楫</b>半導(dǎo)體亮相ROSCon China 2025

    半導(dǎo)體完成B+輪融資,中移和創(chuàng)投資加持

    創(chuàng)投集團(tuán)與張江科投、張科垚坤、元禾控股和雷賽智能等知名機(jī)構(gòu)和上市公司。企業(yè)表示本輪融資將重點(diǎn)投向機(jī)器人應(yīng)用領(lǐng)域的芯片研發(fā)及解決方案的規(guī)?;瘧?yīng)用,積極投入機(jī)器人
    的頭像 發(fā)表于 09-11 08:32 ?1645次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半導(dǎo)體完成B+輪融資,中移和創(chuàng)投資加持

    半導(dǎo)體獲浦東產(chǎn)業(yè)基金戰(zhàn)略投資,深入布局機(jī)器人賽道創(chuàng)“芯”領(lǐng)域

    2025年9月5日,上海浦東新區(qū)|國(guó)產(chǎn)高性能微控制器產(chǎn)品及嵌入式解決方案提供商“上海半導(dǎo)體科技有限公司”(半導(dǎo)體,HPMicro)宣
    的頭像 發(fā)表于 09-05 08:33 ?2338次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半導(dǎo)體獲浦東產(chǎn)業(yè)基金戰(zhàn)略投資,深入布局機(jī)器人賽道創(chuàng)“芯”領(lǐng)域

    單片機(jī)怎么驅(qū)動(dòng)電機(jī)?

    在各類(lèi)自動(dòng)化設(shè)備和智能裝置中,電機(jī)是重要的執(zhí)行部件,而單片機(jī)作為控制核心,需要通過(guò)特定的方式驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn)。單片機(jī)驅(qū)動(dòng)電機(jī)并非直接連接即可,而是要根據(jù)電機(jī)類(lèi)型和功率,搭配合適的
    的頭像 發(fā)表于 07-25 09:31 ?1349次閱讀

    單片機(jī)和伺服有什么區(qū)別

    : 1. 定義與功能 特性 單片機(jī)(Microcontroller) 伺服系統(tǒng)(Servo System) 定義 一種集成CPU、內(nèi)存、I/O接口的微型計(jì)算機(jī)芯片,用于控制設(shè)備。 一種由伺服電機(jī)、編碼器
    的頭像 發(fā)表于 05-26 09:18 ?1070次閱讀

    國(guó)產(chǎn)“HPM芯”賦能機(jī)器人關(guān)節(jié),半導(dǎo)體亮相松山湖IC創(chuàng)新論壇

    。高性能微控制器產(chǎn)品及嵌入式解決方案提供商“上海半導(dǎo)體科技有限公司”(半導(dǎo)體,HPMicro)受邀參會(huì),設(shè)立專題展臺(tái)并進(jìn)行了主題為《
    的頭像 發(fā)表于 05-14 15:53 ?1583次閱讀
    國(guó)產(chǎn)“HPM芯”賦能機(jī)器人關(guān)節(jié),<b class='flag-5'>先</b><b class='flag-5'>楫</b>半導(dǎo)體亮相松山湖IC創(chuàng)新論壇

    半導(dǎo)體HPM6E8Y:實(shí)時(shí)控制芯片驅(qū)動(dòng)的機(jī)器人關(guān)節(jié)“芯”時(shí)代

    及產(chǎn)品總監(jiān)費(fèi)振東帶來(lái)了一款實(shí)時(shí)控制芯片驅(qū)動(dòng)——HPM6E8Y。 ? ? 據(jù)費(fèi)振東介紹,半導(dǎo)體HPM6E8Y系列高性能MCU芯片為機(jī)器人關(guān)
    發(fā)表于 05-13 11:50 ?1915次閱讀
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半導(dǎo)體HPM6E8Y:<b class='flag-5'>先</b><b class='flag-5'>楫</b>實(shí)時(shí)控制<b class='flag-5'>芯片</b><b class='flag-5'>驅(qū)動(dòng)</b>的機(jī)器人關(guān)節(jié)“芯”時(shí)代

    重磅更新 | 半導(dǎo)體HPM_APPS v1.9.0發(fā)布

    重磅更新 | 半導(dǎo)體HPM_APPS v1.9.0發(fā)布
    的頭像 發(fā)表于 05-13 11:29 ?2061次閱讀
    重磅更新 | <b class='flag-5'>先</b><b class='flag-5'>楫</b>半導(dǎo)體HPM_APPS v1.9.0發(fā)布

    即刻啟程,踏上W55MH32高性能以太網(wǎng)單片機(jī)學(xué)習(xí)之路!

    即刻啟程,踏上W55MH32高性能以太網(wǎng)單片機(jī)學(xué)習(xí)之路!即刻開(kāi)啟W55MH32學(xué)習(xí)之旅!本教系列程配套官方手冊(cè)與W55MH32L開(kāi)發(fā)板,從外設(shè)功能框圖解析到代碼實(shí)操,助你掌握高性能以太
    的頭像 發(fā)表于 05-07 18:51 ?1491次閱讀
    即刻啟程,踏上<b class='flag-5'>W</b>55MH32高性能以太網(wǎng)<b class='flag-5'>單片機(jī)</b>學(xué)習(xí)之路!

    WIZnet高性能以太網(wǎng)單片機(jī)W55MH32重磅發(fā)布!

    WIZnet高性能以太網(wǎng)單片機(jī)W55MH32重磅發(fā)布!本文詳細(xì)解析了W55MH32芯片的高性能網(wǎng)絡(luò)
    的頭像 發(fā)表于 05-07 16:17 ?2004次閱讀
    <b class='flag-5'>WIZnet</b>高性能以太網(wǎng)<b class='flag-5'>單片機(jī)</b><b class='flag-5'>W</b>55MH32重磅發(fā)布!

    【強(qiáng)勢(shì)上新】HPM5E00:EtherCAT運(yùn)動(dòng)控制MCU,半導(dǎo)體再拓工業(yè)總線產(chǎn)品新版圖

    2025年5月6日上海|高性能微控制器及嵌入式解決方案提供商“上海半導(dǎo)體科技有限公司”(半導(dǎo)體,HPMicro)正式發(fā)布新一代Eth
    的頭像 發(fā)表于 05-06 11:09 ?1633次閱讀
    【強(qiáng)勢(shì)上新】HPM<b class='flag-5'>5</b>E00:EtherCAT運(yùn)動(dòng)控制MCU,<b class='flag-5'>先</b><b class='flag-5'>楫</b>半導(dǎo)體再拓工業(yè)總線產(chǎn)品新版圖
    武川县| 荥经县| 阿鲁科尔沁旗| 衢州市| 宜兰县| 将乐县| 石嘴山市| 宁河县| 崇仁县| 桂东县| 潢川县| 黄石市| 拜城县| 集安市| 定州市| 凤庆县| 锦屏县| 祁连县| 南雄市| 双辽市| 武城县| 涿鹿县| 巴青县| 泸水县| 五原县| 扎鲁特旗| 琼中| 海南省| 维西| 莱芜市| 象山县| 普兰县| 突泉县| 渝中区| 两当县| 精河县| 沙洋县| 进贤县| 禄劝| 资兴市| 珠海市|