【纯干货】教你如何学习嵌入式开发,嵌入式学习路线

很多学习嵌入式设计同学都会发出这样的感慨,“学嵌入式好难啊”!!
这是因为你对学习嵌入式没有掌握一个好的方法,当你掌握了,就会发现其实也很简单,今天我就总结了一些自己的学习方法给新人们参考。其实只要用心,真的很简单!
可能以下的说法您觉得听得次数太多了,但是没什么用,其实真的没用吗,你真的按照你的规划区做了吗?

学好嵌入式的前提:
一、保持良好的心态,不能急于求成。学习嵌入式并不是一朝一夕能够完成的,要一步一个脚印的坚持。
二、要有清晰的学习规划,明确学习步骤,做个计划表,明确先学什么,再学什么,比如C语言是学习嵌入式的基础,所以在学习时必须要踏踏实实,把地基给打好。
三、要有良好的学习氛围。嵌入式学习的难度和高度决定了嵌入式的学习要有个良好的学习讨论氛围,不能一味自己闷头学,要多去讨论和探讨,汲取大家的智慧才能更好的提高。当然也可以报一个嵌入式培训班,有专门的老师带你,有很好的同学相互探头,那么效果就事半功倍。
四、学习嵌入式,永远记住:"要想办法,不要找理由"。
必须掌握的关键点
1、嵌入式与嵌入式系统分别是什么?
嵌入式用于控制、监视或者辅助操作机器和设备的装置。嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是是由单个程序实现整个控制逻辑。
2、嵌入式需要哪些知识,学习内容及方法?
1、C开发经验
条件:Linux
方法:随便,主要是掌握ANSI C编程(不包括gtk,qt等图形可视化开发)
2、网络、操作系统、体系结构
条件:Linux,各种书,算法、例程。
方法:通过C编程实现简单的网络等知识的算法和过程。
3、嵌入式系统概念
条件:各个嵌入式网站,讨论组,书籍
方法:少提问(尤其是等着天上掉馅饼,这主要是防止增长惰性,也解决不了实际问题),多思考。
4、嵌入式开发实践
条件:各种嵌入式系统开发工具的demo版,包括编译器,仿真器。可以找高手们要,也可以下载。
方法:这里有两个分支,一个是基于MCU/MDSP的嵌入式系统开发,一个是象Palm OS,WinCE,uC/OS II等RTOS下的应用软件开发。对硬件感兴趣,想成为真正高手的由第一个分支入手,以后进入第二个分支;如果十分厌烦+硬件,只想停留在软件开发上的,可以只由第二个分支入手,以后就和pc上的开发没有什么本质上的区别了,找份不错的工作应该没问题,可以不用进行下面的步骤了,感兴趣可以参考第6条。
5、硬件开发
条件:各种嵌入式芯片、存储器等电路器件,protel99等电路设计软件,电路板制作。
方法:这时候该有开发条件了,最起码是51系列,这个比较方便。电路的设计内容较多,不过看起来吓人,实际上比软件要简单的多。只要下功夫,实践会告诉你一切。
6、硬件工程/软件工程/项目管理
条件: 各个芯片详细资料和使用经验,软件工程知识,项目管理知识,培训,大型项目参与经验方法:已经是高手了,但是学无止境,沾沾自喜于已有的知识是致命的。那个下一步。你该是管理者了。
7、多泡类似赛微这样坛子,多加一些技术讨论群组,多跟高手过招,往往会收获很多意外的惊喜。
嵌入式领域现状:
一般情况下硬件设备是比较短缺的,所以可以在软件方面和嵌入式系统开发模式上下功夫。提醒大家一点,嵌入式系统开发设计的内容很多,所以大家不要乱,在了解嵌入式系统开发的体系结构后,一步一步的下手,最容易上手的是Linux下的C,比如uC/OS II(有开放源代码),虽然可能无法在硬件上仿真,但也不必着急。无论对初学者还是自以为是高手的人来说,编程水平(这可不受硬件条件限制)绝对是没有止境的。而锻炼编程水平需要的条件只是一台PC而已,条件比较容易具备。有了较高的编程水平(嵌入式主要是C,当然OO的几种语言c++,java是发展趋势),等到有机会的时候及时补充硬件知识,会很快成为高手的。

原文地址:http://blog.51cto.com/14033587/2307476

时间: 2024-11-06 22:23:47

【纯干货】教你如何学习嵌入式开发,嵌入式学习路线的相关文章

(转)嵌入式开发如何学习

一般来说,在嵌入式行业中从事嵌入式产品研发的人往往来自这样一些专业:计算机.电气,自动化,微电子,电子信息,通信,机械等相关专业,由于大学里面不同专业基础课的设置,所以在准备学习的过程中需要根据实际情况有不同的侧重. 一是程序设计的基础,例如:基本的编程语言基础,至少对数据类型.程序的结构及流程控制等最基本的内容要相当清楚,所以建议恶补一下C语言,呵呵!另外有不少同学都问到数据结构的基础,我一直认为数据结构和算法的学习是帮助形成程序设计逻辑思维的很好训练方式,对于程序员的长期专业素养的提高一定有

ARM嵌入式开发板学习路线指引

如何入门嵌入式?嵌入式开发学习方法步骤如何入门嵌入式?嵌入式开发学习路线指引 嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有linux,android.平台:Cortex-A9开发板 嵌入式技术学习如何入手,从何学起呢, 以下内容简单介绍嵌入式开发的学习步骤及如何成为一位合格的嵌入式工程师, 一.首先要掌握基础架构嵌入式Linux系统从软件角度看可以分为四个部分:引导加载程序(Bootloader),Linux内核,文件系统,应用程序.开发编译环境的搭建,源代码的编译和烧写,应用和

嵌入式开发需要学习哪些东西

本文转自迅为开发板iTOP-4412开发板实战手册:http://www.topeetboard.com 刚刚读到这篇文章,对于刚入门嵌入式来说挺有用的,献给向我一样正在迷茫,苦于没有头绪,没人指引的学习朋友们.主要讨论下嵌入式技术学习方法,主要是针对嵌入式软件.嵌入式技术是一门边缘科学(又称交叉科学),涉及的内容非常广泛,前几年很多学校,包括一流的大学都在讨论要不要设置这个专业.不是说设置这个专业本身有什么问题,而是因为课程设置不容易安排,如果偏硬件的话那就成了电子工程一类的专业,如果偏软的话

嵌入式开发工程师学习线路

一.核心学习课程 1.应用软件基础 Linux基础 C语言 2.底层驱动程序开发 ARM编程(ARM体系结构.ARM汇编.开发板常见的外设裸机编程) Linux驱动开发 二.Android扩展 · Android HAL驱动(基于Linux驱动的前提) · Android系统定制 · Android应用开发 三.物联网扩展(无限扩展) · GPS和地图查询服务 · WIFI · 蓝牙4.0 · Zigbee · RFID(射频卡) ....... 四.项目扩展(硬件需要成本) · 华为海思Hi3

【4412嵌入式开发板学习笔记】认识uboot

转自迅为讨论群:http://www.topeetboard.com 重要说明:这份笔记不是4412开发配套的,是我在网上看视频的时候下载上课老师的笔记后修改的.所以我试了一下笔记上的uboot命令,有些无法使用,可能是uboot版本问题或者文件系统问题.具体原因我目前还不是很清楚,建议第五部分uboot命令可以先不用尝试. 一切以配套视频为准. 一.为什么是uboot 1.uboot从哪里来的? (1)uboot是SourceForge上的开源项目 (2)uboot项目的作者:一个德国人最早发

嵌入式开发工程师学习线路图

一.核心学习课程 1.应用软件基础 Linux基础 C语言 2.底层驱动程序开发 ARM编程(ARM体系结构.ARM汇编.开发板常见的外设裸机编程) Linux驱动开发 二.Android扩展 · Android HAL驱动(基于Linux驱动的前提) · Android系统定制 · Android应用开发 三.物联网扩展(无限扩展) · GPS和地图查询服务 · WIFI · 蓝牙4.0 · Zigbee · RFID(射频卡) ....... 四.项目扩展(硬件需要成本) · 华为海思Hi3

嵌入式学习-4412开发板学习-迅为4412开发板can测试技术分享

迅为CAN 测试 详情了解:http://topeetboard.com  更多了解:https://arm-board.taobao.com 本文档适用的范围 ① 硬件平台 :4412精英版以及全能版开发板.(4418/6818开发板以及imx6q开发板测试的道理是一样的可能细节有些不同,在这里我没有做实验,感兴趣的可以按照这个文档测试一下) ②软件平台 :Android4.0.Android4.4.QT.ubuntu 测试程序: 这个在网盘上有提供,另外我也会上传 一.硬件连接 can 通信

开始学习 IOS 开发,学习环境搭建

1,IOS环境安装 直接从 AppStore上面下载,网络环境一定要好 2.45G 2,学习视频 在网上搜索到的.youku的视频. http://v.youku.com/v_show/id_XMzI5ODAwODA4.html?f=17945592 3,开发文档 mac上面的中文文档. https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOSCh/index.html#//apple_r

2015年年底由于项目需要,边学习边开发项目学习了游标和存储过程 特此记录

游标的使用 使用游标的顺序: 声名游标.打开游标.读取数据.关闭游标.删除游标. 1. 声明游标 最简单游标声明:DECLARE <游标名>CURSOR FOR<SELECT语句>: 其中select语句可以是简单查询,也可以是复杂的接连查询和嵌套查询 2. 打开游标 非常简单,我们就打开刚才我们声明的游标mycursor OPEN mycursor 3. 读取数据 FETCH [ NEXT | PRIOR | FIRST | LAST] FROM { 游标名  | @游标变量名