正点原子第四期环境搭建
正点原子第四期环境搭建
- 1、网络IP相关知识
- 1.1、子网掩码
- 1.2、同一网段
- 1.3、举例说明
- 1.4、主机地址计算方式
- 2、环境搭建
- 2.1、虚拟机创建
- 2.2、网络配置
- 2.3、网络挂载
- 2.3.1 设置开发板uboot环境变量
- 2.3.1、挂载内核、设备树
- 2.3.2、nfs挂载文件系统
今天(2022/10/22)购买的阿尔法开发板,准备开始学习正点原子驱动开发。板子还没到,先看看网络环境搭建。
1、网络IP相关知识
IP地址:网络号部分 + 主机号部分。
1、网络部分:确定终端是不是在同一网段。
2、主机部分:
IP地址分为A、B、C三类:
A类,网络号为前8位,后24位位主机号。
B类,网络号为前16位,后16位位主机号。
C类,网络号为前24位,后8位位主机号。
1.1、子网掩码
1、子网掩码不能单独存在,它必须结合IP地址一起使用。
2、子网掩码只有一个作用:就是将某个IP地址划分成网络地址和主机地址两部分。
3、子网掩码是32位的二进制地址,为1代表该位是网络位,为0代表主机位。
1.2、同一网段
1、可以简单理解为:同一网络号为同一网段。
1.3、举例说明
比如一个IP地址为192.16.1.3:
1、单看一个IP地址是看不出来哪些是网络号,哪些是主机号,需要知道子网掩码或则常用的表示方法。
2、常用的表示方法1:192.168.1.3/24 :后面的/24表示IP地址前面的24位二进制代表网络ID,也就是192.168.1。
3、常用的表示方法2:192.168.1.3/24 netmask 255.255.255.0 :通过子网掩码可以判断IP地址前面的24位二进制代表网络ID,也就是192.168.1。网络地址是192.168.1.0
1.4、主机地址计算方式
IP地址与子网掩码的非的结果想与就是主机地址。
IP地址:十进制:192.168.1.1二进制:11000000.10101000.00000001.00000001
子网掩码:十进制:255.255.255.0二进制:11111111.11111111.11111111.00000000子网掩码取非:00000000.00000000.00000000.11111111
子网掩码取非 与上 IP地址:00000000.00000000.00000000.00000001
即主机地址为0.0.0.1。
2、环境搭建
2022/10/29开发板到了
场景:本人是在出租房里,采用的是电脑连wifi,开发板直连电脑这种方式。
最近正点原子更新了阿尔法底板,之前的内核镜像以及uboot镜像不再适用于新的开发板,需要去官方下载最新的镜像。
本人没看过正点原子第一、二、三期视频,直接开始第四期驱动。
2.1、虚拟机创建
为了减少搭建开发环境的时间,直接使用的是正点原子提高的IMX6U虚拟机,下方直接下载即可。
下载后直接参考pdf配置即可。创建后如下图
2.2、网络配置
1、我的环境是电脑连wifi上网,开发板和电脑通过网线连接。
2、网络配置参考的是 \正点原子\【正点原子】阿尔法Linux开发板 PDF资料合集\【正点原子】阿尔法Linux开发板 (PDF资料合集)\用户手册\手册\手册下载、【正点原子】I.MX6U网络环境TFTP&NFS搭建手册V1.3.1
这个文档中1.4章节,三者能够互相ping通即可。
3、我这里本次配置:
虚拟机ip 192.168.10.100开发板ip 192.18.10.50电脑以太网ip 192.168.10.200
2.3、网络挂载
1、前文提到正点原子将底板更新(2.4底板),我们需要修改uboot以及内核的驱动代码,来适配2.4底板。
2、进入虚拟机 /home/alientek/alpha/alientek-zzk
目录,即可看见kernel和uboot源码。参考2.4底板uboot、kernel配置教程 编出zImage和dtb。
3、将编出来的zImage和dtb文件放入tftp目录:/home/alientek/linux/tftp
2.3.1 设置开发板uboot环境变量
1、开发板上电,在uboot倒计时结束前按下回车进入命令行模式。
2、根据自己实际情况设定,我这里虚拟机ip地址是192.168.10.100。
setenv ipaddr 192.168.10.120 //设置开发板ipsetenv ethaddr b8:ae:1d:01:00:00 //地址setenv gatewayip 192.168.10.1 //网关setenv netmask 255.255.255.0 //子网掩码setenv serverip 192.168.10.100 //虚拟机的ip地址saveenv
3、设置完尝试ping虚拟机,能够ping通即可。
2.3.1、挂载内核、设备树
setenv bootcmd 'tftp 80800000 zImage;tftp 83000000 imx6ull-alientek-emmc.dtb;bootz 80800000 - 83000000'saveenv
2.3.2、nfs挂载文件系统
1、ip地址根据自己实际情况填写。
setenv bootargs 'console=ttymxc0,115200 root=/dev/nfs nfsroot=192.168.10.100:/home/alientek/linux/nfs/rootfs,proto=tcp rw ip=192.168.10.120:192.168.10.100:192.168.10.1:255.255.255.0::eth0:off'saveenv
2、如上图即代表从虚拟机中下载内核镜像和设备树并启动。能够正常启动代表挂载成功。
可以看见文件目录和虚拟机中nfs文件系统一致。
3、之后驱动编出的ko都放入 /home/alientek/linux/nfs/rootfs/lib/modules/4.1.15
目录,开发板对应目录也会有相应文件。
4、我们在开发板新建一个demo1.c,在对应的虚拟机中也会出现,如下图:
至此环境搭建完成,欢迎评论区交流。
正点原子第四期环境搭建相关推荐
- (四)Linux环境搭建dubbo
搭建工具 1.Xshell:用于连接linux终端,方便操作. 2.Xftp:用于传输文件. 准备工作 一般我们会在linux上,新建一个专门用于存放工具的文件夹. 如:在/usr/local下新建一 ...
- linux 信号量 自旋锁 测试 实验,「正点原子Linux连载」第四十八章Linux并发与竞争实验...
1)实验平台:正点原子Linux开发板 2)摘自<正点原子I.MX6U嵌入式Linux驱动开发指南> 关注官方微信号公众号,获取更多资料:正点原子 第四十八章Linux并发与竞争实验 在上 ...
- 基于正点原子Linux开发板(ALIENTEK I.MX6U ALPHA V2.2)的个人自学记录
基于正点原子Linux开发板(ALIENTEK I.MX6U ALPHA V2.2)的个人自学记录 硬件环境 正点原子Linux开发板(ALIENTEK I.MX6U ALPHA V2.2) 底板+核 ...
- 正点原子STM32F407+AD7606+RT-Thread Studio 调试记录
介绍 项目要求采集6路压力传感器1-5V数据. 经过选型比较,选择AD7606 8通道采样器件,从淘宝买的采样模块. 时序图 说明:图一是整体的一个时序框图,大体的逻辑就是在使用AD7606之前要先复 ...
- Elasticsearch集群环境搭建
一.ES集群管理 ES是如何解决高并发 ES是一个分布式全文检索框架,隐藏了复杂的处理机制,核心内容 分片机制.集群发现.分片负载均衡请求路由. 二.ES基本概念名词 Cluster 代表一个集群,集 ...
- AutoCAD二次开发:VS2019+AutoCAD2021+ObjectARX环境搭建
提前准备 1.VS2019,需要安装c++模块,win10SDK,MFC: 2.AutoCAD 2021: 3.ObjectARX SDK,文件名为objectarx_for_autocad_2021 ...
- 【正点原子MP157连载】 第四章 开发环境搭建-摘自【正点原子】【正点原子】STM32MP1嵌入式Linux驱动开发指南V1.7
1)实验平台:正点原子STM32MP157开发板 2)购买链接:https://item.taobao.com/item.htm?&id=629270721801 3)全套实验源码+手册+视频 ...
- linux utf8转gbk_「正点原子Linux连载」第四章开发环境搭建(2)
1)实验平台:正点原子Linux开发板 2)摘自<正点原子I.MX6U嵌入式Linux驱动开发指南> 关注官方微信号公众号,获取更多资料:正点原子 4.5 Visual Studio Co ...
- 【正点原子Linux连载】第三章 RV1126开发环境搭建 摘自【正点原子】ATK-DLRV1126系统开发手册
1)实验平台:正点原子RV1126 Linux开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=692176265749 3)全套实验源码+手册+视频 ...
最新文章
- 学习web前端开发要注意什么
- python编程做什么工作-学习Python编程后在成都可以做哪些工作?
- bzoj 2436: [Noi2011]Noi嘉年华
- 首个64层3D NAND闪存技术出现
- QtGraphicView添加图元
- proto的介绍和基础使用
- (20)Xilinx FPGA型号(FPGA不积跬步101)
- Python读取安卓手机GPS信息
- 让世界没有陌生的角落共享单车时代的快与慢
- 概率论学习之瓢虫冬眠
- PHP Mysql-创建数据库
- 程序员代码面试指南:IT 名企算法与数据结构题目最优解
- python统计代码行数_使用Python简单快速实现统计代码行数
- EP100底层封装-LibCreateSourceFile()函数
- 硬件基本概念-模拟电子电路
- 继电器在交流应用时的zero-crossing
- 复现Reducing Complexity of HEVC: A Deep Learning Approach,复现帧内模式,HCPM
- 移动端屏幕适配和css美化浏览器自带的滚动条
- pytorch教程 聊天机器人(详细注释attentionrnn输入输出shape等知识点...
- html app下载页功能开发
热门文章
- 什么是番茄工作法?如何使用番茄工作法?
- 六,基于FPGA的高速串行通信GTX知识梳理
- Un-Routed Net ConStraint报错的原因
- Elastic 极客时间 阮一鸣 学习笔记_入门
- 晋商消费金融总裁惠康获准,前不久被央行处罚49万元
- '.'和'..'还有'./'和'../'
- 联想笔记本连不上手机热点_笔记本找不到手机热点怎么办_电脑搜索不到手机热点的解决方法-系统城...
- 请求一次服务器会显示请求了两次,在Appengin中,每个请求都会到达服务器两次...
- 基于社交模型的权证交易概念产品-废话性前言
- 最新版网页浏览器Flash插件离线版安装程序下载