0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

轻松攻克低功耗4G模组软件的FTP示例!

青山老竹农 来源:jf_82863998 作者:jf_82863998 2024-12-05 09:08 次阅读

今天是以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)设置为二进制方式传输文件,否则传输过程中会丢弃换行符。

分享完毕,欢迎关注

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 物联网
    +关注

    关注

    2909

    文章

    44452

    浏览量

    372405
  • FTP
    FTP
    +关注

    关注

    0

    文章

    110

    浏览量

    40611
  • 低功耗
    +关注

    关注

    10

    文章

    2385

    浏览量

    103641
收藏 人收藏

    评论

    相关推荐

    解读Air724UG低功耗4G模组软件的语音通话!

    本篇文章以Air724UG模组为例,解读低功耗4G模组软件的语音通话,呈现实用教程供大家参考。
    的头像 发表于 12-09 09:39 79次阅读
    解读Air724UG<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>软件</b>的语音通话!

    分步实操 | Air724UG低功耗模组软件中复刻高效FTP示例

    本文要说的是低功耗4G模组Air724UG软件中复刻高效FTP示例,我已整理成文供大家参考。
    的头像 发表于 12-03 11:45 527次阅读
    分步实操 | Air724UG<b class='flag-5'>低功耗</b><b class='flag-5'>模组</b><b class='flag-5'>软件</b>中复刻高效<b class='flag-5'>FTP</b><b class='flag-5'>示例</b>!

    低功耗模组软件的UDP示例 基础教程篇

    本文以常用的低功耗4G模组Air724UG为例,做出关于低功耗模组软件的UDP
    的头像 发表于 12-02 14:53 136次阅读
    <b class='flag-5'>低功耗</b><b class='flag-5'>模组</b><b class='flag-5'>软件</b>的UDP<b class='flag-5'>示例</b>   基础教程篇

    4G模组Air780E的LuatOS开发之位运算(bit)示例

    本文我要说的是低功耗4G模组Air780E的LuatOS开发,关于位运算(bit)示例,我将详细解析分享给大家。
    的头像 发表于 12-02 14:33 128次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air780E的LuatOS开发之位运算(bit)<b class='flag-5'>示例</b>

    4G模组Air724UG的软件教程:KEYPAD示例

    本回我要说的是低功耗4G模组Air724UG的KEYPAD示例,我已整理成文,特供大家参考。
    的头像 发表于 11-30 09:44 200次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air724UG的<b class='flag-5'>软件</b>教程:KEYPAD<b class='flag-5'>示例</b>!

    低功耗模组Air780E的AT指令:FTP示例

    本文说的是关于4G模组AT指令的FTP示例,以Air780E为例,希望大家有所收获。
    的头像 发表于 11-30 09:40 153次阅读
    <b class='flag-5'>低功耗</b><b class='flag-5'>模组</b>Air780E的AT指令:<b class='flag-5'>FTP</b><b class='flag-5'>示例</b>!

    4G模组Air724UG软件示例:UDP实战演练!

    关于4G模组Air724UG软件的UDP示例,今天我将对其实战演练,整理成文示例展示:
    的头像 发表于 11-26 12:10 133次阅读
    <b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air724UG<b class='flag-5'>软件</b><b class='flag-5'>示例</b>:UDP实战演练!

    UART通信入门:4G模组软件的实践指南

    本文将对4G模组Air724UG软件的UART做出相关示例,希望想了解此模组的朋友们收藏好仔细看。
    的头像 发表于 11-17 00:07 360次阅读
    UART通信入门:<b class='flag-5'>4G</b><b class='flag-5'>模组</b><b class='flag-5'>软件</b>的实践指南

    示例篇:4G模组AT指令之MQTT应用!

    针对4G模组AT指令的MQTT应用,我收集资料,做出示例,整理成文分享给大家,喜欢的可以收藏。
    的头像 发表于 11-12 11:56 267次阅读
    <b class='flag-5'>示例</b>篇:<b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT指令之MQTT应用!

    干货篇:低功耗4G模组Air780E的串口通信

    ​ 今天我们来讲解低功耗4G模组Air780E的串口通信的基本用法,小伙伴们,学起来吧!
    的头像 发表于 10-05 14:38 497次阅读
    干货篇:<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air780E的串口通信

    FTP应用看这篇!合宙Air780EP低功耗4G模组AT开发示例

    ​ Air780EP是合宙的[低功耗4G模组]之一,支持全系列的AT指令以及LuatOS脚本二次开发。 本文应各位大佬邀请,详细讲解了Air780EP模组
    的头像 发表于 09-29 09:36 1798次阅读
    <b class='flag-5'>FTP</b>应用看这篇!合宙Air780EP<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>AT开发<b class='flag-5'>示例</b>

    合宙低功耗4G模组Air780EP——硬件设计02

    合宙低功耗4G模组Air780EP——硬件设计
    的头像 发表于 09-03 15:07 630次阅读
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air780EP——硬件设计02

    合宙低功耗4G模组Air780E——产品规格书

    合宙低功耗4G模组Air780E的规格信息速览
    的头像 发表于 09-02 18:04 948次阅读
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air780E——产品规格书

    合宙低功耗4G模组Air780EQ——硬件设计手册01

    合宙低功耗4G模组Air780EQ的硬件设计介绍
    的头像 发表于 08-29 18:15 2128次阅读
    合宙<b class='flag-5'>低功耗</b><b class='flag-5'>4G</b><b class='flag-5'>模组</b>Air780EQ——硬件设计手册01

    AT指令速通FTP:合宙Air780EP模块超详细教程

    合宙Air780EP低功耗4G模组AT开发接入FTP超详细示例
    的头像 发表于 08-20 17:40 2443次阅读
    AT指令速通<b class='flag-5'>FTP</b>:合宙Air780EP模块超详细教程