完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在前面的视频中介绍了控制 led 的程序的实现,需要把编译好的 led 可执行文件拷贝到文件系统里面,用 make_ext4fs 命令重新制作 system.img 文件系统,然后再烧写到 iTOP- 4412 开发板,然后再运行led 可执行文件。这种方式的缺点是每次修改了应用程序,都需要重新制作文件系统,在重新烧写文件系统,效率很低。
这一章先讲解如何通过 TFTP 来实现在线传输文件,先在虚拟机 Ubuntu 上搭建一个服务器,并在虚拟机 Ubuntu 上做客户端进行测试。 TFTP(Trivial File Transfer Protocol,简单文件传输协议),是一个基于 UDP 协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于开销不大、不复杂的应用场合。TFTP 协议专门为小文件传输而设计,只能从服务器上获取文件,或者向服务器写入文件,不能列出目录,也不能进行认证。 |
|
|
|
Linux网络部分的学习方法
这里并不会费劲的去介绍 TFTP 协议,那个意义不大,主要是教大家如何操作,在这个过程中进步。网络协议非常复杂,完整的网络协议一个人将资料看一遍,估计这辈子就过去了。在这个庞大的网络工程中,不同的工程师分别做不同的工作,作为嵌入式 linux 工程师,要做的就是拿别人做好的东西移植,在嵌入式上完善功能。 其实嵌入式上的所有功能从最开始,几乎都是从 PC 上移植过来的,很多代码以及软件都是在 PC 机上实现过,嵌入式 ARM 处理器的发展相对于滞后(ARM 的流行是 2000 年之后的事情),所以在嵌入式上移植就成了非常重要的一项能力。 19.1 Ubuntu 服务端的搭建 在虚拟机 Ubuntu 上打开终端,如下图。 首先输入命令“sudo apt-get install xinetd”,安装 xinetd,如下图。 安装完 xinetd,如下图。 接下来输入命令“sudo apt-get install tftp tftpd”安装 tftp 和 tftpd,如下图。 安装完成后,如下图。 然后建立 TFTP 的配置文件,使用命令“vi /etc/xinetd.d/tftp”建立文件,如下图。 |
|
|
|
写入下面的内容:
service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/***in/in.tftpd server_args = -s /var/tftpboot/ disable = no per_source = 11 cps = 100 2 flags= IPv4 } 如下图。 注意:如上图所示,这个文件在粘贴内容之后,必须按照上面的格式严格对齐。 退出并保存。其中 server_args 设置的/var/tftpboot 目录是 tftp 服务器的目录,TFTP 客户端就是从这个目录里面获取服务器上的文件的。使用命令 mkdir /var/tftpboot 建立 tftp 服务器的目录,如下图。 然后设置/var/tftpboot的访问权限为 777,如下图。 输入:sudo /etc/init.d/xinetd restart 命令重启xinetd服务,如下图。 服务器到这一步就搭建好了,后面来进行测试。 |
|
|
|
服务器测试
本机测试:在/var/tftpboot下面建立一个文件test,在里面输入 hello world,然后保存该文件,如下图。 在启动另外一个终端,如下图。 然后输入:tftp 127.0.0.1,如下图。 输入 get test 获取 test 文件,如下图。 在上图看到获取到 test 的信息 13 字节,然后输入 q 退出 tftp,如下图。 然后输入 ls 查看当前目录下是否有 test 文件了,通过查看,发现当前目录下应经有 test 文件了,这就是/var/tftpboot 目录下的那个 test 文件,如下图。 使用 cat 命令查看一下 test 文件的内容,如下图。 通过上面的截图,看到 test 文件里面的内容是 hello world,与/var/tftpboot 目录的 test 是一样的,至此的 TFTP 服务器端的配置和测试就完成了。 |
|
|
|
只有小组成员才能发言,加入小组>>
793 浏览 0 评论
1152 浏览 1 评论
2528 浏览 5 评论
2861 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2711 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1071浏览 3评论
194浏览 2评论
456浏览 2评论
369浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
454浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 18:35 , Processed in 1.686475 second(s), Total 85, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号