- · 《自动化应用》栏目设置[06/28]
- · 《自动化应用》收稿方向[06/28]
- · 《自动化应用》投稿方式[06/28]
- · 《自动化应用》征稿要求[06/28]
- · 《自动化应用》刊物宗旨[06/28]
学机械自动化专业,如何转行嵌入式Linux?给你
作者:网站采编关键词:
摘要:最近,经常有机械自动化专业的学员,跑过来问我,说自己想毕业后转行嵌入式,具体要怎么学?如何找工作之类的问题。大部分都是刚毕业或者是即将毕业的学生,在校期间接触过
最近,经常有机械自动化专业的学员,跑过来问我,说自己想毕业后转行嵌入式,具体要怎么学?如何找工作之类的问题。大部分都是刚毕业或者是即将毕业的学生,在校期间接触过C语言,也有不少自学过单片机、ARM,稍微好些的做过一些项目设计,但对嵌入式底层硬件,系统开发、Linux驱动硬件原理的知道得不多,虽然说有学习过,但是老师讲的大部分底层基础知识,很多内容都听不懂,学不会,自己也记不住。
在这里我想说,嵌入式专业是一门实践性非常强的学科,也是一门综合性、涉及知识面非常广的学科,只有多动手,多实践,多编程,多调试,多看书,多思考才能真正掌握好嵌入式开发技术。
所以,对于初学者来说,即使独自去学习嵌入式,但面对那么多教程,课本,那么多知识点,往往不知道从何处下手;不知道哪些是重点,哪些不是重点,这些知识点之间有什么关联,一脸的茫然,然后东一榔头,西一棒子,折腾了几个月甚至大半年后,还是找不着学习嵌入式的方向,还徘徊在嵌入式开发的大门之外。
那么,如何从零开始学习嵌入式开发技术, 进入嵌入式开发大门呢,笔者根据自己的嵌入式学习经历和多年的嵌入式Linux教学经验,谈谈自己对嵌入式学习的一些想法和意见,希望对大家有所帮助。
01
练好基本功
嵌入式系统专业是综合了计算机硬件技术,计算机软件技术以及电子电路技术的一门综合学科,所涉及的内涵和知识非常广泛,包括:数字电路,模拟电路,计算机组成原理,单片机基础,C语言基础,操作系统,数据结构,编译原理,计算机控制,计算机网络等知识。
在真正学习嵌入式开发之前,对于C语言,至少能单独编写调试一个3 ~ 500行的程序,能够了解C语言的基本语法规则,基本语句的使用,理解指针概念并能灵活使用各种指针。
计算机组成原理要能理解组成一个计算机系统的几大部件,计算机系统的结构,理解系统总线,理解处理器和计算机外部设备的关系,处理器和计算机外设是如何协调工作完成某一项功能的,计算机软件和硬件是如何分工协作完成某一项任务的,理解软件是通过寄存器来控制硬件的。
数字电路,模拟电路要了解其基本原理个概念,能看懂简单模拟、数字电路原理图。理解数字电路中的寄存器,时序的概念,能看懂芯片手册和时序图。对于其他基础课程,重点要理解其中的一些基本概念,如何使用等等。
对于电子,自动化,通信,计算机类专业的学生,在大二、大三开设的专业基础或专业课程中基本包含了以上的大部分课程,其他专业如机械自动化设计的学员,也需要补充学习上述的课程内容。因为缺乏实践,可能学得不是很深入,但是一些基本的概念和基本知识应该还是有所了解,针对一些薄弱环节,自己稍微加强学习一下,基本上已经具备了学习嵌入式开发的基础。在嵌入式基本功学习阶段,最重要的是C语言和单片机基础,最好是能用C语言开发一个小的单片机程序,例如用C语言实现单片机和PC的串口通信,用C语言控制LED等显示,用C 语言控制数码管显示等小程序。在这个期间需要的学习工具就是单片机51学习开发板。
02
嵌入式Linux应用开发
嵌入式开发基础知识学习完后,这时候你已经有了一定的嵌入式开发基础了,可以进行基于单片机的嵌入式系统设计了。单片机编程本身也是属于嵌入式编程,但是在这里我们只是把单片机开发当作嵌入式系统开发的基础,不把单片机开发作为真正的嵌入式系统开发,在这里我们的嵌入式系统开发是指在带有操作系统的嵌入式平台上的应用和驱动开发,特别指在嵌入式Linux平台上的开发。
单片机开发在很早以前是非常热门的,现在在一些比较简单的系统上单片机也用的非常广泛,随着硬件的成本不断降低,在一些比较复杂的嵌入式设备一般都采用嵌入式Linux操作系统,在嵌入式Linux平台上进行开发,这样可以极大的提高嵌入式开发效率,提高系统的稳定性和可靠性,降低开发成本。
由于Linux是一个开源的操作系统,你可以通过阅读Linux内核来理解内核的实现机制,如果有需要,你甚至可以通过修改内核源码来提高系统的性能;同时,全球参与Linux开发的队伍非常庞大,网上有大量的嵌入式Linux开发资料和源代码,很多你需要实现的功能在网上基本都能找到相关源码,参考一下别人写的源码,这样可以极大的提高自己的工作效率和技术能力。
文章来源:《自动化应用》 网址: http://www.zdhyyzz.cn/zonghexinwen/2020/0807/532.html