加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 1-收到开发板,首先要做什么?
    • 2-开发板如何上电测试?
    • 3-我暂时没有硬件基础,能学习嵌入式Linux开发吗?
    • 4-想学嵌入式Linux应用程序开发,应该怎样开始呢?
    • 5-很多出学者都被搭建开发环境劝退了,搭建开发环境很难吗?
    • 6-用什么软件编写嵌入式Linux应用程序代码?
    • 8-怎样在桌面PC和开发板之间互相传输文件?
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

嵌入式 Linux 开发,常用的套路和技巧

2023/11/14
3035
阅读需 11 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

我是老温,一名热爱学习的嵌入式工程师

生活中到处都是套路(技巧),嵌入式Linux开发也不例外,初学者如果懂得这些开发中常用的技巧,可以帮助你少走很多弯路,这些技巧不仅仅局限于某一个开发板平台,还可以举一反三地应用在其他开发板上面。

上一篇文章,我们开箱体验了 ELF 1S嵌入式Linux开发板,这款开发板来源于飞凌嵌入式全新的面向入门初学者的子品牌:ElfBoard ,关于上一篇文章的内容,可以点击下面的链接。
想学嵌入式,与其坐言观望,不如起行实践!

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

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

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

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

全面发挥你收集资料的技能,先去ElfBoard的官网,不管三七二十八先把所有的文档资料都下载到你的电脑,然后把以下网址收藏起来,因为教学视频都是在线观看的。

https://www.elfboard.com/information/detail.html?id=1(复制到浏览器打开,或点击【阅读全文】)

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

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

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

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

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

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

嵌入式Linux应用程序开发,包括嵌入式Qt应用程序开发,都可以参考以下的两份文档内容:

《01-1ELF 1、ELF 1S开发板_软件教程_V1.pdf》第一章至第四章。
《01-3 ELF 1、ELF 1S开发板_Qt应用教程_V1.pdf》整篇文档。

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节,如下图所示。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

这几章内容是足够初学者进行入门学习的,但如果想深入,就必须从事嵌入式Linux驱动开发相关的岗位,这类岗位在芯片原厂里面的技术含金量最高,想进阶,还是需要在工作中不断深入学习。

11.嵌入式技术的本质到底是什么?什么是嵌入式开发?

12.嵌入式技术能用在哪些行业,这些行业的普遍工资是多少?

13.我想学嵌入式,到底应该怎么学,学习路线是怎样的?

14.网络上那么多资料,那么多开发板,到底该怎么选?

15.嵌入式需要哪些基础,要不要学硬件,要学哪些编程语言?

16.选单片机还是选嵌入式Linux,两者有什么区别?

17.。。。。。。

以上种种疑问,有些问题或许你已经有了答案,有些或许还在迷茫当中,但作为一名十年的嵌入式老菜鸟,可以给的建议是:嵌入式技术领域没有捷径可言,学习成本也不像纯软件那样,一台电脑或者一台手机就搞定,至少硬件开发板和模块配件的投入是必须的。

经济条件允许的话,建议还可以购买一些质量好的网络课程,对嵌入式技术的学习,将会起到事半功倍的作用。

关于上面的疑问,我们会在后续的文章里面,再继续探讨。

感谢阅读,欢迎关注!

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
CPFBZ-A2C4-32.768KD6 1 Cardinal Components Parallel - Fundamental Quartz Crystal, 0.032768MHz Nom, PLASTIC PACKAGE-4
暂无数据 查看
6N137S(TA) 1 Everlight Electronics Co Ltd Logic IC Output Optocoupler, 1-Element, 5000V Isolation, 10MBps, ROHS COMPLIANT, SURFACE MOUNT, DIP-8
$1.03 查看
LTC6904CMS8#TRPBF 1 Linear Technology LTC6904 - 1kHz - 68MHz Serial Port Programmable Oscillator; Package: MSOP; Pins: 8; Temperature Range: 0°C to 70°C
暂无数据 查看

相关推荐

电子产业图谱