亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

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

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

3天內不再提示

Air780EPM開發(fā)板FTP功能實戰(zhàn):LuatOS嵌入式開發(fā)全解析

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2025-09-29 15:37 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文深入講解Air780EPM模組在LuatOS環(huán)境下的FTP應用開發(fā),涵蓋AT指令配置、網絡連接與文件傳輸流程,助你高效完成嵌入式通信項目。


一、什么是 FTP

1.1 基本概念

FTP 協議

4G 物聯網場景中,FTP 協議(File Transfer Protocol,文件傳輸協議)是一種基于 TCP/IP 的標準化文件傳輸技術。

FTP 協議包括兩個組成部分,其一為 FTP 服務器,其二為 FTP 客戶端.

FTP 服務器

FTP 服務器(File Transfer Protocol Server)是基于 FTP 協議提供文件存儲、傳輸與管理服務的系統(tǒng)。簡單來說,支持 FTP 協議的服務器就是 FTP 服務器, 用來存儲文件,用戶可以使用 FTP 客戶端通過 FTP 協議訪問位于 FTP 服務器上的資源.

FTP 客戶端

FTP 客戶端(FTP Client)是指用戶端用于連接 FTP 服務器、并進行文件傳輸及管理操作的工具或軟件。它是 FTP 通信中的 “發(fā)起方”,負責向 FTP 服務器發(fā)送連接請求、認證信息(如用戶名和密碼),并執(zhí)行上傳、下載、刪除、移動文件等操作。

默認情況下 FTP 協議使用 TCP 端口中的 20 和 21 這兩個端口,其中 20 用于傳輸數據,21 用于傳輸控制信息.但是,是否使用 20 作為傳輸數據的端口與 FTP 使用的傳輸模式有關:

如果采用主動模式,那么數據傳輸端口就是 20;

如果采用被動模式,要服務器端和客戶端協商決定最終使用哪個端口.

FTP 作為成熟的文件傳輸協議,在 4G 物聯網場景中承擔 “標準化文件交互通道” 的角色,彌補了物聯網中輕量級協議(如 MQTT)在大文件傳輸上的不足。

1.2 關鍵特性

基于 TCP 的可靠性:FTP 依賴 TCP 協議實現連接,通過三次握手建立連接、重傳機制保障數據完整性,適合物聯網中 “固件包”“監(jiān)控錄像” 等關鍵文件的傳輸,避免丟失或損壞。

雙向文件操作:支持 “上傳”(設備 → 服務器,如傳感器日志上傳)和 “下載”(服務器 → 設備,如固件更新),滿足物聯網設備與云端的雙向數據交互需求。

適配 4G 網絡特性:4G 的高帶寬支持 FTP 傳輸較大文件;低延遲特性減少了 FTP 控制連接(端口 21)和數據連接(端口 20)的交互等待時間,提升傳輸效率。

1.3 典型應用場景

設備固件升級:物聯網設備(如工業(yè)網關、智能攝像頭)通過 4G 網絡連接 FTP 服務器,下載最新固件包并完成升級,無需現場操作。

批量數據回傳:部署在戶外的傳感器(如環(huán)境監(jiān)測設備)定期將采集的日志文件(如溫度、濕度歷史數據)通過 FTP 上傳至云端服務器,便于集中分析。

多媒體文件傳輸:車載終端、安防攝像頭等設備通過 4G 網絡將拍攝的視頻、圖片文件經 FTP 傳輸至后端平臺,實現遠程監(jiān)控。

綜上,4G 物聯網中的 FTP 是一種依托 4G 高帶寬、低延遲特性,實現設備與云端大文件可靠傳輸的成熟方案,廣泛應用于固件升級、數據回傳、多媒體傳輸等場景。

關于 FTP 更詳細的理論知識說明,請參考:https://blog.csdn.net/HinsCoder/article/details/130911658

或者其他途徑自行參考。

下面就跟著教程用模組實際操作演示一下 FTP 協議的實際應用。

二、功能演示概述

本文演示 4G 模組使用 LuatOS 開發(fā)時, 4G 通信中 ftp 網絡協議的應用功能.

使用 Air780EPM 開發(fā)板下載 Air780EPM 的 LuatOS 示例代碼中 ftp 的例程,進行驗證,例程中實現的功能核心業(yè)務邏輯為:

配置 FTP 客戶端登錄服務器的參數和文件路徑

封裝一個重試機制,在登錄失敗、上傳文件失敗或者下載文件失敗時嘗試重新執(zhí)行操作

登錄 FTP 服務器,通過重試機制確保登錄成功

ftp.push 上傳本地文件到服務器,在本地新建文件并寫入內容后上傳到服務器指定路徑,通過重試機制確保上傳成功

ftp.pull 從服務器下載文件,保存在本地指定路徑,并讀取文件長度,當長度小于指定字節(jié)時,讀取文件內容,通常是設定 512 字節(jié),如果文件太大,會消耗 ram,通過重試機制確保上傳成功

主函數循環(huán)運行以下流程: 登錄服務器、用 ftp.command 操作 ftp 服務器目錄以及文件上傳下載處理后關閉服務器。

三、準備硬件環(huán)境

3.1 780EPM 硬件環(huán)境

wKgZO2jaMOiATYSmACB5Mmxv_9w178.png

1、Air780EPM 1.3 版本開發(fā)板一塊 + 可上網的 sim 卡一張 +4g 天線一根 + 網線一根:

2、sim 卡插入開發(fā)板的 sim 卡槽

3、天線裝到開發(fā)板上

4、網線一端插入開發(fā)板網口,另外一端連接可以上外網的路由器網口

5、TYPE-C USB 數據線一根 + USB 轉串口數據線一根,Air780EPM 開發(fā)板和數據線的硬件接線方式為:

6、Air780EPM 開發(fā)板通過 TYPE-C USB 口供電;(外部供電/USB 供電 撥動開關 撥到 USB 供電一端)

7、TYPE-C USB 數據線直接插到開發(fā)板的 TYPE-C USB 座子,另外一端連接電腦 USB 口;

3.2 780EHM 硬件環(huán)境

1、Air780EHM 核心板一塊 + 可上網的 sim 卡一張 +4g 天線一根 + 網線一根

2、sim 卡插入開發(fā)板的 sim 卡槽

3、天線裝到開發(fā)板上

4、網線一端插入開發(fā)板網口,另外一端連接可以上外網的路由器網口

5、TYPE-C USB 數據線一根 + USB 轉串口數據線一根,Air780EHM 核心板和數據線的硬件接線方式為:

6、Air780EHM 核心板通過 TYPE-C USB 口供電;(外部供電/USB 供電 撥動開關 撥到 USB 供電一端)

7、TYPE-C USB 數據線直接插到核心板的 TYPE-C USB 座子,另外一端連接電腦 USB 口;

8、USB 轉串口數據線,一般來說,白線連接開發(fā)板的 UART1_TX,綠線連接開發(fā)板的 UART1_RX,黑線連接核心板的 GND,另外一端連接電腦 USB 口;

9、可選 AirPHY_1000 配件板一塊,Air780EHM 核心板和 AirPHY_1000 配件板的硬件接線方式為:

wKgZO2jaMhiAdUpBAABSz6ioeFg184.png

四、準備軟件環(huán)境

在開始實踐本示例之前,先準備一下軟件環(huán)境:

4.1Luatools 工具,如果是第一次使用 Luatools 工具,請仔細閱讀此鏈接教程。

4.2 內核固件文件(底層 core 固件文件):LuatOS-SoC_V2014_Air780EPM_1.soc;參考項目使用的內核固件;如有更新可以使用最新固件。

4.3 luatos 需要的腳本和資源文件:https://gitee.com/openLuat/LuatOS/tree/master/module/Air780EHM_Air780EHV_Air780EGH/demo/ftp

main.lua:主程序入口;

netdrv_device.lua:網卡驅動設備,可以配置使用netdrv文件夾內的四種網卡(單4g網卡,單wifi網卡,單spi以太網卡,多網卡)中的任何一種網卡;

netdrv 文件夾:三種網卡,單 4g 網卡、單 spi 以太網卡、多網卡,供 netdrv_device.lua 加載配置,按需選擇。

ftp_up_download.lua,功能演示核心腳本,在 main.lua 中加載運行。

4.4 lib 腳本文件:使用 Luatools 燒錄時,勾選 添加默認 lib 選項,使用默認 lib 腳本文件;

準備好軟件環(huán)境之后,接下來查看如何燒錄項目文件到 Air780EPM 開發(fā)板,將本篇文章中演示使用的項目文件燒錄到 Air780EPM 開發(fā)板中。

4.5 訪問 ftp 服務器

以下準備了三種訪問 ftp 服務器的方法

本文使用方法 1,通過 Windows 資源管理器訪問,若無法訪問,請嘗試方法 2 或者方法 3:

測試服務器客戶端配置參數,非 ssl 加密: local server_ip = "121.43.224.154" -- 服務器 IP local server_port = 21 -- 服務器端口號 local server_username = "ftp_user" -- 服務器登陸用戶名 local server_password = "3QujbiMG" -- 服務器登陸密碼

方法 1 Windows 資源管理器:- 打開“我的電腦”,在地址欄輸入“ftp://121.43.224.154/”,按回車鍵。

wKgZO2jaMrmANtsLAAGTNy0v8IE548.png

在登錄界面輸入用戶名和密碼,點擊登錄,即可看到服務器上保存的文件。

wKgZO2jaMuWAa4OYAALDmLvFsbs257.png

方法 2 IE 瀏覽器訪問: - 打開 IE 瀏覽器,在瀏覽器輸入 121.43.224.154,回車,然后輸入用戶名和密碼,點擊登錄,進入服務器。

wKgZO2jaMxCABLdXAAF13hNJBmU096.png

方法 3 客戶端軟件:下載安裝Xftp客戶端軟件,并配置好 ftp 服務器地址,端口號,用戶名,密碼等信息,即可登錄,安裝教程可自行上網查找。

wKgZPGjaMzKAeHmiAAJ6kU_9sXg176.png

注意選擇 FTP 協議,如果新建會話后無法打開會話,可以再次檢查登錄信息是否正確。

wKgZO2jaM1WASMLqAAN2aXruVz4698.png

五、API 接口說明

ftp-API 地址:https://docs.openluat.com/osapi/core/ftp/

六、示例代碼和功能展示

6.1 流程介紹

1、搭建好硬件環(huán)境

2、demo 腳本代碼 netdrv_device.lua 中,按照自己的網卡需求啟用對應的 Lua 文件

3、如果需要單 4G 網卡,打開 require "netdrv_4g",其余注釋掉

4、如果需要以太網卡,打開 require "netdrv_eth_spi",其余注釋掉

5、如果需要多網卡,打開 require "netdrv_multiple",其余注釋掉

6、本示例使用的服務器參考第四章節(jié) 5. 訪問 ftp 服務器,如果是自己的 ftp 服務器,在腳本代碼 ftp_up_download.lua 的 config 表中按自己的服務器 IP,端口號,用戶名,密碼修改參數。

7、Luatools 燒錄內核固件和修改后的 demo 腳本代碼

8、燒錄成功后,自動開機運行,查看打印日志,如果正常運行,會打印 ftp 登錄成功,文件目錄,上傳下載文件結果等信息。

6.2 代碼和 log

6.2.1 代碼示例

(復制鏈接查看 ftp的完整 demo)https://gitee.com/openLuat/LuatOS/blob/master/module/Air780EPM/demo/ftp/main.lua

wKgZO2jaNCiAeK1MAAkfjq81ybE669.png

6.2.2 核心代碼部分

wKgZO2jaNOOAMINVACeYzT82_FI288.png


6.2.3 例程 log 打印如下:

wKgZPGjaNSeACFpqABAxN9ulJs0486.png


6.2.4 luatools 頁面顯示如下:

wKgZPGjaNVeAe55HAAStzgDdDlo639.png


6.2.5 ftp 服務器查看上傳的文件

wKgZO2jaNXqABO2XAAGaqld8yk4368.png

七、總結

本文檔主要介紹 4G 通信中 FTP 通信的應用。

結合 demo 例程講解了 FTP 基本原理,介紹了 FTP 主要 API,旨在最簡單的快速上手 Air8000 的 LuatOS 的 FTP 開發(fā).

八、常見問題

8.1 關于不支持主動模式:

模塊 ftp 默認是被動模式,不支持主動模式,無法設置主動模式,公網下要想模塊正常連接服務器,服務器肯定不能設置為主動模式,否則哪家模塊都不能用.

8.2 ftp 服務器用 vsftpd

vsftpd 是一個 FTP 服務器軟件, 是一個 UNIX 類操作系統(tǒng)上運行的服務器的名字,vsftpd 是 very secure FTP daemon 的縮寫,安全性是它的一個最大的特點,它可以運行在諸如 Linux、BSD、Solaris、 HP-UNIX 等系統(tǒng)上面,是一個完全免費的、開放源代碼的 ftp 服務器軟件,負責搭建和提供文件存儲、訪問服務(相當于 “文件倉庫”),通過監(jiān)聽網絡端口(默認 21 端口)接收客戶端的連接請求,并根據配置允許用戶上傳、下載文件。


今天的內容就分享到這里了~

審核編輯 黃宇

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

    關注

    2938

    文章

    47073

    瀏覽量

    404755
  • FTP
    FTP
    +關注

    關注

    0

    文章

    117

    瀏覽量

    41955
  • 開發(fā)板
    +關注

    關注

    25

    文章

    6050

    瀏覽量

    111269
  • LuatOS
    +關注

    關注

    0

    文章

    124

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Air780EPM嵌入式開發(fā)LuatOS下的MQTT通信實踐

    通過LuatOS腳本在Air780EPM開發(fā)板上實現MQTT通信,是物聯網設備開發(fā)中高效且便捷的解決方案。 一、MQTT 協議詳解 ? 1.1 什么是 MQTT? MQTT(Messa
    的頭像 發(fā)表于 09-30 16:11 ?1470次閱讀
    <b class='flag-5'>Air780EPM</b><b class='flag-5'>嵌入式開發(fā)</b>:<b class='flag-5'>LuatOS</b>下的MQTT通信實踐

    實戰(zhàn)Air780EPM:構建4G共享網關,服務WiFi與有線設備!

    通過Air780EPM開發(fā)板,我們可以輕松實現4G網絡作為數據出口,為周邊的WiFi設備和以太網設備提供互聯網共享,適用于移動辦公、遠程部署等場景。 一、多網融合概述 ? Air780EPM
    的頭像 發(fā)表于 09-30 16:03 ?764次閱讀
    <b class='flag-5'>實戰(zhàn)</b><b class='flag-5'>Air780EPM</b>:構建4G共享網關,服務WiFi與有線設備!

    Air780EPM開發(fā)板NTP對時教程:LuatOS腳本開發(fā)入門指南

    通過簡單的LuatOS腳本,Air780EPM即可實現NTP時間同步。本指南從零開始,帶你掌握嵌入式設備聯網校時的核心方法。 一、NTP通信概述 1.1 NTP 網絡時間協議(英語:Network
    的頭像 發(fā)表于 09-30 16:01 ?890次閱讀
    <b class='flag-5'>Air780EPM</b><b class='flag-5'>開發(fā)板</b>NTP對時教程:<b class='flag-5'>LuatOS</b>腳本<b class='flag-5'>開發(fā)</b>入門指南

    LuatOS嵌入式開發(fā)實戰(zhàn)Air780EPM與MQTT通信

    ?本教程聚焦于LuatOSAir780EPM開發(fā)板上的應用,演示如何通過腳本實現MQTT協議通信,助力物聯網設備快速聯網。 一、MQTT 協議詳解 ? 1.1 什么是 MQTT? MQTT
    的頭像 發(fā)表于 09-29 18:10 ?200次閱讀
    <b class='flag-5'>LuatOS</b><b class='flag-5'>嵌入式開發(fā)</b><b class='flag-5'>實戰(zhàn)</b>:<b class='flag-5'>Air780EPM</b>與MQTT通信

    LuatOS Air780EPM 開發(fā)板 HTTP 教程:原理講解與項目實操!

    本篇教程將系統(tǒng)介紹 LuatOS Air780EPM 在 HTTP 通信中的應用,從請求機制到響應解析,配合完整代碼演示,讓你輕松實現設備端與云端的數據交互。 一、HTTP 概述 1.1
    的頭像 發(fā)表于 09-26 20:36 ?252次閱讀
    <b class='flag-5'>LuatOS</b> <b class='flag-5'>Air780EPM</b> <b class='flag-5'>開發(fā)板</b> HTTP 教程:原理講解與項目實操!

    Air8101多網融合戰(zhàn)略升級:Air780EPM模塊助力4G聯網落地

    應用邁向新高度。 本文將分享Air8101核心通過外掛Air780EPM整機開發(fā)板,實現4G聯網的功能示例。 ? 一、硬件準備工作 ? 1
    的頭像 發(fā)表于 06-23 16:53 ?311次閱讀
    <b class='flag-5'>Air</b>8101多網融合戰(zhàn)略升級:<b class='flag-5'>Air780EPM</b>模塊助力4G聯網落地

    Air780EPM — ADC硬件電路設計:場景化優(yōu)化與實踐!

    Air780EPM的ADC精度怎么樣,想節(jié)約一顆外掛ADC… ? 今天也跟大家一起分享下相關內容。在設計ADC硬件電路之前,請務必先查看LuatOS二次開發(fā)ADC相關庫函數的描述。 最新ADC庫函數
    的頭像 發(fā)表于 06-11 14:40 ?446次閱讀
    <b class='flag-5'>Air780EPM</b> — ADC硬件電路設計:場景化優(yōu)化與實踐!

    解鎖Air780EPM:N種GPIO操控LED的實戰(zhàn)技巧!

    在物聯網項目中,靈活使用Air780EPM的GPIO控制LED至關重要。本文將展示實現方式,涵蓋硬件配置與軟件編程,滿足不同場景需求。 今天特別分享基于Air780EPM的GPIO控制LED實現方案
    的頭像 發(fā)表于 05-28 16:56 ?476次閱讀
    解鎖<b class='flag-5'>Air780EPM</b>:N種GPIO操控LED的<b class='flag-5'>實戰(zhàn)</b>技巧!

    如何解決Air780EPM開發(fā)中的調試難題?深度解析高效調試方法

    Air780EPM項目開發(fā)中,調試效率往往直接影響進度。面對代碼報錯、邏輯漏洞等常見痛點,開發(fā)者亟需一套系統(tǒng)化的方法論。本文將揭秘實戰(zhàn)中驗證的調試技巧,助您快速定位問題并優(yōu)化代碼流程
    的頭像 發(fā)表于 05-17 10:46 ?472次閱讀
    如何解決<b class='flag-5'>Air780EPM</b><b class='flag-5'>開發(fā)</b>中的調試難題?深度<b class='flag-5'>解析</b>高效調試方法

    深度解析Air780EPM模組:LuatOS下CAN總線通信的完整方案!

    本文聚焦Air780EPM的CAN通信能力,結合LuatOS實時操作系統(tǒng),從底層驅動到應用層協議,詳細拆解如何實現工業(yè)級CAN總線數據傳輸,助力開發(fā)者快速落地項目。 最新資料詳見: https
    的頭像 發(fā)表于 05-06 14:22 ?618次閱讀
    深度<b class='flag-5'>解析</b><b class='flag-5'>Air780EPM</b>模組:<b class='flag-5'>LuatOS</b>下CAN總線通信的完整方案!

    快速開發(fā)實戰(zhàn)——4路低功耗ADC接口,Air780EPM二次開發(fā)必看!

    Air780EPM 模組,內置4MB大內存RAM,支持LCD、攝像頭、Modbus、以太網、CAN;具備更強大的二次開發(fā)資源,更完善的外設能力,也更適于工業(yè)場景。 ? 最新開發(fā)資料詳見
    的頭像 發(fā)表于 04-01 14:56 ?472次閱讀
    快速<b class='flag-5'>開發(fā)</b><b class='flag-5'>實戰(zhàn)</b>——4路低功耗ADC接口,<b class='flag-5'>Air780EPM</b>二次<b class='flag-5'>開發(fā)</b>必看!

    血淚教訓總結:Air780EPMLuatOS二次開發(fā)——OneWire協議調試注意事項

    在物聯網設備開發(fā)中,精準且穩(wěn)定的數據傳輸是構建智能系統(tǒng)的核心。通過本文,開發(fā)者不僅能掌握規(guī)避常見陷阱的方法,還能學習如何利用Air780EPM的硬件特性與LuatOS的靈活API設計,
    的頭像 發(fā)表于 03-20 17:52 ?828次閱讀
    血淚教訓總結:<b class='flag-5'>Air780EPM</b>的<b class='flag-5'>LuatOS</b>二次<b class='flag-5'>開發(fā)</b>——OneWire協議調試注意事項

    新手必看!4G模組Air780EPM——GPIO的設計說明

    Air780EPM的GPIO設計需兼顧硬件可靠性與軟件靈活性,開發(fā)者應基于具體應用場景權衡復用功能優(yōu)先級,并遵循電源管理規(guī)范以延長設備生命周期。通過模塊化配置與精細化調試,可最大化釋放模組性能潛力
    的頭像 發(fā)表于 03-20 17:48 ?537次閱讀
    新手必看!4G模組<b class='flag-5'>Air780EPM</b>——GPIO的設計說明

    手把手教你!4G模組Air780EPM——GPIO的設計說明

    ? 開發(fā)方式 :Air780EPM 僅支持 LuatOS 軟件開發(fā)方式,不支持 AT 指令開發(fā)方式。若使用 AT 指令
    的頭像 發(fā)表于 03-17 16:07 ?711次閱讀
    手把手教你!4G模組<b class='flag-5'>Air780EPM</b>——GPIO的設計說明

    Air780EPM 模塊串口電路設計硬件指導

    串口作為Air780EPM模塊的核心通信接口,承擔著設備控制、數據傳輸及外設交互等關鍵功能,在物聯網終端、智能設備、工業(yè)自動化等場景中不可或缺。 一、概述 ? 串口作為 Air780EPM 模塊最最
    的頭像 發(fā)表于 03-07 17:56 ?516次閱讀
    <b class='flag-5'>Air780EPM</b> 模塊串口電路設計硬件指導