0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

列举一些嵌入式Linux应用开发里经常使用的技巧和套路

工程师进阶笔记 来源:工程师进阶笔记 2023-11-14 10:44 次阅读

本篇文章,我们基于ELF 1S这一款开发板,来列举一些嵌入式Linux应用开发里面,经常使用到的开发技巧和套路。

1-收到开发板,首先要做什么?

先欣赏一下包装外观,然后打开包装盒,小心翼翼拿起来,观赏一下开发板的颜值,还可以凑近点闻一下电路板的松香味和洗板水味。

如果开发板带屏幕,还要看一下屏幕外观是否有破损,如果有,马上联系开发板厂家进行处理。

2-开发板如何上电测试?

看这份文档《01-0 ELF 1、ELF 1S开发板_快速启动手册_V1.pdf》,基本上,现在很多入门级的开发板,都会配套一份“快速启动手册”之类的文档,旨在帮助初学者快速地把开发板通电使用起来。

至少通过这份手册,你可以知道开发板有哪些硬件资源,以及如何通电让开发板运行起来。

wKgaomVS31mAK7XOAADo37lFoNA410.jpg

**3-我暂时没有硬件基础,能学习嵌入式Linux开发吗? **

嵌入式开发是必须要具备硬件电路知识的,不学硬件是不行的。但嵌入式软件和硬件的学习次序,则可以灵活搭配,更何况ELF 1S这款开发板也提供了一系列的硬件学习文档和视频

如果你是百分百的初学者,同时又对嵌入式技术存在执念,那建议先从嵌入式Linux应用开发入手,这样至少没那么容易被劝退。

4-想学嵌入式Linux应用程序开发,应该怎样开始呢?

要想学嵌入式Linux应用程序,首先得了解什么是“Linux操作系统”?网络上已经有一大堆的概念介绍了。

要先学会用一款桌面型的Linux系统,比如Ubuntu。因为开发板上面的应用程序基本上都是在桌面型的Linux系统上进行开发的,然后经过交叉编译后,再传输到开发板上面运行。

C语言编程是必学的,shell编程也最好打一下基础,这两门语言是嵌入式开发里面必不可少的两大知识点。如果没有这两门语言的基础,建议先不要碰开发板,先在网上找相关的课程,把这两门语言的基础先打一下。

基础不牢,地动山摇!

编程语言学完后,就是搭建开发环境了。说得通俗一点,搭建开发环境其实就是在你的Windows或者Ubuntu系统上面,安装各种软件,使你的电脑能跟开发板连接起来,能在两者之间互相传输文件。安装各种软件,我相信这活难不倒各位。

嵌入式Linux应用程序开发,本质上就是在你的桌面PC上写程序,然后交叉编译,然后把程序传到开发板上面运行起来。因为有些开发板的性能,不足以支撑你在其上面写代码编译。但有些性能非常强大的开发板,是可以直接在上面编程和运行的,完全不需要交叉编译。

记住:嵌入式Linux开发板,本质上也是一台电脑,本质上也是一台电脑,本质上也是一台电脑。

5-很多出学者都被搭建开发环境劝退了,搭建开发环境很难吗?

嵌入式Linux开发板的开发环境,有两种获得方式:1-根据教程和网上的资料,自己折腾。2-开发板厂家搭建好,直接拿来使用。

建议没有嵌入式基础的初学者,先直接用开发板厂家搭建好的开发环境,这样不会那么容易被劝退,到了后期掌握了一定的技巧后,再尝试自己搭建开发环境。搭建开发环境,就是安装ubuntu,以及在Ubuntu上面安装软件。

使用厂家搭建好的开发环境,看《01-1 ELF 1、ELF 1S开发板_软件教程_V1.pdf》的第二章,第2.1.3节,如下图所示。

wKgaomVS31mASxXdAAGL6osTCnQ757.jpg

6-用什么软件编写嵌入式Linux应用程序代码

写代码的软件多了去了,随便简单改点代码的话,记事本也是可以的。初学者比较常用的,可以用vscode,QtCreator也是一款很不错的编辑器,一开始入门学习,不太建议迷信Vim大法,编辑器只是工具,Vim这种略复杂的编辑工具,还不太适合初级入门的同学。

不用太迷信代码编辑工具,用你自己平时用习惯的,以及觉得编辑效率最高的,如果你平时没有用啥编辑器,那建议用vscode吧,这工具是真香。

wKgZomVS34eAPpYvAAE4ZTMYRbk158.jpg

7-编写完代码,怎样把代码转化为开发板能运行的程序?

交叉编译!前面提到,如果在开发板上面直接编写代码然后编译,那个叫直接编译运行。如果在桌面型PC上编写代码和编译,然后在开发板上面运行,那就叫做交叉编译。

可以查看《01-1 ELF 1、ELF 1S开发板_软件教程_V1.pdf》这份文档的第二章2.6.3章节,如下图所示。

wKgaomVS31mAMDbFAAEjX3u8r4s282.jpg

8-怎样在桌面PC和开发板之间互相传输文件?

一般有两种方式:1-通过TF卡或者U盘互相拷贝,就像在两台电脑直接互拷文件一样。2-用网线把电脑跟开发板连起来,通过FTP协议或者NFS网络文件系统进行传输。

我个人比较喜欢通过网络的方式,在电脑和开发板直接互传文件,FTP协议的方式,在快速启动手册里面的【附录一】有介绍,如下图所示。

wKgZomVS31mAQyO6AAEw_iF8-U8903.jpg

NFS网络文件系统,也是一种比较常用的方式,网上很多资料,可自行搜索学习,特别是需要经常修改文件系统配置的时候,通过NFS挂载文件系统,可以起到事半功倍的作用。

TF卡一般用在产品批量生产时的固件烧录,个人感觉,通过TF卡拷贝应用程序到开发板然后运行,略麻烦。

9-开发板的系统被搞坏了,怎样恢复成出厂设置?

开发板厂家一般都会为板子配套出厂镜像,在我们的开发过程中,如果不小心把原有的系统搞坏了,可以根据开发板厂家提供的方法,把开发板恢复成出厂时的状态,一般是通过特定的烧录工具和TF卡进行烧录。

快速启动手册里面的第四章,有讲述如何为开发板恢复出厂设置,如下图所示。

wKgZomVS31mAI5E0AAD-6yaUOJE861.jpg

10-我想进一步学习更复杂的嵌入式Linux系统移植和驱动开发,应该怎样开始?

看文档和视频,《01-1 ELF 1、ELF 1S开发板_软件教程_V1.pdf》这份文档的第五章至第九章,提供了Linux内核移植、驱动开发、u-boot介绍、文件系统移植,这几大块基本的知识点,如下图所示。

wKgZomVS31mAEWlwAAGjI-EMpGg400.jpg







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4983

    文章

    18286

    浏览量

    288506
  • Linux系统
    +关注

    关注

    4

    文章

    567

    浏览量

    26923
  • C语言
    +关注

    关注

    180

    文章

    7533

    浏览量

    128785
  • elf
    elf
    +关注

    关注

    0

    文章

    10

    浏览量

    2142

原文标题:嵌入式 Linux 开发,常用的套路和技巧。

文章出处:【微信号:工程师进阶笔记,微信公众号:工程师进阶笔记】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何成为嵌入式C语言高手?

    如何成为嵌入式C语言高手? 嵌入式系统是当今科技领域的核心,而C语言则是嵌入式系统开发中最常用的编程语言之
    发表于 04-07 16:03

    如何成为嵌入式C语言高手?

    如何成为嵌入式C语言高手? 嵌入式系统是当今科技领域的核心,而C语言则是嵌入式系统开发中最常用的编程语言之
    发表于 03-25 14:12

    嵌入式人工智能的就业方向有哪些?

    的发展方向有很多,门槛高低不样。下面给大家列举一些相应岗位所需具备的技能: 嵌入式Linux
    发表于 02-26 10:17

    嵌入式Linux开发的三种方式

    嵌入式Linux开发主要有三种方式:裸机开发、SDK开发和驱动开发
    的头像 发表于 01-22 14:22 260次阅读

    嵌入式Linux应用程序开发详解-第3章

    电子发烧友网站提供《嵌入式Linux应用程序开发详解-第3章.pdf》资料免费下载
    发表于 11-16 11:19 0次下载
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>应用程序<b class='flag-5'>开发</b>详解-第3章

    嵌入式Linux应用程序开发详解-第2章

    电子发烧友网站提供《嵌入式Linux应用程序开发详解-第2章.pdf》资料免费下载
    发表于 11-16 11:18 0次下载
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>应用程序<b class='flag-5'>开发</b>详解-第2章

    嵌入式Linux应用程序开发详解-第1章

    电子发烧友网站提供《嵌入式Linux应用程序开发详解-第1章.pdf》资料免费下载
    发表于 11-16 11:17 0次下载
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>应用程序<b class='flag-5'>开发</b>详解-第1章

    什么是嵌入式Linux

    什么是嵌入式Linux? 对于很多电气、电信、通信专业的同学来说,对口专业就业方向主要有软、硬件两个方向。无论是对于学生还是就业而言,软硬件的开发学习,嵌入式物联网在近年来无疑是
    发表于 10-11 13:47

    嵌入式Linux开发教程

    嵌入式Linux开发教程(下册)
    发表于 09-27 07:11

    嵌入式Linux应用开发的完全手册

    障碍。很多人买了开发板想进步练习,却发现不知从何入手。 鉴于上述种种困难及需求,作者结合自己的学习经历、工.作心得写成此书,期望能帮助读者加快嵌入式 Linux 的入门速度,并体会到
    发表于 09-25 07:12

    基于树莓派的嵌入式Linux开发教学

    树莓派对于全球嵌入式 Linux 开发及教育已经并将继续带来广泛的影响,及早将之引入我国主流的嵌入式开发与教学环境中或将是有益的。尽管传统的 “ARM
    发表于 09-21 07:09

    嵌入式新手应该怎么学?

    的图形界面操作都要转化为命令传输给硬件的。 4、Linux设备驱动的架构要了解,结合原理图和Linux设备驱动相关书籍把每行代码分析清楚。 上面只是一些简单的
    发表于 09-08 10:22

    为什么一些人对嵌入式开发持保留态度?

    嵌入式开发
    YS YYDS
    发布于 :2023年07月04日 21:28:26

    嵌入式学习路线你知道吗?

    应用和驱动开发打下坚实的基础。 4学习嵌入式Linux应用程序开发阶段主要学习上层的嵌入式
    发表于 06-14 16:00

    什么人适合学习嵌入式开发

    嵌入式开发又分为两类,这两类各有特点,当然需要的资质也完全不同: 类是学电子工程、通信工程等偏硬件专业出身的人,主要是搞硬件设计,有时要开发一些与硬件关系最密切的最底层软件,如Bo
    发表于 06-07 15:55