牛人分析如何高效学习嵌入式
2019独角兽企业重金招聘Python工程师标准>>>
都说嵌入式学习难,难于上青天,其实不然,无论学习什么,只要找对了一个好的学习方法,往往会事半功倍。
第一部分 对嵌入式系统的一些大致了解
嵌入式被应用于哪些行业?
嵌入式应用于工业控制、安防、医疗器械、智能家居、车载、金融等行业!
嵌入式系统的一些简单了解:
1、 嵌入式系统与普通的PC或者notebook不同,嵌入式系统的外形尺寸、功耗、外部适配器等各种特征必须满足应用的要求和限制;
2、 嵌入式系统简单的说就是面向特定应用设计的专用计算机系统;
3, 使用低功耗的X86级别的CPU,采用模块化的设计,配置了最基本的计算机周边配备而制成。这种计算机通常采用Windows操作系统;
4、 嵌入式系统的软件包括操作系统烧录在一块电路板上;
5、 嵌入式系统的CPU可以是:4位、8位、16位、32位;
6, 嵌入式系统更多的表现为SoC的特点,也就是把整个系统都集成在一个芯片上,例如,ATMEL的arm7的芯片91sam7x128/256等;用户可以获得廉价而功能强大的嵌入式系统;
嵌入式系统的体系结构有哪些?
CPU RAM ROM或者flash ram AD DA I/O Usart USB CAN 以太网
第二部分:正确的学习之路
最正确的学习道路 - 从8位mcu到canbus到ARM7
第一步:熟悉8位mcu
嵌入式技术学习的路线:8位mcu(51或者avr...)+can2.0B+arm7+arm9。
作为低端的嵌入式系统,选择8位mcu作为入门是比较适中的,而8位mcu中,相比pic、avr、freescale等等8位单片机来说,又以选择51核的单片机作为学习8位mcu的首选来更加合适。当然这个观点是仁者见仁智者见智;如果需要理由的话,那么也许以下这些理由可以作为参考:
1. 51上积累了大量的优秀的代码和其它资源;网络上这样的资源太多了,几乎就是不花钱的;
2. 生产51内核的单片机的厂家很多,比如:ATMEL、华邦、LG、飞利浦、STC(宏晶科技)、TI、…
3. 51单片机在细分低端市场,面向不同的行业应用,厂家推出了不同的产品,如LPC900系列,STC的12CXXXX系列;在功能、价格、功耗,体积,封装、抗干扰等方面来满足行业用户的需求;例如,现在的51单片机越来越多的集成了A/D、D/A、SPI、I2C、PWM、内部时钟、看门狗、eeprom、ISP/IAP等等,已经跟传统的ATMEL的89C51/52有了很大的差别!功能越来越强大的同时成本越来越低,而且不担心某个厂家缺货..
第二步:熟悉can2.0A/B,在精通51的基础上,熟悉can2.0A/B
CAN具有的特点
1. 采用无损坏的仲裁技术;
2. 8字节的短帧传送,故传输时间短、抗干扰性强;
3. 高速,最高速度可达1Mbit/s;
4. 具有多种错误校验方式如CRC及其他校验措施,数据出错率极低;而且在严重错误的情况下,节点会自动离线,避免影响总线上其它节点;Rs485经常是一个节点影响了总线上所有的节点;
5. 可以做到全区广播、分区广播和点对点通讯;
6. 多主方式,多主之间又可以分成是主节点和次节点;各节点均可在任意时刻主动向网络上的其他节点发送信息,信盈达嵌入式物联网智能硬件等企鹅要妖气呜呜吧九零就一不分主从,通信灵活;发送的时候总线自动仲裁主次;主节点占有优先权;
7. Can控制器自动过滤帧号不符的帧;大大减轻了CPU的负担;
作为一种技术先进、可靠性高、功能完善、成本合理的远程网络通讯控制方式,CAN总线已被广泛应用于各个行业之中。
第三步:熟悉ARM7,掌握ARM这个超级单片机(32位)
二、 学最新最有用的东西。
记住一句话:无论是在哪一个开发行业中,要学就学最新,最有用的东西!
对于嵌入式系统的学习者,一款已经过时的技术学它做什么?难道学了不能致用是对的?
在这里我推荐大家学习51系列的单片机,学好了就能毕业出去生存而学习了51+canbus能够让你如虎添翼;
三、 分模块学习嵌入式系统
任何一门学问,难得就是入门;而入门,就是要有一个完整的知识体系;
拿到一个电路设计的任务的时候,或者拿到一块完整系统的电路板的时候,怎样去分析它的系统构成呢?
作为一个电子系统,它的构成通常是:
1. 单片机最小系统
2. 配置(内存、时钟、看门狗、eeprom)
3. 开关量输入
4. 开关量输出
5. 模拟量输入
6. 模拟量输出
7. 人机界面(按键+液晶显示/LED显示)
8. 通讯接口和协议
四、站在前人的肩膀上学习
当你拿到一个不会的任务或者学习一个不会的东西的时候怎么办呢?你自己左思右想,苦苦思考,就是想不出来,最后感叹一句:真难学?
这你就错了,不知道没关系,你本来就是在一点点学习,本来就没有经验,怎么会一下子就解决了所有的问题呢,那样的话,我可以告诉你:你不用学了。所以当面临这些问题时,不要钱,我们先把问题分成一个个小模块,每个小模块百度去,你就会发现,咦?下载过来学吧!
学习就是把前辈的东西拿来用,自己累积经验,久而久之你也成高手了!
五、精通一门技术足以,门门相通。
大家切身经历的一件事就是,面试的时候简历上写的会的技能一大堆,什么html了,asp了,硬件了什么的,都懂,可这些,企业会看吗?
企业关心的,不是你会多少?而是你是否精通一门,在精通一门的基础上,略懂其他。
而对于嵌入式领域来说,我个人认为对于在校的学生,应该重点放在c语言的熟练上;一方面是因为硬件没有实际的实践,很难能拿得出手,当然实践的成本也高;当然自己动手做一个学习板还是很有必要的,信盈达嵌入式物联网智能硬件企鹅意义气呜呜吧久零就易,也不算很难;还有就是在企业中,软件和硬件的配置基本上是1:4的情况;对于成熟产品,基本上,硬件修改的情况非常小,升级都是在软件的功能的增加和完善上。
六、第一份工作,不求薪资,只求长经验。
第一份工作是你步入社会的重要的一步,走好第一步,可以少走2~3年底的弯路;
然而,你的份工作能不能做嵌入式开发,首先就要看你是否具有嵌入式的一定基础或者取得一些嵌入式开发的经验,如果你不是,那一开始不要计较工资的高低而是干了再说,哪怕是到实验室打杂,也比干点别的再回过头来做嵌入式的开发要强。
七、 保持合理规划时间,勤奋学习,才能在嵌入式中不断提高自己
现在社会竞争这么激烈,所以每个人都在去努力培养自己的核心竞争力,只有成为技术专家+行业专业才能在这个行业立足不倒。
所以我们要有一个明确的职业生涯的规划,同时要有一个达到这个目标的可以实施的准确的时间表。抓紧时间,提高效率最重要的因素之一。
八、 嵌入式系统设计的3个境界 - 熟练、熟能生巧、系统设计的思想
熟练:熟练掌握c语言、电路模块、eda工具;
熟能生巧:干活多了,从中悟出很多的技巧;干得活又快又好,这是熟能生巧;
系统设计:不满足于熟能生巧,而开始考虑,代码重复使用,代码设计的标准化、模块化;使得后来的开发能在一个标准的平台上进行;对嵌入式系统设计有了自己的独到的见解。
也还可以使用另外的标准来作为嵌入式系统设计的境界:
可靠性高:在同样的成本下,做出来的东西可靠性高于竞争对手;
可靠性高的情况下成本更低:能用比竞争对手成本更低的电路设计作出可靠性更高的产品;
在此基础之上,功能更加强大,用户使用更方便:进入到行业专家的境界了。
九、 学习就要- 快、准、狠
看准嵌入式系统设计可以作为傍身之技的话,那就要:
快:下手要快,看到现在形势良好,想学那就赶紧学;
准:抓住8位mcu、can总线、arm7这样的道路,不走冤枉路;
狠:学习就要刻苦,吃了就学,睡醒就学,想要成功总要付出点什么。
转载于:https://my.oschina.net/u/3629177/blog/1572415
牛人分析如何高效学习嵌入式相关推荐
- 网上某位牛人的deep learning学习笔记汇总
目录(?)[-] 作者tornadomeet 出处httpwwwcnblogscomtornadomeet 欢迎转载或分享但请务必声明文章出处 Deep learning一基础知识_1 Deep le ...
- 一位复旦微电子牛人的模电学习成长之路
复旦攻读微电子专业模拟芯片设计方向研究生开始到现在五年工作经验,已经整整八年了,其间聆听过很多国内外专家的指点.最近,应朋友之邀,写一点心得体会和大家共享. 我记得本科刚毕业时,由于本人打算研究传感器 ...
- 如何高效学习嵌入式(从入坑到起不来)
引言: 废话不多说直接上干货,直接看视频,个人感觉容易睡着.先发一个通用的,后期再发一个独家的. 以下按顺序来别走乱了. 一前期准备: c语言: 浙江大学翁凯老师的<c语言程序设计>懂得都 ...
- linux嵌入式开发流程,听听牛人怎么说
很多学习嵌入式的人来说,都会学习嵌入式linux开发,在学习的过程中,总会有很多难题,相对而言,嵌入式linux也算是嵌入式学习中比较难的,那如何可以攻破这个难点,那么我们就需要从根本入手,学习嵌入式 ...
- 学习嵌入式的书籍推荐,嵌入式编程入门教程学习大纲
嵌入式系统是当前热门.具发展前景的IT应用领域之一,很多数字包括手机.电子字典.可视电话.数字相机.数字摄像机.机顶盒.智能玩具医疗仪器和航空航天设备等都是典型的嵌入式系统.越来越多的人想要了解学习嵌 ...
- 如何高效学习 思维导图
如何高效学习 如何高效学习 如何高效学习 介绍一种叫"整体性学习"的方法,这个方法的提出者是MIT(麻省理工学院)毕业,他通过1年就完成了MIT4年33门课程的学习(MIT 每门课 ...
- linux嵌入式系统开发心得,嵌入式学习牛人心得
都说嵌入式学习难,难于上青天,其实不然,无论学习什么,只要找对了一个好的学习方法,往往会事半功倍.下面我摘自于一个嵌入式前辈,说说他的学习经验.本文引用地址:http://www.eepw.com.c ...
- 学习STM32单片机,从菜鸟到牛人就是这样简单
想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习STM32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考虑的是 ...
- 淘宝技术牛人牛博客学习
淘宝技术委员会是由淘宝技术部高级技术人员组成的一个组织,共分为Java分会.C/C++分会.算法分会:数据分会:UED分会.测试分会.系统分会七个分会. 淘宝技术委员会的愿景是淘宝成为技术人才向往的乐 ...
最新文章
- jQuery中排除指定元素,同时选择剩下的所有元素
- getsockname和getpeername
- 获取python安装路径
- 批处理获取操作系统版本信息
- c语言课设代写一般多少钱_海南彩礼钱一般给多少 海南娶媳妇要多少钱
- linux内核分析及应用 -- Linux 网络层数据流分析(上)
- 带圈数字符号0-100和unicode编码
- java 可达性分析算法_垃圾回收:可达性分析算法、生存还是死亡(两次标记)
- 字符串进阶——谈谈后缀全家桶(1) 后缀树
- 组态王串口服务器通讯不稳定,组态王通信频繁掉线
- sql 语句 where in的使用 where like %我
- PHP中常用的十个字符串函数
- matlab中组合数函数,MATLAB中常用的排列、组合、阶乘函数
- 阿里云OSS 图片处理api(custom)
- Pycharm浏览器打开报错解决
- 如何用一张照片证明你是老网民?
- 屏蔽各APP广告方法与广告路径(须Root)
- 华为云永久修改主机名
- 计算机辅助设计高级绘图员技能鉴定试题(电路类),计算机辅助设计高级绘图员技能鉴定试题(电路类)1...
- 当你工作几年就会明白,以下几个任何一个都可以超过90%程序员