目录

  • 前言
  • 一、为什么要文件传输
  • 二、利用共享文件夹(简要流程)
  • 三、tftp传输与环境搭建
  • 四、传输前的准备工作
  • 五、测试准备工作是否完成
  • 六、传输文件
    • 6.1、windows中tftp32的配置
    • 6.2、嵌入式Linux(板子)中获取或发送文件
      • 6.2.1、tftp命令用法

前言

在我们接触嵌入式Linux之前,你一定接触过ubantu或者centos或者其它Linux发行版吧,很好,目前我们都是使用在虚拟机上面的。而我们所说
的嵌入式Linux,是运行在开发板里面的(裁剪后Linux)。

一、为什么要文件传输

首先,为什么我们要实现将windows的文件传给嵌入式Linux(板子)呢?因为嵌入式设备(板子)的运行速度往往比主机慢得多,许多专用的嵌入式硬件被设计为低成本和低功耗,没有太高的性能。整个编译过程是非常消耗资源的,嵌入式系统往往没有足够的内存或磁盘空间,因为板子的内存空间资源有限,而且因为Linux系统是经过裁剪,很多库也没有,所以,在板子上去安装gcc去编译程序不太现实。

所以我们就需要通过电脑去编译后,然后把可执行文件传输给板子。

二、利用共享文件夹(简要流程)

我的做法是在VMware虚拟机中与windows共享文件夹,这样在虚拟机中(centos7系统)中写C程序,然后在虚拟机中编译程序生成执行文件存放在这个共享文件夹中。

因为是共享文件夹,所以windows可以直接去查看传输这些文件到板子上。

三、tftp传输与环境搭建

windows与嵌入式Linux(板子)间是通过tftp进行文件传输的(至于tftp的知识,这里不介绍,不是很了解也不影响这个操作)。想要进行tftp传输,自然需要去搭建tftp环境,谁要用到,谁就得搭建。所以windows需要搭建tftp环境(作为服务端tftp-service发送),一般来说对于嵌入式Linux设备(板子),该设备中的u-boot支持tftp-client(作为客户端接收),所以嵌入式设备不用配置tfpt,那么windows怎么搭建这个所谓的tfpt环境呢,其实很简单,只需要下载一个软件就好了------tftp32。而板子的嵌入式Linux系统又不用做什么,是不是很简单。(资源链接放下面需要自提)

软件链接:https://pan.baidu.com/s/1L7RxhJEozw160BgzIHDI4Q
提取码:tftp

四、传输前的准备工作

搭建好环境之后呢,我们就需要进行联网操作,因为我们文件传输是得有网络,才能传输的嘛,所以联网很关键!而且要在同一个网段下(可以两个设备连接上同一个路由器)。一个就是我们的电脑windows连网,还有就是我们的嵌入式设备(开发板),也需要联网,至于开发板怎么联网,好问题!我当时是通过系统自带的脚本文件执行联网的。如下图:
(通过MobaXterm软件中串口连接开发板进入的嵌入式Linux系统)

etc 目录下有个wlan-connect.sh的脚本文件,
在命令行输入./wlan-connec WIFI名 WIFI密码 1 就可以连接上WIFI了!

MobaXterm软件资源链接:https://pan.baidu.com/s/1k1RAurXizs1IuDzaI7VQkg
提取码:lsc6

五、测试准备工作是否完成

连上网络之后,我们先用ping命令去测试一下,windows,能不能与嵌入式Linux ping通。
windows中win+R,输入cmd回车,进入一个黑色的窗口,然后输入ping 嵌入式Linux的ip,然后回车
(windows ping 开发板成功的现象)

如果你不知道你的开发板的IP地址,你可以输入命令ifconfig查看:

然后在嵌入式Linux中去ping windows的ip,看看是否能够ping通
(嵌入式Linux(开发板) ping windows成功的现象)

如果你不知道怎么看你的windows的IP地址,你可以点开你电脑连接的WIFI,然后点属性,拉到最下面,那个Ipv4地址就是了。

如果嵌入式Linux ping不同windows但是windows能ping通嵌入式Linux,那么就关闭windows的防火墙,就好了:


六、传输文件

以上完成没有问题之后,我们就可以开始传输文件了,我们只需要在tftp中绑定好要传输文件的根目录,然后点击服务端,就可以在嵌入式Linux中获取文件。
题外话:如果在虚拟机中需要传输文件,前题得搭建好tftp环境(centos的tftp环境搭建参考http://t.csdn.cn/rNrmV),其次在修改/etc/xinetd.d/tftp文件中的server_args =-s 根目录 -c去设置一个根目录-c表示可以在这个目录下创建新文件,将其中的disable=yes改为disable=no开启服务。

6.1、windows中tftp32的配置

(点击Browse选择你程序文件存放的目录,嵌入式Linux获取文件就会在这个目录里面去获取,我这里是选择了共享文件夹)

(然后点击Setting,按下图配置)


(最后选择tftp server,这样windows就会处于一个监听的状态,等待嵌入式Linux获取或发送文件)

6.2、嵌入式Linux(板子)中获取或发送文件

好,那么现在windows我们是已经大功告成了,接下来,我们只需要去嵌入式Linux下输入指令,就可以传输文件了。

6.2.1、tftp命令用法

(centos7虚拟机中测试这个命令,前提虚拟机需要搭建tftp环境,ubantu系统可参考http://t.csdn.cn/NuMtz,centos的话参考http://t.csdn.cn/rNrmV)

tftp 传输的对象的IP地址
输入tftp IP 后回车就会出现:

可以再输入下面这些命令,去使用tftp:
connect:连接到远程tftp服务器
mode:文件传输模式
put:上传文件
get:下载文件
quit:退出
verbose:显示详细的处理信息
tarce:显示包路径
status:显示当前状态信息
binary:二进制传输模式
ascii:ascii传送模式
rexmt:设置包传输的超时时间
timeout:设置重传的超时时间
help:帮助信息
?:帮助信息

-g表示下载文件(get)
-p表示上传文件(put)
-l表示本地文件名(local file)
-r表示远程主机的文件名(remote file)

例如发送一个文件:
输入put 文件名(这个文件是在当前目录下的文件,如果文件不存在会报错)

嵌入式Linux(开发板)中使用tftp命令获取执行文件:

例1:要从远程主机(windows)192.168.0.102上下载main(编译过的执行文件),则应输入以下命令:

tftp -g -r main 192.168.0.102

我在/root目录下新建了个linux C的文件夹,刚开始什么没有,执行上面命令后,就获取到windows中tftp32绑定根目录中的执行文件main

获取到文件后,就可以输入./main执行文件了

本人也是初学者,以上若有什么说的不正确的地方,可以在评论区指点一下(嘿嘿嘿)

嵌入式linux与windows之间的tftp文件传输(保姆级)相关推荐

  1. scp命令在linux和windows之间互传文件

    为了进行系统维护操作,有时需要再windows和linux或Unix系统之间互传文件,虽然有很多工具可以实现该功能,但我还是觉得命令行来的方便快捷, 起初使用linux的scp命令,总是不成功,网上也 ...

  2. 双电脑双系统Linux与Windows之间的简单文件(图片,视频,压缩包)传输方式——微信文件传输助手网页版

    由于近期项目需要,在Ubuntu系统下工作,截图传至Windows下记录,网上搜了一些方法感觉很复杂,多为Windows下与虚拟机中Ubuntu的文件传输,与本人需求不符.经过探索,发现使用微信文件传 ...

  3. linux和Windows之间互传文件

    几种比较简单的方法 1.xshell 安装lrzsz  #yum -y install lrzsz windows 传给linux   输入 rz  然后选择目标文件 linux 传给 Windows ...

  4. linux nc 传送文件,Linux下nc命来实现文件传输

    发送端: cat test.txt | nc -l -p 6666 或者nc -l -p 6666 < test.txt 有些版本不要在 -p [监听6666端口,等待连接](设发送端IP为10 ...

  5. 利用lrz、lsz工具在linux与windows之间传输文件

    1.什么是rz/sz (lsz/lrz) 简单说就是,可以很方便地用这两个sz/rz工具,实现Linux下和Windows之间的文件传输(发送和接收),速度大概为10KB/s,适合中小文件.rz/sz ...

  6. linux 指令tftp传输文件_Linux tftp命令使用详解:在本机与tftp服务器之间使用TFTP协议传输文件...

    tftp命令用在本机和tftp服务器之间使用TFTP协议传输文件. TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现.嵌入式linux的tftp开发环境包括两个方面:一是linux服 ...

  7. linux 指令tftp传输文件_tftp命令_Linux tftp 命令用法详解:在本机和tftp服务器之间使用TFTP协议传输文件...

    tftp命令用在本机和tftp服务器之间使用TFTP协议传输文件. TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现.嵌入式linux的tftp开发环境包括两个方面:一是linux服 ...

  8. 利用SecureCRT在linux与Windows之间传输文件

    From: http://blog.csdn.net/sungblog/article/details/7274716 利用SecureCRT在linux与Windows之间传输文件         ...

  9. Linux与Windows之间实现文件实时同步的方案

    记linux与Windows之间实现文件实时同步的方案 近日,数据分析部提了个需求说要让一台linux的机器上的文件同步到一台Windows机器的某个目录下,由于本姑娘从来没有碰到过这种问题,于是上网 ...

最新文章

  1. SWFUpload上传
  2. Oracle逻辑备份与恢复
  3. 使用java理解程序逻辑 第十二章_Java弱引用的理解与使用
  4. 小游戏发布云测试工具,中小团队的“小又快”可以这么来
  5. 梦断代码阅读笔记02
  6. 『飞秋』关于ASP.NET MVC+Repository+Service架构的一些思考
  7. 38 FI配置-财务会计-固定资产-组织结构-指定帐户确定
  8. union和union all区别
  9. 数据采集卡的模拟输入信号到底应该怎么接线
  10. CnCerT.Net.SKiller工作原理
  11. FMVP詹姆斯,王者归来!英雄实至名归!
  12. c++滑动窗口leetcode3\567
  13. 怎么在cmd窗口产生个随机数
  14. Excel关闭受保护的视图
  15. 微信公众号开发前端逻辑
  16. UVALive 5739|User Names|模拟
  17. 《猫鼠游戏》想到的CTF场景。。。。。
  18. 专业免费的图片、照片去灰底、修复软件,专业人员都在用它
  19. 群体进化,群体结构分析之STRUCTURE分析三款软件比较
  20. ROS机器人系列竞赛之工业自动化(侧重机器人敏捷开发)Agile Robotics for Industrial Automation Competition ariac 2022

热门文章

  1. 吐槽大会java_Rust吐槽大会纪要
  2. Java基础学习笔记(十九)—— 多线程(1)
  3. 贾跃亭微博发新车V9图片 计划明年量产预售
  4. (精)反激式开关电源
  5. js 判断一个日期是不是在下周一到下周日
  6. 百分点认知智能实验室出品:情感分析在舆情中的研发实践(上)
  7. 继欧洲之后,工信部推出强硬新规,苹果如不遵从或被逐出中国市场
  8. IntelliJ IDEA 安装和使用
  9. 【Handshake】引发全硅谷投资机构额度大战的传奇项目
  10. NRF52832学习笔记(19)——TWI(I2C)接口使用