久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

博客專欄

EEPW首頁 > 博客 > 輕松攻克低功耗4G模組軟件的FTP示例!

輕松攻克低功耗4G模組軟件的FTP示例!

發布人:13673998452 時間:2025-02-09 來源:工程師 發布文章

今天是以Air724UG模組為例,輕松攻克低功耗4G模組軟件的FTP示例。


一、簡介

FTP(File Transfer Protocol,文件傳輸協議) 是 TCP/IP 協議組中的協議之一。

FTP 協議包括兩個組成部分,其一為 FTP 服務器,其二為 FTP 客戶端。其中 FTP 服務器用來存儲文件,用戶可以使用 FTP 客戶端通過 FTP 協議訪問位于 FTP 服務器上的資源。在開發網站的時候,通常利用 FTP 協議把網頁或程序傳到 Web 服務器上。此外,由于 FTP 傳輸效率非常高,在網絡上傳輸大的文件時,一般也采用該協議。

默認情況下 FTP 協議使用 TCP 端口中的 20 和 21 這兩個端口,其中 20 用于傳輸數據,21 用于傳輸控制信息。但是,是否使用 20 作為傳輸數據的端口與 FTP 使用的傳輸模式有關,如果采用主動模式,那么數據傳輸端口就是 20;如果采用被動模式,則具體最終使用哪個端口要服務器端和客戶端協商決定。


二、演示功能概述

本教程教你如何使用開發板登錄 FTP 服務器訪問服務器資源。

功能定義:

1、登錄 FTP 服務器

2、讀取服務器上的文件資源 

3、在 FTP 服務器上創建目錄


三、準備硬件環境


3.1 開發板準備

使用 EVB_Air724 開發板,如下圖所示:

wKgZPGdOgxGAP0T5ABh-Kzqe9xs072.png

此開發板的詳細使用說明參考:
https://docs.openluat.com/air724ug/product/

Air724UG 產品手冊 中的《EVB_Air724UG_AXX 開發板使用說明》,寫這篇文章時最新版本的使用說明為:《EVB_Air724UG_A14 開發板使用說明》;開發板使用過程中遇到任何問題,可以直接參考這份使用說明文檔。

api文檔:
https://doc.openluat.com/wiki/21?wiki_page_id=2068


3.2 數據通信線

USB 數據線一根(micro USB)


3.3 PC 電腦

WIN7 以及以上版本的 WINDOWS 系統。


3.4 SIM 卡

中國大陸環境下,可以上網的 SIM 卡。一般來說,使用移動,電信,聯通的物聯網卡或者手機卡都行。


3.5 組裝硬件環境

USB 數據線插入 USB 口,另一端與電腦相連,撥碼開關全部撥到 ON,串口切換開關選擇 UART1,USB 供電的 4V 對應開關撥至 ON 檔,SIM 卡放到 SIM 卡槽中鎖緊,如下圖所示。

wKgZO2dOgyCAYKRbAAzGh0x5WB4889.png


四、準備軟件環境


4.1 下載調試工具

使用說明參考:
Luatools下載和詳細使用:
https://docs.openluat.com/Luatools/


4.2 源碼及固件

1)底層 core 下載

下載底層固件,并解壓

鏈接:
https://docs.openluat.com/air724ug/luatos/firmware/

如下圖所示,紅框的是我們要使用到的

wKgZPGdOgy-AbwfMAAbtFCDP8yc962.png

本教程使用的 demo 見附件:

https://gitee.com/openLuat/LuatOS-Air724UG/tree/master/script_LuaTask/demo/ftp


4.3 下載固件和腳本到開發板中

打開 Luatools,開發板上電開機,如開機成功 Luatools 會打印如下信息。

wKgZO2dOg0SAa1R8AAU3J9VCx5c474.png

點擊項目管理測試選項。

wKgZO2dOg0-AWD6NAAFrkt4sW9U588.png

進入管理界面,如下圖所示。

wKgZPGdOg1iAVplRAANKtpEWiI4897.png

點擊選擇文件,選擇底層固件,我的文件放在 D:luatOSAir724 路徑中

wKgZO2dOg2SAEM2vAAC06OPVSk8871.png

點擊增加腳本或資源文件,選擇之前下載的程序源碼,如下圖所示。

wKgZPGdOg22AObzPAAIDhoNda28908.png

點擊下載底層和腳本,下載完成如下圖所示。

wKgZPGdOg3eAOm0MAAHJT8uOkXE920.png

4.4 FTP 服務器

本文測試用的服務器的地址,端口號,用戶名,密碼為:
 "121.43.224.154",21,"ftp_user","3QujbiMG"。

如果使用其他服務器請自行修改。


五、代碼示例介紹

5.1 API 說明

ftp 的 API 在 LuatOS lib 有做封裝,建議直接用 lib 的 API 接口。

wKgZO2dOg4aAPLtmAAOh7Dpiu4w583.png

5.2 ftp_test.lua 代碼

系統啟動后演示 5 秒,登錄 FTP 服務器,等待登錄成功后,查看服務器信息、顯示目錄下文件、顯示文件詳細信息、顯示工作目錄、創建目錄等操作。

下載 ftp 服務器的文件至 sd 卡目錄,/1040K.jpg", "/sdcard0/1040K.jpg"

從 sd 卡目錄上傳文件至服務器,/sdcard0/ftp_lib_test_up.txt"

在 ftp_test.lua 這個文件中將登錄中的地址,端口號,用戶名,密碼等必要信息修改為自己服務器的。

wKgZPGdOg5eAEHluAAQqyWEx1-k563.png

 

wKgZPGdOg6mAVr9OAAW8q_d2wsM554.png

 

wKgZO2dOg7iAcfGEAAWEEeHQ9xE254.png

 

wKgZO2dOg8SAT_ICAAEOX_7BmnQ405.png

 

5.3 main.lua 代碼

本代碼為主程序腳本,系統啟動后首先會對 4G 網絡進行配置,然后加載 FTP 測試模塊。



六、開機調試


6.1 開發板開機

連接好硬件并下載固件后,啟動 Luatools 軟件,系統運行信息將顯示在界面中。紅框中為開發板連接到 PC 機后正常打印的信息,如下圖所示。

wKgZPGdOg9KAKnZPAAOVr1sk1Ek458.png

6.2 FTP 調試

FTP 登錄服務器,并且獲取信息。

wKgZO2dOg92Act2PAAbE1DWgqeA544.png

顯示目錄下的文件

wKgZO2dOg_iASiWuABBQP2KgqqE564.png

 

wKgZPGdOhAWAUgR6AAP0Hgt_Hjo134.png

創建目錄/ftp_test

wKgZO2dOhBWAeYChABG0wCIgg28614.png

下載 ftp 服務器的文件

下載成功返回 200。

下載前 FTP 服務器的數據如下:

wKgZPGdOhCeAeu-oAA4miRHKYWQ527.png

 

wKgZO2dOhDmAQNxRAAuCvzR5zZ8196.png

下載文件的打印日志信息:

wKgZPGdOhE2AFBO_AAatr9BgKFk166.png

上傳文件至服務器

上傳成功返回 200。

上傳成功后 FTP 服務器的數據如下:

wKgZPGdOhFeAOb2jAA1qO0EpVuE490.png

 

wKgZO2dOhGiAamafAAsbxFpOKAo467.png

上傳文件打印日志信息:

wKgZPGdOhHWAF8F5AAsoXf8Agjs599.png


七、常見問題


7.1 關于不支持主動模式

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


7.2 發送帶 0x0d 0x0a 這些數據會丟失

需要通過 ftp.checktype(“I”,0)設置為二進制方式傳輸文件,否則傳輸過程中會丟棄換行符。


審核編輯 黃宇


*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。




相關推薦

技術專區

關閉