嵌入式偏硬件和偏软件的区别?

时间:2022-01-06 08:03:25
请问嵌入式偏硬件和偏软件到底具体是有什么区别,偏硬件主要是做什么的,偏软件主要是做什么的?请各位大侠帮忙解释下,我是想以后进入这个行业但是一直不知道偏硬件和偏软件具体的区别和各自的主要工作内容是什么?请尽量详细点,不胜感激啊!

14 个解决方案

#1


引用楼主 chenquxtu 的回复:
请问嵌入式偏硬件和偏软件到底具体是有什么区别,偏硬件主要是做什么的,偏软件主要是做什么的?请各位大侠帮忙解释下,我是想以后进入这个行业但是一直不知道偏硬件和偏软件具体的区别和各自的主要工作内容是什么?请尽量详细点,不胜感激啊!

同问……

#2


嵌入式本身就是软硬结合的技术,嵌入式难学也就是难学在这,一个嵌入式产品不是一个人能做出来的,或者说不是一个职位能做出来的,一个产品首先要由硬件工程师规划PCB,焊接CPU,制作电路板等,嵌入式系统工程师拿到电路板做相应的BOOTLOAD(相当于PC上的BIOS),选择一款嵌入式操作系统,例LINUX,做LINUX系统移植(这一步就需要嵌入式工程不仅需要软件开发的能力对硬件也必须要了解能看懂硬件原理图,找对应的GPIO端口等),嵌入式系统工程师做好后会交给应用工程师,开始做应用层软件的开发!全部做完后 产品测试就可以发布了!嵌入式工程师看你要做哪方面的了,刚才提到的产品开发环节做哪个部分!不管做什么 嵌入式工程师对硬件一定要理解!

#3


所谓偏硬和偏软更形象的一个说法是上层和底层的分类。
底层(偏硬件)主要是开发写硬件模块设计,做驱动,做嵌入式操作系统层开发(如做移植)。不过这些领域的技术几乎被国外超级大公司垄断了,在中国,除了是科研目的,从商业角度没什么大的发展力。
上层(偏软件)主要是利用高级语言开发基于嵌入式操作系统层之上的应用程序,如,android,ios,和最近很火的windows phone上的程序开发。
个人建议:如果想进入这个行业,最好是走上层,开发应用程序,因为目标用户多,相应的市场需求特别大,同时比底层容易学习,俗一点说就是:在中国当前的市场环境下,做上层应用程序更容易赚钱,我大部分做底层的朋友在工作后都努力的忘上层走。

#4


该回复于2012-03-12 09:02:16被版主删除

#5


该回复于2012-03-12 09:01:22被版主删除

#6


首先非常感谢你非常详细的解答,解开了困惑了我很久的问题,同时给出了非常宝贵的建议。
然后我的情况是这样子的,我是大四的学生已经签了一个公司的,但面试时他问我想偏硬件的还是偏软件的时候,我当时一方面是对嵌入式了解得不是很深,另一方面我们专业只学了C语言,其他的更多的是跟硬件相关的,所以我就选了偏硬件的。但是通过这段时间的了解我有点想转到嵌入式偏软件方向的,于是有两个问题想请教大侠:
1、如果从事嵌入式偏硬件的话,那么以后想转到嵌入式偏软件有可能吗?难度很大吗?
2、对于我现在软件只学了C语言的和51单片机的汇编语言的,如果现在想学嵌入式偏软件的现在该怎么弥补不足?需要从什么方面的书看起,需要怎么做才能先上手?
还请赐教!
引用 3 楼 ruiyulove1314 的回复:
所谓偏硬和偏软更形象的一个说法是上层和底层的分类。
底层(偏硬件)主要是开发写硬件模块设计,做驱动,做嵌入式操作系统层开发(如做移植)。不过这些领域的技术几乎被国外超级大公司垄断了,在中国,除了是科研目的,从商业角度没什么大的发展力。
上层(偏软件)主要是利用高级语言开发基于嵌入式操作系统层之上的应用程序,如,android,ios,和最近很火的windows phone上的程序开发。
个……

#7


     感谢你详细的回答,这让我对嵌入式的整个流程有了一个比较具体清晰的印象了,也是一个很大的意外收获!
     我想追问下负责规划PCB,焊接CPU,制作电路板等工作的硬件工程师应该是不属于嵌入式偏硬件的吧?或者换句话说嵌入式偏硬件的工程师是不负责规划PCB,焊接CPU,制作电路板等工作的?
引用 2 楼 yc_first 的回复:
嵌入式本身就是软硬结合的技术,嵌入式难学也就是难学在这,一个嵌入式产品不是一个人能做出来的,或者说不是一个职位能做出来的,一个产品首先要由硬件工程师规划PCB,焊接CPU,制作电路板等,嵌入式系统工程师拿到电路板做相应的BOOTLOAD(相当于PC上的BIOS),选择一款嵌入式操作系统,例LINUX,做LINUX系统移植(这一步就需要嵌入式工程不仅需要软件开发的能力对硬件也必须要了解能看懂硬件原……

#8


没错。那些都是硬件工程师做的。

#9


1.从事偏硬件的工作打交道的是C,汇编语言,面对的是电路和时序,所以学术上术语称这种开发是面向过程的思想。偏软件主用的是C++(比如QT开发)和JAVA(如android开发),用面向对象的思想。所以先走硬件再转软件的话其实就是新掌握一种程序思想,这个起步的时候稍微麻烦点。但是比反过来,软转硬简单多了!
2.就像上一问内容说的一样,你还是要先学面向对象语言,android有过于太热门了(有点过时,个人理解),所以建议你学C++,然后学习windows phone的开发,这两个技术书都特别多,起步的时候C++不用学太深,能做简单开发就行,然后在以后的工程中逐渐学习效果更好。学了C++,再学JAVA,1周内可以玩转。
推荐的书C++ primer(神书,足够从菜鸟学成C++大神),其他不经典的书都是过场,随便找几本基本都能用来入门和简单学习。
希望对你有帮助。

#10


看到其他朋友的回复也想不充点我的个人认识,负责规划PCB,焊接CPU,制作电路板等工作的人应该是属于EE,嵌入式开发应该是从已有的成品的硬件板子的基础上向上发展的。

#11


嗯,好的!看了大侠的回复我感觉一下子对这个行业和自己的方向清晰了许多。感谢帮助!!!
我在网上搜了下C++ primer这本书有不止一个版本,主要有第四版的,第四版特别版的,还有第五版的,不知道哪一个版本会更适合我这种初学者?
引用 9 楼 ruiyulove1314 的回复:
1.从事偏硬件的工作打交道的是C,汇编语言,面对的是电路和时序,所以学术上术语称这种开发是面向过程的思想。偏软件主用的是C++(比如QT开发)和JAVA(如android开发),用面向对象的思想。所以先走硬件再转软件的话其实就是新掌握一种程序思想,这个起步的时候稍微麻烦点。但是比反过来,软转硬简单多了!
2.就像上一问内容说的一样,你还是要先学面向对象语言,android有过于太热门了(有点过……

#12


因为特别版是基本的C++教程加上C++编程规范(对长久发展很重要),所以建立买第四版特别版

#13


呵呵,谢谢大侠哈!
引用 12 楼 ruiyulove1314 的回复:
因为特别版是基本的C++教程加上C++编程规范(对长久发展很重要),所以建立买第四版特别版

#14


那现在学c++的话,调试程序的话大部分公司都用visual c++的那个版本?用最新visual c++2010的吗?还是用以前老的visual c++6.0呢?
引用 9 楼 ruiyulove1314 的回复:
1.从事偏硬件的工作打交道的是C,汇编语言,面对的是电路和时序,所以学术上术语称这种开发是面向过程的思想。偏软件主用的是C++(比如QT开发)和JAVA(如android开发),用面向对象的思想。所以先走硬件再转软件的话其实就是新掌握一种程序思想,这个起步的时候稍微麻烦点。但是比反过来,软转硬简单多了!
2.就像上一问内容说的一样,你还是要先学面向对象语言,android有过于太热门了(有点过……

#1


引用楼主 chenquxtu 的回复:
请问嵌入式偏硬件和偏软件到底具体是有什么区别,偏硬件主要是做什么的,偏软件主要是做什么的?请各位大侠帮忙解释下,我是想以后进入这个行业但是一直不知道偏硬件和偏软件具体的区别和各自的主要工作内容是什么?请尽量详细点,不胜感激啊!

同问……

#2


嵌入式本身就是软硬结合的技术,嵌入式难学也就是难学在这,一个嵌入式产品不是一个人能做出来的,或者说不是一个职位能做出来的,一个产品首先要由硬件工程师规划PCB,焊接CPU,制作电路板等,嵌入式系统工程师拿到电路板做相应的BOOTLOAD(相当于PC上的BIOS),选择一款嵌入式操作系统,例LINUX,做LINUX系统移植(这一步就需要嵌入式工程不仅需要软件开发的能力对硬件也必须要了解能看懂硬件原理图,找对应的GPIO端口等),嵌入式系统工程师做好后会交给应用工程师,开始做应用层软件的开发!全部做完后 产品测试就可以发布了!嵌入式工程师看你要做哪方面的了,刚才提到的产品开发环节做哪个部分!不管做什么 嵌入式工程师对硬件一定要理解!

#3


所谓偏硬和偏软更形象的一个说法是上层和底层的分类。
底层(偏硬件)主要是开发写硬件模块设计,做驱动,做嵌入式操作系统层开发(如做移植)。不过这些领域的技术几乎被国外超级大公司垄断了,在中国,除了是科研目的,从商业角度没什么大的发展力。
上层(偏软件)主要是利用高级语言开发基于嵌入式操作系统层之上的应用程序,如,android,ios,和最近很火的windows phone上的程序开发。
个人建议:如果想进入这个行业,最好是走上层,开发应用程序,因为目标用户多,相应的市场需求特别大,同时比底层容易学习,俗一点说就是:在中国当前的市场环境下,做上层应用程序更容易赚钱,我大部分做底层的朋友在工作后都努力的忘上层走。

#4


该回复于2012-03-12 09:02:16被版主删除

#5


该回复于2012-03-12 09:01:22被版主删除

#6


首先非常感谢你非常详细的解答,解开了困惑了我很久的问题,同时给出了非常宝贵的建议。
然后我的情况是这样子的,我是大四的学生已经签了一个公司的,但面试时他问我想偏硬件的还是偏软件的时候,我当时一方面是对嵌入式了解得不是很深,另一方面我们专业只学了C语言,其他的更多的是跟硬件相关的,所以我就选了偏硬件的。但是通过这段时间的了解我有点想转到嵌入式偏软件方向的,于是有两个问题想请教大侠:
1、如果从事嵌入式偏硬件的话,那么以后想转到嵌入式偏软件有可能吗?难度很大吗?
2、对于我现在软件只学了C语言的和51单片机的汇编语言的,如果现在想学嵌入式偏软件的现在该怎么弥补不足?需要从什么方面的书看起,需要怎么做才能先上手?
还请赐教!
引用 3 楼 ruiyulove1314 的回复:
所谓偏硬和偏软更形象的一个说法是上层和底层的分类。
底层(偏硬件)主要是开发写硬件模块设计,做驱动,做嵌入式操作系统层开发(如做移植)。不过这些领域的技术几乎被国外超级大公司垄断了,在中国,除了是科研目的,从商业角度没什么大的发展力。
上层(偏软件)主要是利用高级语言开发基于嵌入式操作系统层之上的应用程序,如,android,ios,和最近很火的windows phone上的程序开发。
个……

#7


     感谢你详细的回答,这让我对嵌入式的整个流程有了一个比较具体清晰的印象了,也是一个很大的意外收获!
     我想追问下负责规划PCB,焊接CPU,制作电路板等工作的硬件工程师应该是不属于嵌入式偏硬件的吧?或者换句话说嵌入式偏硬件的工程师是不负责规划PCB,焊接CPU,制作电路板等工作的?
引用 2 楼 yc_first 的回复:
嵌入式本身就是软硬结合的技术,嵌入式难学也就是难学在这,一个嵌入式产品不是一个人能做出来的,或者说不是一个职位能做出来的,一个产品首先要由硬件工程师规划PCB,焊接CPU,制作电路板等,嵌入式系统工程师拿到电路板做相应的BOOTLOAD(相当于PC上的BIOS),选择一款嵌入式操作系统,例LINUX,做LINUX系统移植(这一步就需要嵌入式工程不仅需要软件开发的能力对硬件也必须要了解能看懂硬件原……

#8


没错。那些都是硬件工程师做的。

#9


1.从事偏硬件的工作打交道的是C,汇编语言,面对的是电路和时序,所以学术上术语称这种开发是面向过程的思想。偏软件主用的是C++(比如QT开发)和JAVA(如android开发),用面向对象的思想。所以先走硬件再转软件的话其实就是新掌握一种程序思想,这个起步的时候稍微麻烦点。但是比反过来,软转硬简单多了!
2.就像上一问内容说的一样,你还是要先学面向对象语言,android有过于太热门了(有点过时,个人理解),所以建议你学C++,然后学习windows phone的开发,这两个技术书都特别多,起步的时候C++不用学太深,能做简单开发就行,然后在以后的工程中逐渐学习效果更好。学了C++,再学JAVA,1周内可以玩转。
推荐的书C++ primer(神书,足够从菜鸟学成C++大神),其他不经典的书都是过场,随便找几本基本都能用来入门和简单学习。
希望对你有帮助。

#10


看到其他朋友的回复也想不充点我的个人认识,负责规划PCB,焊接CPU,制作电路板等工作的人应该是属于EE,嵌入式开发应该是从已有的成品的硬件板子的基础上向上发展的。

#11


嗯,好的!看了大侠的回复我感觉一下子对这个行业和自己的方向清晰了许多。感谢帮助!!!
我在网上搜了下C++ primer这本书有不止一个版本,主要有第四版的,第四版特别版的,还有第五版的,不知道哪一个版本会更适合我这种初学者?
引用 9 楼 ruiyulove1314 的回复:
1.从事偏硬件的工作打交道的是C,汇编语言,面对的是电路和时序,所以学术上术语称这种开发是面向过程的思想。偏软件主用的是C++(比如QT开发)和JAVA(如android开发),用面向对象的思想。所以先走硬件再转软件的话其实就是新掌握一种程序思想,这个起步的时候稍微麻烦点。但是比反过来,软转硬简单多了!
2.就像上一问内容说的一样,你还是要先学面向对象语言,android有过于太热门了(有点过……

#12


因为特别版是基本的C++教程加上C++编程规范(对长久发展很重要),所以建立买第四版特别版

#13


呵呵,谢谢大侠哈!
引用 12 楼 ruiyulove1314 的回复:
因为特别版是基本的C++教程加上C++编程规范(对长久发展很重要),所以建立买第四版特别版

#14


那现在学c++的话,调试程序的话大部分公司都用visual c++的那个版本?用最新visual c++2010的吗?还是用以前老的visual c++6.0呢?
引用 9 楼 ruiyulove1314 的回复:
1.从事偏硬件的工作打交道的是C,汇编语言,面对的是电路和时序,所以学术上术语称这种开发是面向过程的思想。偏软件主用的是C++(比如QT开发)和JAVA(如android开发),用面向对象的思想。所以先走硬件再转软件的话其实就是新掌握一种程序思想,这个起步的时候稍微麻烦点。但是比反过来,软转硬简单多了!
2.就像上一问内容说的一样,你还是要先学面向对象语言,android有过于太热门了(有点过……