JZ2440开发板与电脑通过网线直连,实现开发板、虚拟机、PC机三者互Ping,并成功挂接网络根文件系统

声明:

本文提及的部分图片与内容属于韦东山老师的教学视频课程内容,本文提出的解决方案是基于韦老师教学视频中提及方案的扩展。

转载内容来自:

【005_ARM裸机1期加强版_第006课_第006节_一句话解决嵌入式开发ping问题】

【 006_u-boot_内核_根文件系统(新1期_2期间的衔接)】

 1.为什么要使JZ2440开发板与电脑通过网线直连这一种方式来实现开发板、虚拟机、PC机三者互Ping,并挂接网络根文件系统?

    问题背景:

    ① 韦老师在“一句话解决嵌入式开发ping问题”课程中,所提及的②、③、④、⑤方法都是在有路由器的前提下的,在没有路由器的情况下这些方法并不适用,只有方法①适用,但方法①并未详细讲述如何实现。

    ② 对于大学生来说,高校中的宿舍一般是一人一个以太网接口,然后通过登陆校园网账号后才能连接外网,并没有路由器这种高科技东西。

    ③ 在无法实现开发板、虚拟机、PC机三者互Ping的情况下,开发板无法挂接到虚拟机的网络根文件系统,进而导致在后面的学习课程无法跟上老师的步伐,无法看到程序在开发板上运行的效果。

    

    解决想法:

    ① 让开发板通过WIFI网卡连接到手机发出的热点WiFi,再让PC机连接到手机发出的热点WiFi,不管虚拟机,实现开发板和PC机可以互ping

         使开发板、虚拟机、PC机三者互Ping,并挂接网络根文件系统无非是要让在PC机上的文件可以传到开发板上嘛,那不如直接绕过虚拟机,在开发板和PC机可以互ping的情况下通过FileZilla软件来实现文件互传,这样的话我们就不用每次都在PC机上打开虚拟机这么麻烦。于是我跳跃式的直接观看韦老师的第3期视频的第2课第1.1_15节_使用WIFI网卡,学习完相应的视频后,准备动手直接让开发板通过WIFI网卡连接到手机发出的热点WiFi,再让PC机连接到手机发出的热点WiFi,这样就能使开发板和PC机互ping进而通过FileZilla软件来实现文件互传啦。“理想很美满,现实很骨感”,我在进行这个方案的过程中,我发现韦老师在第3期视频的第2课第1.1_15节_使用WIFI网卡的所有视频中都是先让PC机上的文件传到虚拟机,再通过虚拟机的网络根文件系统传到开发板上。于是我还去看了第2期关于驱动的教学视频,也是先让PC机上的文件传到虚拟机,再通过虚拟机的网络根文件系统传到开发板上。韦老师从事嵌入式培训这么长时间无理由没想到我这种方案更方便啊,那到底为什么非要让文件通过虚拟机这个中转站?后来我实现了开发板通过WIFI网卡使得自身可以和PC机互ping并可以通过FileZilla软件来实现文件互传后, 我发现在开发板上无法使用“gcc”、“arm-linux-gcc”等命令对PC机传过来的文件进行编译,顿时恍然大悟。原来虚拟机中自带了很多开发板上没有的库和工具,而这些库和工具由于开发板的内存大小限制无法全部移植到开发板上。开发板只适合运行已经编译好的可执行文件,不适合用于编译文件,所以必须通过虚拟机把文件先编译,再传到开发板上直接运行。

   ②  让开发板通过WIFI网卡连接到手机发出的热点WiFi,再让PC机连接到手机发出的热点WiFi,再让虚拟机通过桥接模式连接到PC机的无线网卡,实现开发板、虚拟机、PC机三者互ping

         这个方案可以实现开发板、虚拟机、PC机三者互ping,并让开发板挂接到虚拟机的网络根文件系统,进而使PC机上编写好的程序传到虚拟机中由虚拟机编译,虚拟机编译生成的输出文件再传到开发板上直接运行。但是这个方案并非完美解决方案,原因在于只学习到006_u-boot_内核_根文件系统(新1期_2期间的衔接)_第004课_根文件系统,还没购买第三期视频和还没学习到第三期第2课第1.1_15节_使用WIFI网卡的小伙伴根本无法实现这一方案。而且从学生经济的角度上分析,此方案需要小伙伴们购买第三期视频、购买WIFI无线网卡方可实现,经济成本较大。

   ③  让开发板通过网线直接连接到PC机,虚拟机通过桥接模式连接到PC机的以太网,实现开发板、虚拟机、PC机三者互ping

         这个方案是完美解决方案,不但可以实现实现开发板、虚拟机、PC机三者互ping,并让开发板挂接到虚拟机的网络根文件系统,进而使PC机上编写好的程序传到虚拟机中由虚拟机编译,虚拟机编译生成的输出文件再传到开发板上直接运行,还可以让经济成本降到最低,只需要有一根完好的以太网网线即可,对于刚刚入门学习韦老师的Linux教学视频的同学果断推荐这种解决方案。如果是笔记本PC机,还可以用笔记本连接手机热点发出的WiFi解决上网的问题。

 2.如何操作才能让开发板通过网线直接连接到PC机,虚拟机通过桥接模式连接到PC机的以太网,实现开发板、虚拟机、PC机三者互ping?

      注意:在进行以下操作前必须已经跟着006_u-boot_内核_根文件系统(新1期_2期间的衔接)视频移植好u-boot1.1.6、linux-2.6.22.6内核到开发板上,此外还要独立于视频之外移植fs_mini_mdev.yaffs2根文件系统到开发板上。

       ① 使用以太网网线连接开发板和PC机。

            

       ② 打开Win10系统的网络连接界面,分别对VMware Network AdapterVMnet1 和 VMnet8 进行以下设置,蓝色方框中所示的“以太网-网络电缆被拔出”暂且先不用管。

            

,          

      ③  开发板上电,如果u-boot1.1.6、linux-2.6.22.6内核、fs_mini_mdev.yaffs2根文件系统都已经移植成功,则开发板上电后可以正常启动Linux系统。

            开发板正常启动系统后,输入“ifconfig eth0 up” 打开开发板的以太网网卡,此时你会发现PC机上的网络连接界面中没有再显示“以太网-网络电缆被拔出”,而是显示“未识别的网络”。

           

                     

     ④ 在PC机上打开cmd终端,在cmd终端上输入“ipconfig” 查看PC机以太网被分配到的IP地址。

          

      ⑤ 根据第④步查看到的PC机的以太网IP地址对开发板的以太网IP地址进行设置,根据韦老师提到互相能ping通的原则“两者必须在同一网段”,所以设置开发板的以太网IP地址为“169.254.106.8”。网段可能大家不一样,但是必须让PC机的以太网IP地址的网段和开发板的以太网IP地址的网段必须相同,开发板的以太网IP地址的最后一位任取一个不为PC机以太网网段末位且小于255的数。设置完后,还需输入“ifconfig”命令查看开发板的以太网IP地址是否设置没错。

         

      ⑥ 输入“ping”命令验证开发板是否可以ping通PC机,PC机是否可以ping通开发板,ping通4次即证明没有问题,按Ctrl+C退出。

         开发板pingPC机:

         

         PC机ping开发板:

         

      ⑦ 设置虚拟机的网络适配器配置,设为桥接模式。

         

     ⑧  手动设置虚拟机的以太网IP地址,一定要是手动设置"Manual",并且根据第④步查看到的PC机的以太网IP地址和子网掩码对虚拟机的以太网IP地址进行设置,根据韦老师提到互相能ping通的原则“两者必须在同一网段”,所以设置虚拟机的以太网IP地址为“169.254.106.6”,网关为“255.255.0.0”。设置完后还需要点击“Airplane Mode”按钮,关闭网络,再点击按钮一次重新启动虚拟机网络。

         

         

         

         

      ⑨ Alt+Ctrl+T,打开虚拟机的终端。输入命令行“ifconfig”,查看虚拟机的以太网IP地址是否设置正确。然后输入“ping”命令验证虚拟机是否可以ping通PC机,PC机是否可以ping通虚拟机,ping通4次即证明没有问题,按Ctrl+C退出。

          虚拟机pingPC机:

          

          PC机ping虚拟机:

          

     ⑩ 输入“ping”命令验证虚拟机是否可以ping通开发板,开发板是否可以ping通虚拟机,ping通4次即证明没有问题,按Ctrl+C退出。

          虚拟机ping开发板:

          

          开发板ping虚拟机:

          

          至此,已经实现开发板通过网线直接连接到PC机,虚拟机通过桥接模式连接到PC机的以太网,实现开发板、虚拟机、PC机三者互ping。

 3.如何操作才能让开发板挂接到虚拟机上的网络根文件系统?

      注意:在进行以下操作前必须已经看完 006_u-boot_内核_根文件系统(新1期_2期间的衔接)第004课 根文件系统这一节的全部视频,并且已经跟着视频在虚拟机的/work/nfs_root/目录下制作出完整的网络根文件统first_fs。

      ① 在开发板上输入“ mount -t nfs -o nolock 169.254.106.6:/work/nfs_root/first_fs /mnt ”命令,使开发板挂载到虚拟机的网络根文件系统。

           

      ② 按下开发板开关,在开发板启动后的前3秒内按下空格键,进入u-boot,按q键退出菜单,输入“ set bootargs noinitrd root=/dev/nfs nfsroot=169.254.106.6:/work/nfs_root/first_fsip=169.254.106.8:169.254.106.6:169.254.106.1:255.255.0.0::eth0:off init=/linuxrc console=ttySAC0,115200 ”命令,这个命令是复制粘贴过去的,所以有时候会报错,但问题不大,报错后再复制粘贴一次再按enter键即可,然后输入“ save ”命令保存。最后按下开发板开关,重新启动开发板。

           

          

          

          至此,已经实现开发板挂接到虚拟机的网络根文件系统。

  4.总结

        本文的重点在于如何操作才能让开发板通过网线直接连接到PC机,虚拟机通过桥接模式连接到PC机的以太网,实现开发板、虚拟机、PC机三者互ping。而产生这个问题的前因后果也已经在第1大点介绍得很清楚。至于第3大点只是为了说明“在实现开发板通过网线直接连接到PC机,虚拟机通过桥接模式连接到PC机的以太网,实现开发板、虚拟机、PC机三者互ping”后,开发板是可以跟着韦老师的视频的操作成功挂接到虚拟机上的网络根文件系统(first_fs)的。编写此博客主要为了帮助和本人一样的学生党在跟着韦老师入门学习Linux时解决在没有路由器下实现开发板、虚拟机、PC机三者互ping的问题,少走不必要的弯路,觉得实测有用的小伙伴可以给个赞哈。对于本文有错误的地方,欢迎留言指正哈。

  • 10
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
### 回答1: JZ2440开发板的串口接线是将串口模块与其他设备进行连接,用于数据传输和通信。串口接线通常涉及到三条线,包括TXD(发送线)、RXD(接收线)和GND(地线)。 首先,将JZ2440开发板上的串口连接器上的TXD引脚与其他设备的RXD引脚相连,确保数据能够从开发板发送到外部设备。这样可以进行向外发送数据的操作。 其次,将JZ2440开发板上的串口连接器上的RXD引脚与其他设备的TXD引脚相连,确保可以接收外部设备发送的数据。这样可以进行从外部接收数据的操作。 最后,将JZ2440开发板上的串口连接器上的GND引脚与其他设备的相应引脚相连,以建立共同的地线。地线的连接是确保数据的稳定性和可靠性,可以防止电气噪声对数据传输的干扰。 串口接线完成后,可以通过软件编程来控制JZ2440开发板与其他设备之间的数据传输和通信。例如,可以使用C语言编写程序,通过串口发送和接收数据,实现与其他设备的交。 ### 回答2: jz2440开发板的串口接线主要涉及到三个主要的信号线:TXD(传输器数据发送)、RXD(接收器数据接收)和GND(地线)。 在jz2440开发板上,串口接口位于底板的DB9接口上。为了连接串口,我们需要使用一DB9母头到母头的串口线缆,并将其一端连接到jz2440开发板的串口接口,另一端连接到你的电脑或其他外部设备。 在接线之前,需要确保jz2440开发板和外部设备(如电脑)的地线是相连接的,以确保信号的稳定性。这可以通过将开发板的串口GND引脚连接到外部设备的地线上来实现。 然后,将jz2440开发板的串口TXD引脚连接到外部设备的串口RXD引脚上,以便开发板可以发送数据给外部设备。同时,将开发板的串口RXD引脚连接到外部设备的串口TXD引脚上,以便开发板可以接收来自外部设备的数据。 连接完毕后,可以使用相应的串口通信软件,在电脑上进行数据的发送和接收。串口的通讯速率、数据位数、停止位数等参数需要与外部设备进行匹配设置,以确保正常的数据传输。 总之,jz2440开发板的串口接线很简单,只需要连接TXD、RXD和GND三个信号线即可。通过这样的串口接线,我们可以方便地进行开发板与外部设备之间的通信和数据传输。 ### 回答3: jz2440开发板串口接线通常需要以下几个步骤: 1. 准备工作:确保已经购买了jz2440开发板,并准备好了所需的串口线(通常是USB转TTL串口线)。 2. 开发板接线:将串口线的USB端插入计算机的USB接口,将TTL串口端与开发板上的串口接口相对应的引脚连接起来。具体连接方式需要参考开发板的用户手册或者对应的连接图。 3. 电源连接:将开发板上的电源适配器插入电源插座,确保开发板正常供电。 4. 软件设置:在计算机上安装驱动程序,通常需要据具体使用的操作系统来选择相应的驱动程序。安装完成后,设置串口的通信参数,例如波特率、数据位、校验位等。 5. 串口通信测试:启动串口调试助手等串口通信调试工具,选择正确的串口端口,并设置与开发板相同的通信参数。点击打开串口按钮后,就可以通过串口调试助手发送和接收数据,实现开发板的串口通信。 总结来说,jz2440开发板的串口接线需要正确连接串口线,并进行相应的软件设置,然后通过串口调试助手等工具进行串口通信测试。通过这样的步骤,我们就可以在jz2440开发板实现串口通信功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值