chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

STM32F407板子上搭建TCP Server及TFTP Server

STM32單片機(jī) ? 來(lái)源:互聯(lián)網(wǎng) ? 作者:佚名 ? 2017-09-25 17:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

開(kāi)發(fā)平臺(tái)

STM32F407開(kāi)發(fā)板(帶以太網(wǎng)),板子上的PHY為L(zhǎng)AN8720A,沒(méi)有用到顯示屏全為串口輸出調(diào)試信息。

實(shí)現(xiàn)功能

通過(guò)STM32CubeMX在原子STM32F407板子上搭建TCP Server 及 TFTP Server ,實(shí)現(xiàn)這些功能非常簡(jiǎn)單。

步驟

功能介紹、工程搭建、工程代碼、TFTP 服務(wù)器測(cè)試

1、TCP Server 實(shí)現(xiàn)顯示連接上的客戶端IP及對(duì)客戶端發(fā)來(lái)的數(shù)據(jù)回傳2、TFTP Server 實(shí)現(xiàn)IAP功能及讀取MCU內(nèi)部FLASH數(shù)據(jù)。這里用到的是文件傳輸協(xié)議,主要是參考官方文檔UM1709,及官STM324xG_EVAL的LWIP IAP例子。

工程搭建

外設(shè)配置

打開(kāi)STM32CubeMX,點(diǎn)NEW PROJECT,在左側(cè)的輸入框中輸入407ZG,在右側(cè)會(huì)顯示STM32F407ZGT6的MCU列表,選擇此列表,雙擊。設(shè)置時(shí)鐘源為外部時(shí)鐘開(kāi)啟SWD調(diào)試接口,開(kāi)啟ETH外設(shè),選擇RMII接口(LAN8720A為RMII接口),中間件里時(shí)能LWIP。使用RMII接口的時(shí)候軟件會(huì)自動(dòng)配置對(duì)應(yīng)的引腳,但是一定要仔細(xì)對(duì)比軟件配置的引腳是否為板子上硬件所連接的。

原子F407板子上的LAN8720A的RMII接口引腳如下圖,

  1. 配置時(shí)鐘外部高速晶振選擇為8M,PLL SORCE MUX 選擇為HSE,在HCLK處輸入168點(diǎn)回車,軟件會(huì)自動(dòng)配置好

  2. 中間件配置這里主要配置,ETH、LWIP、串口1、GPIO

  3. 生成工程代碼

    點(diǎn)左上角的Project,選擇Settings...(不建議直接點(diǎn)黃色的齒輪),點(diǎn)擊OK。再點(diǎn)右上方的黃色齒輪即可生成工程代碼

工程代碼

1、TCP Server 的實(shí)現(xiàn)

看起來(lái)代碼很多,其實(shí)真的不復(fù)雜。

大致流程:先新建一個(gè)TCB_PCB、開(kāi)始監(jiān)聽(tīng)、掛載客戶端連接請(qǐng)求回調(diào)函數(shù)、掛載接收數(shù)據(jù)回調(diào)函數(shù)、掛載發(fā)送完成回調(diào)函數(shù)、掛載出錯(cuò)回調(diào)函數(shù)、掛載心跳包回調(diào)函數(shù)、關(guān)閉連接等,最重要的是釋放內(nèi)存!每收到一個(gè)數(shù)據(jù)鏈,它已經(jīng)被申請(qǐng)了內(nèi)存,所有在處理完這個(gè)數(shù)據(jù)后一定要釋放。

2、TCP服務(wù)器測(cè)試用網(wǎng)絡(luò)調(diào)試助手連接TCP服務(wù)器(兩者必須在一個(gè)網(wǎng)關(guān)里面,192.168.000.XXX),網(wǎng)絡(luò)調(diào)試助手里選擇TCP客戶端,遠(yuǎn)程主機(jī)IP為 192.168.0.120 , 端口號(hào)為7

詳細(xì)測(cè)試步驟請(qǐng)點(diǎn)擊閱讀原文下載。

通過(guò)測(cè)試,則表示TCP服務(wù)器已經(jīng)完成。您也可以通過(guò)手機(jī)連接這個(gè)路由器的WIFI,通過(guò) 網(wǎng)絡(luò)調(diào)試助手APP來(lái)連接這個(gè)開(kāi)發(fā)板的服務(wù)器,電腦可以通過(guò) TCP客戶端與開(kāi)發(fā)板的TCP服務(wù)器連接同時(shí)也可以用手機(jī)做TCP客戶端連接開(kāi)發(fā)板的TCP服務(wù)器。

3、TFTP Server 的實(shí)現(xiàn)還是在上面的代碼上來(lái)實(shí)現(xiàn)此功能,即在TCP 服務(wù)器的代碼上實(shí)現(xiàn)TFTP 服務(wù)器。打開(kāi)剛才STM32CubeMX工程,在原來(lái)的基礎(chǔ)上來(lái)配置LWIP。

因?yàn)槭且ㄟ^(guò)TFTP 來(lái)實(shí)現(xiàn) IAP 功能 ,所有一定有FLASH 的操作,這里我們COPY官方例子里面的flash_if.c和flash_if.h

至此,TFTP服務(wù)器搭建完成,下載到開(kāi)發(fā)板串口顯示如下信息:Start 開(kāi)始監(jiān)聽(tīng) 掛載客戶端連接回調(diào)函數(shù) TFTP初始化成功 Static IP address: 192.168.0.120可以通過(guò)上面的TCP服務(wù)器測(cè)試步驟來(lái)測(cè)試TCP服務(wù)器功能,正常測(cè)試,工作正常,ping也能

聲明:本文內(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)投訴
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    14

    文章

    10344

    瀏覽量

    91737
  • STM32
    +關(guān)注

    關(guān)注

    2312

    文章

    11189

    瀏覽量

    374515
  • TFT
    TFT
    +關(guān)注

    關(guān)注

    10

    文章

    416

    瀏覽量

    114917
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1432

    瀏覽量

    83757
  • STM32F4
    +關(guān)注

    關(guān)注

    3

    文章

    204

    瀏覽量

    30280

原文標(biāo)題:基于STM32F407搭建TCP服務(wù)器及TFTP服務(wù)器

文章出處:【微信號(hào):STM32_STM8_MCU,微信公眾號(hào):STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    RTL9301管理型交換機(jī)DHCP Server使用方法

    RTL9301管理型交換機(jī)DHCP Server使用方法
    的頭像 發(fā)表于 02-01 10:52 ?1475次閱讀
    RTL9301管理型交換機(jī)DHCP <b class='flag-5'>Server</b>使用方法

    使用NVIDIA Nemotron RAG和Microsoft SQL Server 2025構(gòu)建高性能AI應(yīng)用

    在 Microsoft Ignite 2025 大會(huì)上,隨著 Microsoft SQL Server 2025 的發(fā)布,AI 就緒型企業(yè)數(shù)據(jù)庫(kù)愿景成為現(xiàn)實(shí),為開(kāi)發(fā)者提供強(qiáng)大的新工具,例如內(nèi)置向量
    的頭像 發(fā)表于 12-01 09:31 ?1001次閱讀
    使用NVIDIA Nemotron RAG和Microsoft SQL <b class='flag-5'>Server</b> 2025構(gòu)建高性能AI應(yīng)用

    STM32F407的晶振選型分析

    STM32F407的最佳晶振選項(xiàng)
    的頭像 發(fā)表于 11-07 12:03 ?1822次閱讀

    飛凌嵌入式ElfBoard-常用的網(wǎng)絡(luò)服務(wù)的搭建TFTP服務(wù)搭建

    File Transfer Protocol,簡(jiǎn)單文件傳輸協(xié)議),是TCP/IP協(xié)議族中用來(lái)在客戶機(jī)和服務(wù)器之間進(jìn)行簡(jiǎn)單文件傳輸?shù)膮f(xié)議,開(kāi)銷很小。TFTP通常用于內(nèi)核調(diào)試。在嵌入式Linux開(kāi)發(fā)過(guò)程中,內(nèi)核
    發(fā)表于 10-21 11:29

    與AI探討簡(jiǎn)易示波器和頻譜儀

    對(duì)于追求性價(jià)比和足夠性能的入門到中級(jí)項(xiàng)目,STM32F407 是完全足夠且更具成本效益的選擇。
    的頭像 發(fā)表于 10-18 15:35 ?1006次閱讀

    rtt5.0.0下lvgl在正點(diǎn)原子stm32f407探索者開(kāi)發(fā)板V3mdk編譯報(bào)錯(cuò)怎么解決?

    開(kāi)發(fā)板為正點(diǎn)原子stm32f407探索者V3,在rtt5.0.0版本下加入lvgl及相應(yīng)的lcd, touch驅(qū)動(dòng),其它什么功能也沒(méi)加,在mdk中編譯,報(bào)錯(cuò): Program Size: Code
    發(fā)表于 09-22 06:17

    在rt-thread4.0.2版本stm32f407硬件平臺(tái)上,使用reboot命令無(wú)法重啟,會(huì)讓系統(tǒng)死機(jī)的原因?

    我在rt-thread4.0.2版本stm32f407硬件平臺(tái)上,使用reboot命令無(wú)法重啟,會(huì)讓系統(tǒng)死機(jī)。 reboot命令默認(rèn)是調(diào)用rt_hw_cpu_reset()
    發(fā)表于 09-12 06:08

    STM32F407VGT6的完美國(guó)產(chǎn)替代——中科芯CKS32F407VGT6在智能電力網(wǎng)關(guān)的應(yīng)用

    風(fēng)險(xiǎn)。如今,這一局面正被打破,STM32F407VGT6的完美國(guó)產(chǎn)替代——中科芯CKS32F407VGT6在智能電力網(wǎng)關(guān)的應(yīng)用,為這一領(lǐng)域帶來(lái)了新的曙光,開(kāi)啟了國(guó)產(chǎn)芯片在
    的頭像 發(fā)表于 08-25 16:16 ?1338次閱讀
    <b class='flag-5'>STM32F407</b>VGT6的完美國(guó)產(chǎn)替代——中科芯CKS32<b class='flag-5'>F407</b>VGT6在智能電力網(wǎng)關(guān)的應(yīng)用

    第三十章 W55MH32 HTTP_Server&amp;NetBIOS示例

    本文講解了如何在 W55MH32?芯片實(shí)現(xiàn) HTTP_Server?與 NetBIOS?功能,并通過(guò) NetBIOS?訪問(wèn) HTTP?服務(wù)器網(wǎng)頁(yè)內(nèi)容,通過(guò)實(shí)戰(zhàn)例程展示了在主循環(huán)中并行處理 HTTP?與 NetBIOS?相關(guān)事務(wù)的過(guò)程。
    的頭像 發(fā)表于 07-24 16:21 ?1829次閱讀
    第三十章 W55MH32 HTTP_<b class='flag-5'>Server</b>&amp;NetBIOS示例

    第九章 W55MH32 HTTP Server示例

    本文介紹了在 W55MH32?芯片實(shí)現(xiàn) HTTP Server?功能,并通過(guò)瀏覽器修改其網(wǎng)絡(luò)地址信息的方法。闡述了 HTTP?協(xié)議的概念、特點(diǎn)、應(yīng)用場(chǎng)景、工作流程、請(qǐng)求方法、響應(yīng)內(nèi)容,以及 Web?頁(yè)面構(gòu)成和交互方式。展示了在W55MH32
    的頭像 發(fā)表于 07-24 09:35 ?1373次閱讀
    第九章 W55MH32 HTTP <b class='flag-5'>Server</b>示例

    STM32F407的IO去驅(qū)動(dòng)5V的外部拉電阻,請(qǐng)問(wèn)VDD_FT的電壓范圍是多少?

    目前想用STM32F407的IO去驅(qū)動(dòng)5V的外部拉電阻,看手冊(cè)5V容忍的VDD_FT且有保護(hù)二極管。 請(qǐng)問(wèn)VDD_FT的電壓范圍是多少? 開(kāi)漏輸出時(shí),PA8口的拉電阻能否輸出5V? 謝謝!
    發(fā)表于 07-10 06:03

    WICED中使能TCP保活后無(wú)法disconnected怎么解決?

    開(kāi)發(fā)環(huán)境 WICED,最新版本的SDK 芯片:CYW43907、使用freertos+lwip開(kāi)發(fā) 描述:使用wiced_tcp_server_start開(kāi)啟TCP服務(wù)器,然后注冊(cè)了連接和斷開(kāi)的回調(diào)
    發(fā)表于 07-08 06:57

    數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫(kù)被加密如何恢復(fù)數(shù)據(jù)?

    SQL Server數(shù)據(jù)庫(kù)故障: SQL Server數(shù)據(jù)庫(kù)被加密,無(wú)法使用。 數(shù)據(jù)庫(kù)MDF、LDF、log日志文件名字被篡改。
    的頭像 發(fā)表于 06-25 13:54 ?816次閱讀
    數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—SQL <b class='flag-5'>Server</b>數(shù)據(jù)庫(kù)被加密如何恢復(fù)數(shù)據(jù)?

    如何用FastMCP快速開(kāi)發(fā)自己的MCP Server?

    的感受到了基于AI大模型和 MCP可以非常方便的構(gòu)建自己的AI智能體工作流。在此基礎(chǔ),不少讀者咨詢,如何將自己已有的工具或函數(shù),制作成MCP Server給AI大模型調(diào)用呢?本文從零開(kāi)始介紹
    的頭像 發(fā)表于 05-07 16:07 ?3030次閱讀
    如何用FastMCP快速開(kāi)發(fā)自己的MCP <b class='flag-5'>Server</b>?

    AD7768與STM32F407進(jìn)行數(shù)據(jù)通信,SPI1讀取到的數(shù)據(jù)不完整,整體數(shù)據(jù)在字節(jié)出現(xiàn)偏移,怎么解決?

    我再做一個(gè)任務(wù),需要使用STM32F407對(duì)AD7768的數(shù)據(jù)進(jìn)行讀取,當(dāng)然我們的AD采集速率要求不高,只需要2K。 我使用GPIO來(lái)模擬SPI對(duì)AD7768的寄存器進(jìn)行配置讀取,使用硬件SPI1來(lái)
    發(fā)表于 04-24 06:40