关于嵌入式的问题

本人以前学自动化,学过单片机,模电数电,但现在升本之后忘了很多,现在想学嵌入式,想问下嵌入式有哪几个方向?像我这种情况适合学哪个方向的?该怎么学习?我想从零基础开始好好学... 本人以前学自动化,学过单片机,模电数电,但现在升本之后忘了很多,现在想学嵌入式,想问下嵌入式有哪几个方向?像我这种情况适合学哪个方向的?该怎么学习?我想从零基础开始好好学习,望各位悉心指点,回答的好的,我肯定会加分,越详细越好,懂得进,复制的就别来了。 展开
 我来答
joyoustech
2013-01-31 · TA获得超过1871个赞
知道小有建树答主
回答量:1465
采纳率:71%
帮助的人:1251万
展开全部
从大方向上分,嵌入式分为硬件和软件两方面。
嵌入式硬件有几个大方向:处理器和数字电路、弱信号和模拟电路、大功率电路、高频电路。做嵌入式硬件必然要精通处理器和数字电路了,但其他几个方向都了解一些,并至少精通其中的一两项。现在嵌入式的应用非常广泛,但几乎都是交叉学科,单纯的嵌入式不多,比如通讯视频等类型的应用,肯定需要高频的电路;而仪表检测设备上用嵌入式,一定会配合模拟电路使用;而变频调速并网发电等的应用,必然与大功率电路配合,也少不了模拟电路。
嵌入式软件有几个大方向:底层软件、系统层软件、应用层软件,底层软件有底层驱动、高实时性软件、裸奔的嵌入式软件等,主要是与操作系统关系较小,与硬件关系密切的软件,做这种软件需要较好的硬件基础;系统层软件主要是系统的裁剪移植,常用的系统有linux、安卓、ucos-ii、vxworks等等很多,这也是培训机构最常做的培训,做这部分软件要有好的系统架构思想,较深入的操作系统理论;应用层软件是在嵌入式操作系统之上的软件,比如网络协议,用户界面等等,以软件为主,很少涉及硬件,做这种软件要熟悉软件工程、数据结构等。
在大多数培训机构谈嵌入式就搞linux、搞安卓、搞网络,都往软件上靠,连百度知道的嵌入式分类都分到软件开发了,但实际嵌入式并不局限与这些,在很多需要高实时性高可靠性的系统中,嵌入式应用更广泛。
至于个人想学嵌入式,最好还是选中硬件还是软件这个大方向,最好再找准小方向,做到在自己的小方向上学得深入,大方向上懂的得多,基础雄厚、专业精尖才是人才。
wolf_lhy
2013-01-31 · TA获得超过6604个赞
知道大有可为答主
回答量:1090
采纳率:66%
帮助的人:483万
展开全部
首先,你要明确两个概念,嵌入式系统,嵌入式操作系统,很多人会把这两个概念搞混淆.
其次,你要明白两个概念,技术,行业.
技术,是只你将来用到什么技术,比如模电技术,数电技术,单片机技术,
行业,是指你将来你工作在大行业,比如,同样是模电,可以用在工业控制行业,可以用在电源
行业等等,这两个概念不可混淆.
再次, 我再给你大概的介绍一下嵌入式的目前的几个技术发展方向,注意,不是行业发展方向:

1 是用单片机的,注意,这里的单片机是指广义上的单片机,比如合泰,ARM7,STM32,AVR等等,
仅仅局限于51.
这些单片机的编程方式就像你在大学里学的,用main函数 + while(1)死循环的方式,这种叫
前后台的方式,没有任何操作系统,一般比较浅显的行业都用这种方式,原因是比较简单,很多
人都会,公司容易找到人,而且,把前后台写好了, 不比跑某些系统差.缺点是可移植性相对
比较差,开发的难度不大但是周期长.

2 跑一些简单的嵌入式操作系统,比如51系列的可以跑RX51,uCOS-II,而其他稍微好一点的
单片机可以跑 uCOS-II,uCLinux等等,这类操作系统,相对来说,入门简单,比较好学,不需要太
多的计算机知识,而且一旦写好代码,可移植性比较强,跑这些简单的系统可应用的行业,比
第 一条的前后台所涉及到的行业更多一些,因为这些操作系统并不十分复杂,但是,相对来说,
实时性还很好.

3 跑复杂的操作系统,比如说Linux,Window CE,安卓等等.当然,这些系统所用的单片机也就
十分复杂了,至少要是ARM9以上的.所涉及到的行业与前面两条的行业几乎没有太多的交集.
其实你也看出来了,这类的单片机功能比较强大,比较复杂,他们跑的系统,已经可以和
电脑的操作系统一争高下了,所以,此时,他们已经不是纯粹意义上的单片机了,而是一个
真正的微小型计算机了.所以,此时要求你,不只要具有电子专业方面的知识,更多的,要有
计算机专业的知识,比如操作系统,网络编程,TCP/IP等等知识,相对来说,对于电子专业
的人来说,入门难度比前两个要大的很多,
最后,结合你的个人情况,给你一点建议,当然,是我自己的建议,你可能简单参考:
1 你应该发展的目标:
你是学自动化的,自动化与电子信息专业交集比较多,只是最终强电或者是弱电的不
不同,与计算机专业交集不是很多,尤其是操作系统,TCPIP等等知识,不是你们的专业,
所以,我上面列的方向,你不适合走第三条,这不单是从技术方面,也包括行业方面.
你学过单片机,又懂数模电,那么,有基础就好,忘记了不怕,再拾起来就是了,因为,我
建议你,一定要发展到第二条的水平,我上面罗列的第一条,第二条是一个有关系的,
层进关系,会简单的操作系统,可以用的行业很多,而且又比只会前后台要高级.所以,
你的目标是 做会简单的操作系统,并且精通,注意,是精通.
2 你应该做的努力:
你已经会单片机了,那么,建议你,再学一款单片机,就STM32吧,因为51的局限性实在太
大,STM32相对高级的很多.还是从基础的前后台做起,学会如何操作寄存器,如何让STM32
跑起来.
其实,你不要小看前后台,要把前后台写好了,也不容易.
建议你,自己画个开发板,自己购买元件,焊接,这样的一个过程,可以同时锻炼你的硬件功底.
以上的过程,大概至少要半年的时间,多则一年,你感觉STM32玩的很不错了,就要上大菜,
在STM32上跑一下嵌入式操作系统的uCOS,uCOS相对来说,入门比较简单,而且用途非常广泛.
这个时间,建议你买一块好的开发板,然后跑uCOS,由前后台学习uCOS的人,是比较痛苦的,
其实,最难得的是你的坚持.
以上,是我给你的建议,因为我也是学电子信息的,现在从事的工业控制工作,跟自动化沾边,
这也是我的历程,的确不容易.
更多追问追答
追问
忘了说了,我以前大专学的是电子类的,现在升本软件工程了,下学期准备修数据结构,和操作系统,那么按照这样的学法,我是否可以走第三条路,还是要走第三条路就必学的把第一条第二条走好了才行呢?  还有走第三条路是不是也是同第二条路一样的学习方法?求解。
追答
哦,这个样子,那你可以走第三条路子,因为我说的第三条,嵌入式操作系统,有两种,第一种,是做应用程序,就像我们电脑上的开发是一样的,只不过是交叉编译,你可以理解为纯粹的电脑程序开发.
第二种,是底层驱动程序开发,你可以理解为电脑程序的驱动开发,比如开发个显卡程序等等.

如果你走前面的,应用程序,你可以不需要太熟悉你以前的电子专业的知识,甚至可以完全不知道.
如果你走底层驱动开发,你就要把以前的知识也做到精通.

但是不管哪种,都要求你有良好的计算机基础,尤其是操作系统理论,一定要非常的精通,所以,你既然学的是计算机,你可以走第三条路子.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liang890319
2013-01-31 · TA获得超过1235个赞
知道小有建树答主
回答量:1446
采纳率:50%
帮助的人:399万
展开全部
你既然学过单片机
那我建议你从ARM的cortex-M3内核开始学起吧比如stm32芯片 买个开发板 弄几本书几个月估计就学会了
然后巩固下你的硬件知识 比如pcb设计等 等你有基础了再去学更高级的ARM芯片
关于方向:
现在物联网很火所以你将来可以往这方面发展
但是不要被表象迷惑 物联网的基础是硬件+传感器
所以你现在可以这样
第一步:买个stm32开发板 学习如何用好这个芯片
第二部:学习pcb设计 做几个实例
第三步:学好tcpip 将你的传感器设备接入换联网 并应用起来 yeelink就是个物联网平台 你可以去看看别人做出来的产品

要学就抓紧开始啊 现在很多人都已经起步开始做实际应用了 加油
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhxiufan
2013-02-01 · 知道合伙人软件行家
zhxiufan
知道合伙人软件行家
采纳数:14923 获赞数:38362
国家科技进步奖

向TA提问 私信TA
展开全部
学ARM,再学一个实时操作系统,面向控制的较有意思,面向应用的人太多了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式