91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

在STM32F407板子上搭建TCP服務(wù)器及TFTP服務(wù)器

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

掃碼添加小助手

加入工程師交流群

掉落的楓葉像老工程師的筆記經(jīng)驗(yàn)我打開夜燈照亮歲末的秋天晚霞掠過天邊北風(fēng)掠過工作臺(tái)的桌面我把努力融進(jìn)了落葉想換來熟悉的那些肯定的笑顏

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

STM32F407開發(fā)板(帶以太網(wǎng)),板子上的PHY為L(zhǎng)AN8720A,沒有用到顯示屏全為串口輸出調(diào)試信息。實(shí)現(xiàn)功能

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

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

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

工程搭建

外設(shè)配置

打開STM32CubeMX,點(diǎn)NEW PROJECT,在左側(cè)的輸入框中輸入407ZG,在右側(cè)會(huì)顯示STM32F407ZGT6的MCU列表,選擇此列表,雙擊。設(shè)置時(shí)鐘源為外部時(shí)鐘開啟SWD調(diào)試接口,開啟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)

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

大致流程:先新建一個(gè)TCB_PCB、開始監(jiān)聽、掛載客戶端連接請(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)擊閱讀原文下載。

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

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

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

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

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

    關(guān)注

    2310

    文章

    11162

    瀏覽量

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

    關(guān)注

    10

    文章

    410

    瀏覽量

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

    關(guān)注

    8

    文章

    1425

    瀏覽量

    83531
  • STM32F4
    +關(guān)注

    關(guān)注

    3

    文章

    204

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    普通服務(wù)器電源與AI服務(wù)器電源的區(qū)別(

    引言服務(wù)器是數(shù)據(jù)中心的核心設(shè)備,其穩(wěn)定運(yùn)行依賴可靠的電源供應(yīng)。隨著AI技術(shù)的飛速發(fā)展,AI服務(wù)器大量涌現(xiàn),與普通服務(wù)器應(yīng)用場(chǎng)景等方面存在顯著差異,這也使得兩者的電源存在諸多不同。本研
    的頭像 發(fā)表于 01-12 09:31 ?1049次閱讀
    普通<b class='flag-5'>服務(wù)器</b>電源與AI<b class='flag-5'>服務(wù)器</b>電源的區(qū)別(<b class='flag-5'>上</b>)

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

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

    服務(wù)器數(shù)據(jù)恢復(fù)—服務(wù)器的卷被誤刪數(shù)據(jù)如何恢復(fù)?

    工作人員不慎將一臺(tái)服務(wù)器的卷誤刪除,服務(wù)器上有一組raid5陣列。需要恢復(fù)誤刪除的數(shù)據(jù)。
    的頭像 發(fā)表于 08-14 11:33 ?992次閱讀
    <b class='flag-5'>服務(wù)器</b>數(shù)據(jù)恢復(fù)—<b class='flag-5'>服務(wù)器</b><b class='flag-5'>上</b>的卷被誤刪數(shù)據(jù)如何恢復(fù)?

    怎樣阿里ECS服務(wù)器架設(shè)自己的OpenVPN服務(wù)器?

    需要自己架設(shè)服務(wù)器,讓現(xiàn)場(chǎng)的IR615路由連接自己的服務(wù)器。能通過自己的服務(wù)器進(jìn)行數(shù)據(jù)采集和遠(yuǎn)程運(yùn)維。
    發(fā)表于 08-06 06:56

    恒訊科技分析:云儲(chǔ)存服務(wù)器搭建教程

    搭建云存儲(chǔ)服務(wù)器是一個(gè)相對(duì)復(fù)雜但極具實(shí)用性的項(xiàng)目,以下是一個(gè)簡(jiǎn)化的搭建教程,幫助你快速入門。 一、明確需求 搭建云存儲(chǔ)
    的頭像 發(fā)表于 07-07 11:07 ?1310次閱讀

    國(guó)外bgp服務(wù)器多少錢?# 服務(wù)器

    服務(wù)器
    jf_57681485
    發(fā)布于 :2025年04月24日 14:19:00

    新加坡服務(wù)器延遲大嗎?真相在這里#新加坡服務(wù)器 #服務(wù)器

    服務(wù)器
    jf_57681485
    發(fā)布于 :2025年04月18日 13:48:50

    存儲(chǔ)服務(wù)器怎么搭建?RAKsmart實(shí)戰(zhàn)指南

    搭建存儲(chǔ)服務(wù)器需兼顧硬件性能、數(shù)據(jù)冗余與安全訪問。以RAKsmart服務(wù)器為例,整體流程可分為五步:需求評(píng)估→硬件選型→RAID配置→系統(tǒng)部署→網(wǎng)絡(luò)設(shè)置。以下是小編對(duì)RAKsmart存儲(chǔ)服務(wù)器
    的頭像 發(fā)表于 04-01 10:09 ?1193次閱讀

    NTP校時(shí)服務(wù)器 時(shí)鐘同步服務(wù)器

    服務(wù)器
    jf_75250307
    發(fā)布于 :2025年03月19日 20:56:34

    服務(wù)器數(shù)據(jù)恢復(fù)—如何預(yù)防服務(wù)器故障與恢復(fù)服務(wù)器數(shù)據(jù)!

    服務(wù)器常見故障: 硬件故障:磁盤損壞、電池故障等。 軟件問題:操作系統(tǒng)崩潰、未知的程序運(yùn)行錯(cuò)誤等。 病毒破壞:勒索病毒加密、刪除服務(wù)器數(shù)據(jù)等。 不可控力量;服務(wù)器浸水、火燒、機(jī)房倒塌等導(dǎo)致
    的頭像 發(fā)表于 03-11 12:36 ?1234次閱讀