吴忠躺衫网络科技有限公司

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

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

3天內不再提示

在STM32F407板子上搭建TCP服務器及TFTP服務器

STM32單片機 ? 來源:互聯網 ? 作者:佚名 ? 2017-09-25 18:05 ? 次閱讀

掉落的楓葉像老工程師的筆記經驗我打開夜燈照亮歲末的秋天晚霞掠過天邊北風掠過工作臺的桌面我把努力融進了落葉想換來熟悉的那些肯定的笑顏

開發平臺

STM32F407開發板(帶以太網),板子上的PHY為LAN8720A,沒有用到顯示屏全為串口輸出調試信息實現功能

通過STM32CubeMX在原子STM32F407板子上搭建TCP Server 及 TFTP Server ,實現這些功能非常簡單。步驟

功能介紹、工程搭建、工程代碼、TFTP 服務器測試

1、TCP Server 實現顯示連接上的客戶端IP及對客戶端發來的數據回傳2、TFTP Server 實現IAP功能及讀取MCU內部FLASH數據。這里用到的是文件傳輸協議,主要是參考官方文檔UM1709,及官方STM324xG_EVAL的LWIP IAP例子。

工程搭建

外設配置

打開STM32CubeMX,點NEW PROJECT,在左側的輸入框中輸入407ZG,在右側會顯示STM32F407ZGT6的MCU列表,選擇此列表,雙擊。設置時鐘源為外部時鐘開啟SWD調試接口,開啟ETH外設,選擇RMII接口(LAN8720A為RMII接口),中間件里時能LWIP。使用RMII接口的時候軟件會自動配置對應的引腳,但是一定要仔細對比軟件配置的引腳是否為板子上硬件所連接的

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

  1. 配置時鐘外部高速晶振選擇為8M,PLL SORCE MUX 選擇為HSE,在HCLK處輸入168點回車,軟件會自動配置好

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

  3. 生成工程代碼

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

工程代碼

1、TCP Server 的實

看起來代碼很多,其實真的不復雜。

大致流程:先新建一個TCB_PCB、開始監聽、掛載客戶端連接請求回調函數、掛載接收數據回調函數、掛載發送完成回調函數、掛載出錯回調函數、掛載心跳包回調函數、關閉連接等,最重要的是釋放內存!每收到一個數據鏈,它已經被申請了內存,所有在處理完這個數據后一定要釋放

2、TCP服務器測試網絡調試助手連接TCP服務器(兩者必須在一個網關里面,192.168.000.XXX),網絡調試助手里選擇TCP客戶端,遠程主機IP為 192.168.0.120 , 端口號為7

詳細測試步驟請點擊閱讀原文下載

通過測試,則表示TCP服務器已經完成。您也可以通過手機連接這個路由器的WIFI,通過 網絡調試助手APP來連接這個開發板的服務器,電腦可以通過 TCP客戶端與開發板的TCP服務器連接同時也可以用手機做TCP客戶端連接開發板的TCP服務器

3、TFTP Server 的實現還是在上面的代碼上來實現此功能,即在TCP 服務器的代碼上實現TFTP 服務器。打開剛才STM32CubeMX工程,在原來的基礎上來配置LWIP。

因為是要通過TFTP 來實現 IAP 功能 ,所有一定有FLASH 的操作,這里我們COPY官方例子里面的flash_if.c和flash_if.h

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

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

    關注

    2272

    文章

    10923

    瀏覽量

    357559
  • TFT
    TFT
    +關注

    關注

    10

    文章

    386

    瀏覽量

    111303
  • TCP
    TCP
    +關注

    關注

    8

    文章

    1378

    瀏覽量

    79301
  • STM32F4
    +關注

    關注

    3

    文章

    194

    瀏覽量

    28192
收藏 人收藏

    評論

    相關推薦

    windows搭建ftp服務器的步驟

    Windows系統搭建FTP(文件傳輸協議)服務器通常涉及一系列步驟,包括安裝必要的服務、配置服務器
    的頭像 發表于 02-01 15:49 ?69次閱讀

    ftp服務器怎么搭建

    搭建FTP(文件傳輸協議)服務器是一個涉及多個步驟的過程,這些步驟包括選擇合適的FTP服務器軟件、安裝軟件、配置服務器以及測試連接等。 一、選擇合適的FTP
    的頭像 發表于 02-01 15:43 ?86次閱讀

    采用 Flexus 云服務器 X 實例搭建 RTSP 直播服務器

    一、前言 這篇文章講解:? 采用華為云最新推出的 Flexus 云服務器 X 實例搭建 RTSP 服務器,完成視頻直播需求。 隨著實時視頻流傳輸需求的增長,RTSP(實時流協議)服務器
    的頭像 發表于 12-24 17:36 ?258次閱讀
    采用 Flexus 云<b class='flag-5'>服務器</b> X 實例<b class='flag-5'>搭建</b> RTSP 直播<b class='flag-5'>服務器</b>

    企業云服務器平臺設計與搭建

    企業云服務器平臺的設計與搭建是一個復雜但系統的過程,涉及多個環節和因素。主機推薦小編為您整理發布企業云服務器平臺設計與搭建這一過程的詳細闡述。
    的頭像 發表于 12-04 09:51 ?140次閱讀

    服務器搭建步驟

    服務器不僅提供了靈活的資源配置和強大的計算能力,還降低了IT基礎設施的維護成本。下面,rak小編帶您詳細了解云服務器搭建的步驟。
    的頭像 發表于 10-09 10:58 ?260次閱讀

    服務器搭建詳細過程

    隨著云計算技術的發展,越來越多的企業和個人開始選擇使用云服務器來部署自己的應用和服務。相比于傳統的物理服務器,云服務器提供了更高的靈活性、可擴展性和安全性。下面將詳細介紹如何
    的頭像 發表于 09-12 10:00 ?429次閱讀

    如果ESPTCP客戶端與服務器斷開連接,如何啟用自動重連?

    ESP - TCP 客戶端 嵌入式 Linux 服務器 - TCP 服務器 如果ESPTCP
    發表于 07-17 06:25

    tcp方式連接不了服務器了,服務器代碼還能開源嗎?

    維護服務器嗎?已經兩天了。http方式還可以連接上,就tcp的方式不行了.服務器代碼能開源嗎?讓我們自己搭建
    發表于 07-15 06:53

    ESP826如何運行AP TCP服務器

    我正在開發一個室外遠程控制系統,帶有來自ESP8266 AP的專用WLAN。帶有 TCP 客戶端的平板電腦應連接到它,以便在 ESP 設置一些 GPIO。根據我的理解,ESP TCP
    發表于 07-09 06:27

    分享 | PTP、NTP時間同步服務器的部署與搭建過程

    分享 | PTP、NTP時間同步服務器的部署與搭建過程
    的頭像 發表于 05-15 10:01 ?1136次閱讀
    分享 | PTP、NTP時間同步<b class='flag-5'>服務器</b>的部署與<b class='flag-5'>搭建</b>過程

    使用STM32F407正點原子的開發板作為客戶端,電腦作為服務器端時程序總是死接收函數上是為什么?

    生成的工程可以ping通,使用STM32F407正點原子的開發板作為客戶端,電腦作為服務器端時程序總是死接收函數上,把接收函數屏蔽后程序正常也能于服務器連接上。請大神指教,是否是哪里
    發表于 04-29 06:54

    服務器linux搭建ftp服務訪問不了怎么解決?

    如果你服務器linux搭建了FTP服務但無法訪問,這可能是由于幾種原因引起的。以下是一些常見問題和解決方法: 1、防火墻配置:確保防火
    的頭像 發表于 04-18 17:23 ?1646次閱讀

    服務器遠程不服務器怎么辦?服務器無法遠程的原因是什么?

    解封。 2.遠程端口沒有添加到防火墻策略中 很多人可能對這個不是很理解,在這解釋一下:端口沒有防火墻策略中允許所有人鏈接,那么這個端口就無法被訪問, 同理,遠程端口沒有加入防火墻策略,就無法訪問這臺服務器
    發表于 02-27 16:21

    linux服務器和windows服務器

    ,這在滿足個性化需求和增強服務器安全 性具有優勢。 Linux服務器還具有出色的性能和穩定性。相比之下,Windows服務器性能和穩定性
    發表于 02-22 15:46

     海外云服務器搭建pi節點詳細步驟

     海外云服務器搭建pi節點簡單嗎?海外云服務器搭建pi節點步驟有哪些?小編為您整理發布海外云服務器搭建
    的頭像 發表于 02-21 10:16 ?1212次閱讀
    至尊百家乐官网奇热| 白金娱乐城| 新世纪百家乐官网的玩法技巧和规则| 凯旋门娱乐| 百家乐博彩吧| 24山辰山戍向| 金榜百家乐官网现金网| 大发888娱乐城首页| e世博百家乐娱乐场| 百家乐官网投注技巧公式| 宝马会娱乐城| 百家乐是个什么样的游戏| 百家乐网投开户| 百家乐官网游戏客户端| 潼南县| 大发888官方爱好| 百家乐网站平台| KTV百家乐官网的玩法技巧和规则 王子百家乐官网的玩法技巧和规则 | 百家乐官网看牌技巧| 大发888xp缺少 casino| 易胜博百家乐娱乐城| 云鼎百家乐官网的玩法技巧和规则 | 百家乐官网园游戏庄闲| bet365体育在线下载| 百家乐试玩活动| 百家乐官网娱乐城足球盘网| 皇家平台| 德州扑克小说| 老虎机技巧| 百家乐路单走势图| 澳门百家乐网址| 百家乐官网博娱乐网赌百家乐官网的玩法技巧和规则 | 状元百家乐的玩法技巧和规则| 百家乐有不有作弊| 中原百家乐官网的玩法技巧和规则| 太阳城百家乐官网筹码租| 陇川县| 博彩网皇冠| 大发888娱乐官方| 金都百家乐的玩法技巧和规则| 百家乐网站建设|