正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-1.1

前言:

本文是来自哔哩哔哩网站上视频“正点原子[第二期]Linux之ARM(MX6U)裸机篇”的学习笔记,在这里会记录下正点原子Linux ARM MX6ULL 开发板根据配套的哔哩哔哩学习视频所作的实验和笔记内容。本文大量的引用了正点原子哔哔哩网站的教学视频和链接中的内容。

引用:

正文:

0. 正点原子 I.MX6UL Mini 开发板购买

从淘宝正点原子官方旗舰店购买了正点原子 I.MX6UL Mini 开发板,我购买的是Mini款实际付款的价格是 588块钱。

价格还可以接受吧,因为正点原子的课程和学习资料是开放的,可以免费的学习正点原子的提供的资料和配套教学视频,板子的价格就当是包含了培训资料的价格了。其它的嵌入式Linux的教学视频大部分是收费的,视频教程的价格大致也在1000多块钱左右。所以我选择了正点原子的 ARM Linux IMX6UL Mini 开发板,方便在哔哩哔哩网站看视频教程。

实际到手之后板子细节如下,开发板有一个塑料盒子,实际开发板看起来做工还是比较精美的。

1. 第1.1 讲-开发环境的搭建

进行嵌入式Linux开发或者嵌入式ARM开发,一般开发环境是在 Windows PC进行。

  • 在Windows下安装 VMWare 或 Virtubox虚拟机跑 Ubuntu 操作系统。
  • Ubuntu虚拟机通过 FTP 或者 Samba 把虚拟机下的 Ubuntu Linux目录映射到Windows操作系统环境下
  • Windows 环境下编辑器,例如, VSCode 来进行代码编辑修改远程虚拟机里的代码
  • ssh 登录到Ubuntu虚拟机进行交叉编译

在电脑 Windows操作系统下安装Virbualbox虚拟机,并且在Virtubox虚拟机中安装 Ubuntu Linux操作系统的方法,这里不再赘述。

1.1 Ubnutu安装 vsftpd 程序

在Virtualbox虚拟机Ubuntu操作系统安装好之后,在Ubuntu系统中安装 'vsftpd' 服务程序,并配置vsftpd服务器允许登录。Ubuntu系统安装vsftpd服务器的命令为 'sudo apt install vsftpd',安装效果如下。

sudo apt install vsftpd

安装vsftpd成功的提示如下

dimon@dimon-VirtualBox:~/nobuild-linux-4.4$ sudo apt install vsftpd
...
Setting up vsftpd (3.0.2-1ubuntu2.14.04.1) ...
vsftpd start/running, process 20394
Processing triggers for ureadahead (0.100.0-16) ...
dimon@dimon-VirtualBox:~/nobuild-linux-4.4$ 

可以通过 'ps' 命令确认Ubuntu系统下 vsftpd 服务是否启动,看到vstpd的进程号说明 ftp 服务已经正常启动。

dimon@dimon-VirtualBox:/etc/init.d$ ps aux | grep vsftpd
root     20478  0.0  0.0   4808  2060 ?        Ss   17:59   0:00 /usr/sbin/vsftpd
dimon    20511  0.0  0.1   6120  2440 pts/11   S+   18:34   0:00 grep --color=auto vsftpd
dimon@dimon-VirtualBox:/etc/init.d$
1.2 Ubnutu修改 /etc/vsftpd.cfg 配置文件

安装vsftpd服务之后,需要修改'/etc/vsftpd.conf' 文件的内容,打开 'local_enable=YES', 'write_enable=YES',允许ftp用户登录和写ftp服务器目录中的文件。

##修改/etc/vsftpd.conf 文件
sudo vi /etc/vsftpd.conf

打开'/etc/vstpfd/config'配置文件如下两个配置选项

# Uncomment this to allow local users to log in.
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES

vsftpd服务器配置文件修改之后,需要重启vsftpd服务器让配置生效。

sudo service vsftpd restart
1.3 配置Windows ftp client 客户端

在Windows操作系统下安装 Filezile-client 客户端程序,可以用搜索引擎搜到 Fileziler-client 客户端安装程序下载并安装。

配置 FileZila clinet 客户端连接虚拟机Ubuntu上的 ftp server服务器。FileZila 客户端,点击“文件”,点击“站点管理”,点击“添加新站点”,输入Ubuntu虚拟机的IP地址和登录用户名密码,点击“连接”,测试下是否可以成功登录Ubuntu虚拟机上的ftp server服务器。

连接登录Unbuntu虚拟机中Ftp Serever服务器成功,可以浏览访问到Ubuntu虚拟机中我的'/home/dimon'目录。

1.4 Ubnutu 安装 NFS 服务器

在虚拟机Ubuntu服务器上安装 NFS 服务,运行命令 'sudo apt install nfs-kernel-server portmap',等待 NFS 服务安装成功。

sudo apt install nfs-kernel-server portmap

安装NFS服务程序完成之后,需要在用户目录下创建一个目录给 NFS 服务器使用'make -p ~/linux/nfs'。

dimon@dimon-VirtualBox:~$ mkdir -p linux/nfs
dimon@dimon-VirtualBox:~$ ls ~/linux/nfs -d
/home/dimon/linux/nfs
dimon@dimon-VirtualBox:~$ 

创建目录之后,需要修改 nfs 服务器的配置文件,让nfs服务器使用我们创建出来的'linux/nfs'目录。方法为修改nfs配置文件'/etc/exports',执行命令'sudo vi /etc/exports'。

sudo vi /etc/exports

在文件中加上如下一句(把/home/dimon目录替换成你自己的目录),

/home/dimon/linux/nfs  *(rw,sync,no_root_squash)

解释一下这条语句的含义

  • rw 

修改nfs配置文件之后,需要重启nfs服务器程序让配置文件修改生效。

sudo /etc/init.d/nfs-kernel-server restart
1.5 Ubuntu安装 ssh 服务器

执行命令安装ssh服务器

sudo apt install openssl-server
1.6 Windows安装 ch340 USB串口驱动

·正点原子I.MX6UL Mini开发板的这个usb-c 口是开发板版的串口,在板子上有丝印'USB-TTL',有购买开发板附送的 USB-usb-c的转接线连接到 Windows PC,给开发板上电,通过Windows上的串口工具连接开发板的串口。

我PC使用的是Windwos下的 XShell5 串口工具,Xshell5 是windows操作系统下一个非常好用的串口工具,它支持串口,ssh, telnet等各种协议。Xshell5 提供学生免费版,可以下载使用XShell5 作为Windows下串口工具。

如下为正常连接正点原子的 I.MX6UL Mini 开发板,并正确安装Windows ch340 USB串口启动,和Xshell5 串口软件只有,给开发板上电,就可以看到如下的开发板启动日志打印。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/567906.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

服务器 BMC(基板管理控制器,Baseboard Management Controller)认知

写在前面 工作中遇到,简单整理博文内容涉及 BMC 基本认知理解不足小伙伴帮忙指正 不必太纠结于当下,也不必太忧虑未来,当你经历过一些事情的时候,眼前的风景已经和从前不一样了。——村上春树 基板管理控制器(BMC&…

小米一面:说说MVC与设计模式的关系

前言 大家好,我叫阿杆,不叫阿轩。 先来看看面试环节吧。 面试官:请说说MVC模式是基于哪种设计模式的? 求职者:MVC本身不就是一种设计模式吗? 面试官:我的意思是,MVC是基于23中设计…

SD-WAN为什么在亚太地区普及?

当前,软件定义广域网SD-WAN在亚太地区具有稳固的地位。它看起来是技术与地形的完美结合,因为亚太地区拥有许多大国,其中一些国度辽阔,人口分布在广阔的地理区域和偏远地区,如印度,澳大利亚,越南…

Introducing Meta Llama 3: The most capable openly available LLM to date

要点 今天,我们推出 Meta Llama 3,这是我们最先进的开源大型语言模型的下一代。Llama 3型号将很快在AWS,Databricks,Google Cloud,Hugging Face,Kaggle,IBM WatsonX,Microsoft Azur…

代码随想录算法训练营第四十六天| LeetCode139.单词拆分

一、LeetCode139.单词拆分 题目链接/文章讲解/视频讲解:https://programmercarl.com/0139.%E5%8D%95%E8%AF%8D%E6%8B%86%E5%88%86.html 状态:已解决 1.思路 单词明显就是物品,字符串s明显就是背包,那么问题就变成了物品能不能把背…

Three 银河系

总体效果图 当然,这也只是银河系的一部分,要想知道全景视野下的银河系是什么样的,只有通过科学家依据观测结果所制作的绘图来实现,因为银河系实在是太大了,目前的技术水平还无法实现全景捕捉。绘制的这张三维立体图像…

记录:阿里云服务器网站搭建(4)

Docker安装Nginx 现阶段主要目的是做一些静态资源路径的转发代理,相当于一个web服务器,tomcat也可以设置凡访问静态资源。但考虑到后续还需要作为代理服务器对域名等进行代理转发,所以使用nginx。 准备好要挂载的nginx配置目录 mkdir -p /m…

React-RTK

​🌈个人主页:前端青山 🔥系列专栏:React篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来React篇专栏内容:React-RTK 目录 1、介绍 2、安装 3、编写RTK使用示例 4、官方提供项目包示例 创建 Redux …

ROS 2边学边练(33)-- 写一个静态广播(C++)

前言 通过这一篇我们将了解并学习到如何广播静态坐标变换到tf2(由tf2来转换这些坐标系)。 发布静态变换对于定义机器人底座与其传感器或非移动部件之间的关系非常有用。例如,在以激光扫描仪中心的坐标系中推理激光扫描测量数据是最简单的。 这…

基于人工智能的机动车号牌检测与推理系统v1.0

基于人工智能的机动车号牌检测与推理系统v1.0代码重构与实现。 目前整合3中现有算法,并完成阶段性改造,包括【传统方法检测车牌,SVM推理字符】、【YOLO方法检测车牌,SVM推理字符】、【YOLO方法检测车牌,CNN推理字符】&…

MapReduce案例-电影网站数据统计分析

本文适合大数据初学者学习MapReduce统计分析业务问题的步骤和基础的MapReduce编程方法,初步掌握Hadoop对计算任务的管理。 本文末尾有全部数据集和完整代码连接。 1.准备工作 安装Hadoop:Hadoop 3.3.2 离线安装-CSDN博客 按照好Hadoop之后要检查一下datanode运行情况…

Llama网络结构介绍

LLaMA现在已经是开源社区里炙手可热的模型了,但是原文中仅仅介绍了其和标准Transformer的差别,并没有一个全局的模型介绍。因此打算写篇文章,争取让读者不参考任何其他资料把LLaMA的模型搞懂。 结构 如图所示为LLaMA的示意图,由…

ESP32学习第一天-ESP32点亮LED,按键控制LED状态,LED流水灯

第一天使用到的函数: 函数第一个参数设置哪一个引脚,第二个参数设置引脚模式。 pinMode(led_pin,OUTPUT); //设置引脚模式 函数的第一个参数设置哪一个引脚,第二个参数设置是高电平还是低电平。 digitalWrite(led_pin,HIGH);//将引脚电平拉高 #incl…

电脑怎么拖动文件到想要的位置?电脑上拖拽没了的文件怎么找回

在日常的办公和学习中,电脑文件拖拽操作是每位用户都不可或缺的技能。然而,有时在拖动文件时,可能会因为误操作或其他原因,导致文件消失或移至未知位置。本文将详细解析如何在电脑上轻松拖动文件到指定位置,并为您提供…

大模型中的位置编码ALiBi,RoPE的总结和实现

目录 Alibi与旋转位置编码的比较 1. Alibi和旋转位置编码的外推性能比较 2. Alibi的处理方式 注意力线性偏置:ALiBi位置编码的实现 1. ALiBi的基本概念 2. ALiBi的实现方式 ALiBi位置编码的代码解读 1. 导入必要的库 2. 定义get_slopes函数 3. 定义get_al…

C++ Primer 总结索引 | 第十三章:拷贝控制

1、类可以定义构造函数,用来控制在创建此类型对象时做什么 类如何控制该类型对象拷贝、赋值、移动或销毁时做什么 类通过一些 特殊的成员函数 控制这些操作,包括:拷贝构造函数、移动构造函数、拷贝赋值运算符、移动赋值运算符 以及 析构函数 …

API请求报错 Required request body is missing问题解决

背景 在进行调用的时候,加载方法,提示以下错误 错误信息如下: {"code": 10001,"msg": "Required request body is missing: XXX","data": null,"extra": null }Required request body…

Qt使用miniblink第三方浏览器模块

文章目录 一、前言二、miniblink简介三、miniblink使用四、运行效果五、工程结构 一、前言 本文取自刘典武大师:Qt编写地图综合应用58-兼容多浏览器内核 用Qt做项目过程中,遇到需要用到浏览器控件的项目,可能都会绕不开一个问题,那…

机器人模型匹配控制(MPC)MATLAB实现

模型匹配控制(Model matching control)是指设计一个控制器使闭环系统的传递函数tf(s)与td(s)相一致! mpcDesigner 可以分为: 2时域精确模型匹配控制3频域精确模型匹配控制 机械臂控制中应用模型匹配控制(Model Matc…

手把手教你搭建鲜花团购小程序

随着互联网的快速发展,线上小程序商城已经成为了一种流行的电商模式。对于花店来说,开发线上小程序商城不仅可以扩大销售渠道,提高销售效率,还可以增加客户粘性,提升品牌形象。下面就以花店为例,教你怎么开…