学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

什么是嵌入式?

嵌入式的定义
百度百科定义如下:

学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
嵌入式开发
【学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么】百度百科定义如下:
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
嵌入式开发是指在嵌入式操作系统下进行开发,软硬件结合,在一定硬件条件下完成的系统化设计和软件研发,需要软硬综合能力 。


嵌入式行业主要做些什么?


我们终究走向岗位,从学到的知识到去见识的领域,再到自身从事的具体工作,都是环环相扣的,我们从这三方面说起
学嵌入式要学什么
说实话,学嵌入式要学的东西太多了,我都不好意思一一举例,步入这个行业快十年了我也不知道细节的要学些什么 。只能根据自己的经验,简简单单聊两句,大概需要掌握以下几点:
硬件控制器电子元器件等等电路设计相关知识硬件通信外设(包含相关的协议)软件编程(包含C/C++/Qt/数据结构/常用算法等)MCU、SOC、CPU外设我画了简单版本的思维导图,当然这里面有很多欠缺的,我只是轻描淡写了一些 , 遗漏了很多,也有些可能不会遇到,总之只是给大家一个概念 , 供大家参考:
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
总之 , 对于刚入行的朋友,我只有一点建议,先打好两个基?。?
电路基?。菏煜な值缏?nbsp;, 能看懂电路,能分析功能 , 能根据电路编程
C语言基?。阂У木ǎ?学的精通,上了系统程序看都看不懂 。
嵌入式的应用领域
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
在外面日常生活中 , 手机、平板电脑、照相机、电子字典、光猫、机顶盒(Set Top Box)、交换机、路由器等等 , 还有仪器仪表、汽车电子、物联网、智能家居、医疗仪器都是典型的嵌入式的应用,几乎贯穿了我们的生活 。大致分为几类:
    军用领域
各种武器控制,如飞机坦克等陆海空各种军用电子装备,雷达、电子对抗军事通信装备,电视剧上出现的各种GPS定位导航等等 。
    消费电子行业
我国各种信息家电产品,大都是采用微处理器/微控制器及嵌入式软件 。
    工业控制行业
各种智能测量仪器仪表、分布式控制系统、工业智能机器人、汽车电子设备等,广泛采用微处理器或者系统级嵌入式计算机 。
    网络应用
2/3/4/5G网络的发展,产生了大量网络基础设施、接入设备、终端设备的市场需求 , 这些设备中大量使用嵌入式系统 。
    其他
这里真的是数不胜数,总之随着万物智能的时代,几乎是生活的方方面面都存在 。
从事的具体工作
嵌入式产品开发是基于产品的功能,从功能需求、提出意见并选择方案、器材选型、电路设计、PCB电路板设计、软件设计、综合调试到样机生产、软硬件综合调试 , 软硬件结合的产品开发 。
所以嵌入式开发需要软硬件都懂的基础要求 , 根据侧重点的不同 , 嵌入式产品开发工作可以有以下分类:
硬件
电路设计:产品原理图的设计,需要对数电模电都比较精通,且熟悉单片机、arm架构及熟练外围电路的使用;基本上会电路设计的都会PCB设计 。PCB电路板的设计:需要熟悉数电、看懂常用模电,对单片机、arm外设了解 , 且具备安规电磁兼容的应用经验 。软件
驱动开发:基于电路图实现产品的驱动开发,需要看懂电路,精通C语言,熟悉arm架构、X86架构及常用外设的使用,熟悉操作系统内核、驱动等 。应用开发:基于操作系统之上的应用程序开发,有一点电路方面知识 , 需要软件编程,熟悉操作系统、数据结构等 。系统开发:基于硬件的uboot移植、内核移植裁剪、根文件系统制作等系统环境搭建等,需要精通C语言,一些汇编知识 。0
5
嵌入式行业到底怎么样呢?


嵌入式和制造业息息相关,我觉得本质上还是计算机系统,从底层软件设计 , 嵌入操作系统优化,应用程序设计和算法开发等等,这些事情 , 在嵌入式都一一需要 。
任何事情都是有相对性的 , 我不劝退也不支持,只是根据目前所处的阶段进行分析,可能以后连自己都不认同自己的观点了 , 仅供大家借鉴 。
与互联网行业对比
我想问这个问题的大都是选择互联网还是嵌入式 。说实在的,互联网总体薪资水平毫无疑问是高于嵌入式行业的,可能起点就比三五年工作经验的嵌入式工程师要高 。
嵌入式就像是雕刻豆腐 , 而互联网就像在砍大树,嵌入式属于重资产,各种成本算起来 , 实际上到员工的工资肯定就少了,互联网属于轻资产,相对来说,流量重要,但是行业也变化的快 。
说完了薪资待遇,肯定想了解这个工资的性价比,觉得嵌入式可能要轻松一些,敲代码的都是工作996,生病icu,但其实多部分是一样的,反正我在深圳,并没有体会到这种巨大的差别 。
领域技能vs业务技能
什么是领域技能?领域技能是不会随着时间变化 , 是不会随着业务场景变化而降低价值的领域知识 。比如,你是一个医生,时时刻刻都是有人生病的,你的技能不会因为时间变化而价值降低 。这就是领域技能 。
业务技能是什么?举个例子 , 有些人只会自己本公司的业务开发 , 比如是自己公司的协议方面开发专家,但是离开了自己的公司,到外面就用不到了 。只追求是在本来框架下,把业务逻辑完成 。这就是领域技能 。
同样 , 互联网行业变化莫测,你掌握的业务可能随着时间的推移而被淘汰 , 而我们的领域技能就很重要 , 任凭世界变化莫测,我凭技能走天下 。
说到这 , 相信大家有点理解我的意思,不在于选择互联网还是嵌入式行业,而是要提升自己的领域技能,做到硬实力闯南走北 。
我身边的几个例子
太多太多相对的例子,是使你无法分辨的 , 孰好孰坏谁又能看得清呢?我只有看看自己身边的人,这样才具有话语权 。
入行近15+年的老员工这位是我在大厂时,我的师傅,技术过硬,为人随和,04年毕业先在周立功干了三年 , 后跳槽 。做项目时,搞单片机的时候,能够立马入手,写个C++的系统框架也是两周搞定,搞Linux里的问题也能很快找到问题,我自己跟着也学到了很多 。
但是技术是一方面,我印象最深的一句话是他说:我的目标是在一家公司待满十年;到今年应该是整整十年了 , 我很不理解,因为我当时还是比较浮躁的,钱少,缺少乐趣或者一些事情,可能就动了念头 。
现在我明白:他是想积淀,厚积薄发,那么同样,在嵌入式行业就是需要这样的积淀与专注 。可能现在我们承受不住一些压力或者有些公司确实是渣渣 , 但是我们持续学习的心态是要不变的 。
五年工作经验的朋友我的一个好朋友,毕业去全志科技,搞Linux开发,大公司吧,待了两年 , 扎扎实实学技术,但是薪水也没涨多少 , 因为一些外部因素的影响 , 公司裁员 , 躲过之后自主离职,与部门经理去了家创业公司 。
三年沉淀,最近也开始分发股票,筹备IPO了,算是在深圳步入了正轨 。但是与同样5年的互联网行业比起来 , 薪水各方面还是差了很多 , 他们毕业两年的时候就差不多是这个水平了 。
但是谁又能说的定?嵌入式行业注重的是实力的沉淀,工作经验增长 , 各方面能力也都在提升,虽然天花板在那里 , 自然的也更稳定一些 。
入行两年的小学弟入行不到俩年 , 跳槽三次 。一次因为裁员,一次因为工作调整跳槽,一次因公司问题选择跳槽 。但就是这么几次跳槽,工资水平已经远超在同一家公司待了两年的了 。
我在想 , 是不是不跳槽真的不会涨工资 , 也许这个行业就是喜欢这样倒挂 。我只能说要是我自己选择,同等实力下 , 我肯定不会选择跳槽这么频繁的 。
总而言之 , 嵌入式行业就是一个需要积累,需要用心的行业,选择哪一个不重要,重要的是兴趣,不要太浮躁,不要太功利心就好 。
难不难是要看你是打算是用什么语言开发,并且你的基础怎么样 。
用c/c++开发还是有一定难度的 。Java语言相对简单些 。这实际是由项目决定的,相对比较底层的应用,直接驱动硬件,单片机的肯定用c 。如果底层硬件有android系统就可以用Java开发 。
至于说到应用,现在比较火的智能家居,物联网,都离不开嵌入式 。
前言由于从事相关工作,所以针对楼主提出的问题 , 我想从以下三个方向来进行阐述,希望能解决有类似困惑的小伙伴的问题:
嵌入式开发如何与生活关联?
嵌入式开发做什么?
嵌入式开发如何入门?
嵌入式开发如何与生活关联?在当今这个世界 , 嵌入式开发与我们的生活息息相关 。比如智能手机 , 谷歌眼镜,苹果手表等随身携带的电子设备都和嵌入式开发有关 。那么,嵌入式开发与这些电子设备是如何关联的呢?
下面,我们就以当今最热门的华为的 P30 Pro 智能手机为例来简单阐述上面这个问题 。我们知道华为的 P30 Pro 智能手机是由硬件和软件组合而成 。硬件就是实实在在看得见摸得着的一些器件,比如电容屏 , 摄像头等 。而软件就是运行在手机内的程序 。
但是,软件是如何与硬件进行交互的?比如:如何开启摄像头,如何关闭屏幕等,所有这些操作都和嵌入式开发有关 。换言之,嵌入式开发就是通过软件来控制硬件,从而才会产生当今一系列高科技的电子设备,间接也让嵌入式开发与我们当今世界产生了密不可分的联系 。
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
嵌入式开发做什么?在上面我们知道,嵌入式开发就是通过软件来控制硬件 。具体到嵌入式开发的工作细节,也就是嵌入式开发主要是做什么的呢?下面我们详细予以具体说明 。
第一步:看电路图
由于我们需要硬件打交道,所以我们日常工作中都会有一块要控制的开发板硬件 。每一块开发板硬件在实际开发中,都会对应一份电路图 。在电路图中,会告诉我们元器件如何与主芯片进行连接的 。这样我们才能知道要控制开发板上的某个元器件 , 需要对应控制芯片的哪个引脚 。
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
图一:开发板
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
图二:电路图
第二步:查看芯片手册
在上一步,我们知道要控制电路板某个元器件,需要找到芯片对应的引脚 。如何控制这个引脚的输出呢?这就需要查看芯片对应的手册 。一般来说,手册大多数都是英文版的,所以要有基本阅读英文的能力 。通过查看芯片手册对应部分,我们就找到了控制这个引脚的方法 。
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
第三步:编写代码
有了第一步和第二步的理论之后,接下来 , 我们就需要编写程序 。然后将编写好的程序烧录到开发板中运行 , 以验证我们程序是否正确 。以上就是嵌入式开发工作的一般日常 。
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
嵌入式开发如何入门?了解嵌入式与生活的关联 , 也了解嵌入式开发的工作日常 。有的小伙伴觉得用嵌入式来控制硬件很酷,想尝试进入这一行 。那么我们就简单来聊聊如何入门嵌入式的话题 。
第一步:熟悉C语言
在软件行业,掌握语言是进入这个行业的第一步,也是最基础的一步 。因为软件工程师的职责就是编写某一种语言代码 。在嵌入式开发岗位中,主要对应的开发语言就是C语言 , 所以一定要掌握好C语言 。
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
第二步:实战51单片机
在基本掌握了C语言之后,接下来,我们就可以买一块带51单片机的开发板来进行上手练习 , 最好配套的开发板有对应的视频教程 。因为若视频教程里讲解的开发板和自己购买的开发板不一样,对于新手来说,难度会增大,也会打击小伙伴自学的自信心 。在淘宝搜索“郭天祥51单片机开发板” , 可买得到开发板和对应视频教程 。
总结以上就是嵌入式入门的基本入门步骤 。师傅领进门,修行在个人,后续的道路还需要小伙伴们继续去探索深造 。如果有困惑 , 也可关注私信我 , 我会尽量帮助大家 。
如果你喜欢文章的观点,记得点赞转发 。如果有不同意见 , 也欢迎大家拍砖留言 。关注我,不定期分享好玩科技知识,带大家一起体会探索科技的那份独有思考和乐趣 。
如果是电子或计算机专业的人 , 相对来说,会比较容易入门;对于零基础、非电子或计算机专业的人有一定难度 。因为嵌入式领域不仅要懂较底层软件(例如操作系统、驱动程序) , 而且必须懂得硬件的工作原理(UART、网卡、IDE、SPI总线、IIC总线、PCI总线等),所以非专业IT人员切入这一领域有一定难度 。嵌入式从业人员需掌握以下几个方面的知识技能:
1、编程语言:具有C、汇编语言等编程经验 。部分嵌入式硬件运行裸机程序即需要通过汇编代码设置栈寄存器后才能跳入第一个C函数入口执行,因此需要一定的汇编能力 。
2、嵌入式实时操作系统:嵌入式系统一般对实时性有一定要求,所以一般运行的是嵌入式实时操作系统或者嵌入式Linux系统 。应该掌握嵌入式实时操作系统相关的基本概念(优先级调度、任务、信号量、互斥锁、条件变量等) , 并熟悉usos、rtthread、freertos等其中一个实时操作系统代码,掌握其提供的基本API函数 , 便于编写相关的应用程序 。嵌入式系统的实时性不是体现在“快”,而是体现在确定性上,很大一般分人对此有一定误解 。
3、体系架构:熟悉x86、ARM、PowerPC、MIPS一个或者多个体系架构,熟悉体系结构的通用寄存器和特殊寄存器、基本的汇编指令(寄存器操作、内存加载/存储操作等)、ABI规范(二进制兼容接口、规定变量大小、寄存器用法等、如哪些寄存器作为函数参数、哪个寄存器作为栈寄存器等)、中断架构、异常机制、MMU和集成的硬件设备 。
4、嵌入式开发环境:熟悉嵌入式交叉开发环境,包括交叉工具链、Makefile、GDB调试器等 。
5、驱动开发:嵌入式系统一般是定制系统,很多硬件没有现成的驱动,所以一般会涉及自己开发设备驱动 。因此要求嵌入式系统人员能看懂硬件的datasheet数据手册,明白相关寄存器功能,掌握一定的驱动开发技巧 。
6、调试能力:嵌入式系统调试手段有限,包括prink打印、GDB交叉调试和硬件调试器 , 一般在未运行操作系统的情况下只能借助打印或者硬件调试器,所以一般最先开发的驱动为UART 。但是打印调试效率低下,一般会借助硬件调试器,所以应该熟悉掌握一款硬件调试器的使用和调试方法 。
不难,生活中随处可见嵌入式 , 微波炉,冰箱 。空调
按照你的题目,我理解你已经认可了嵌入式开发的前景,基于这个认可,你希望在嵌入式这个领域做一些学习和研究,以此作为生存能力 。但现阶段你应该还处于较为迷茫的阶段 , 只知道想做 , 不知道该怎么做,或者说不知道怎么入门 。
如果我以上的判断正确,那么可以参考一下我的建议 。
我是一个近10年的嵌入式软件工程师 , 从内核到应用都搞,也都算有点成果,但驱动以下的,比如硬件和操作系统中我不擅长的领域 , 也都所知不多 。
首先咱们说一下业内对于嵌入式开发的一些定位 。基本来说,嵌入式开发会有:应用层 , 驱动层,操作系统层和硬件层 。一些做嵌入式设备的公司的研发部门划分 , 基本也都是这样的 。
从下往上依次简单的聊聊 。
硬件层不用多说,画板子焊电路 , 这个我也不专业,不多说别的,但据我了解基本这部分都是科班出身,跨专业很少能做到这部分来 。
操作系统层并不一定会有专门的研发人员需要,因为现在的嵌入式设备来说,一般都是直接裁剪一下linux内核就用了,由于Linux本身的模块化和可用性都很高,因此很多公司基本都是一个人兼职负责这部分 。当然大司还是会专门有人研究内核,修改内核,甚至仿制内核做自己的内核的,但小司基本很少见 。
然后就是市面上,或者说也是招聘市场上最常见的两类软件相关的嵌入式开发人员了 。驱动开发是每一个新硬件到来之后,操作系统已经搭载成功之后,第一个要做的功能 。最简单的例子,这个设备的HDMI是不是标准的,需要单独写个驱动支持吗,类似的硬件需求都是这时候做的 。
再上面一层就是应用层了 。应用层开始做之前,嵌入式设备其实已经具备了开发应用软件所需要的所有环境,这时候你已经完全可以运行你的hello程序了 。
再举一个最简单的例子,比如你要做一个机顶盒 , 那么这时候密码到手的就是一块板子,具有cable线接口等必要的信号来源,具有音视频编解码芯片等硬件支持,具有VGA或者HDMI等输出端的驱动支持 。这时候应用要做的,是怎么样接流 , 分析流,流的业务处理,展示给客户 。
可见,一旦用户可见了,基本产品也就成型了,开发过程也就进入尾声,剩下的更多的就是改bug了 。
接下来说一下做嵌入式的一些技能要求 。
其实每一个层次,对于技能的要求并不都相同 , 我所了解的也不够全面,但我相信比大部分的人还是要多一点的,^_^
对于操作系统层来说,初学者如果知道内核的配置和裁剪方式,基本就是一个很好的加分项了,除非你专业就学这个研究这个,否则没有必要直接插入到这个领域,因为基础更重要,而且内核代码真的很牛逼,不太好看懂 。世界顶尖大牛的代码功力,真的叹为观止 。
对于驱动来说,电子,自动化,软件工程等一些专业 , 都可以涉猎,但更建议偏硬件一点的专业来主攻这个方向,因为驱动是会直接跟硬件打交道的 。开发语言毫无疑问是C喽 。
应用层的话,现在伴随着嵌入式硬件的成本下降 , 硬件性能越来越好,早就不在是C语言一家独大了,很多嵌入式设备会选用C++ JAVA,甚至我还见过一个加密设备由于客户要的着急 , 直接用Python写的 。这一层也是跨专业研发最多的了 。
所以,我觉得,嵌入式伴随着物联网的大爆发,会迎来新一轮的红利 , 入行还是很不错的,祝你好运 , 哈哈 。
嵌入式系统现在发展得很迅速,从不知名到现在已经广泛进入我们的生活中,他的应用前景是非常广泛的,人们将会无时无处不接触到嵌入式产品,从家里的洗衣机、电冰箱 , 到作为交通工具的自行车、小汽车,到办公室里的远程会议系统等等 。在家中、办公室、公共场所,人们可能会使用数十片甚至更多这样的嵌入式无线电芯片 , 将一些电子信息设备甚至电气设备构成无线网络;在车上、旅途中,人们利用这样的嵌入式无线电芯片可以实现远程办公、远程遥控,真正实现把网络随身携带 。?在这里我就举几个生活实例 , 让你更加了解一下嵌入式系统 。嵌入式系统现在发展得很迅速,从不知名到现在已经广泛进入我们的生活中 , 他的应用前景是非常广泛的,人们将会无时无处不接触到嵌入式产品,从家里的洗衣机、电冰箱,到作为交通工具的自行车、小汽车,到办公室里的远程会议系统等等 。在家中、办公室、公共场所,人们可能会使用数十片甚至更多这样的嵌入式无线电芯片 , 将一些电子信息设备甚至电气设备构成无线网络;在车上、旅途中,人们利用这样的嵌入式无线电芯片可以实现远程办公、远程遥控,真正实现把网络随身携带 。?在这里我就举几个生活实例,让你更加了解一下嵌入式系统 。


学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图


在举例之前,我们先来了解一下嵌入式系统到底是什么呢? 在一般的解释中都是这样的:以应用为中心、以计算机技术为基础、软硬件可裁剪 , 对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统 。其实简单的了解就是这几个点:软硬件,可裁剪,专用,对各种功能有要求的一个计算机系统 。
1 嵌入式智能家居系统
智能家居让用户采用更方便的手段来管理家庭设备,比如,通过无线遥控器、电话、互联网 网或者语音识别控制家用设备,根据场景设定设备动作 , 使多个设备形成连接 动 。智能家居内的各种设备相互间可以通讯,不需要用户指挥也能根据不同的 状态互动运行,从而在最大程度上给用户提供高效、便利、舒适与安全的居住 环境和工作环境 。
智能家居是信息时代的产物,以计算机和网络技术为核心,渗透并应用到建筑行业 , 它的发展趋向于将建筑艺术与信息技术完美地结合,形成既有安全、舒适和高效等特性,又能将科学技术与文化艺术相互融合的综合体 。


学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图


2 交通运输管理
在车辆导航、流量控制、信息监测与汽车服务方面 , 嵌入式系统技术已经获得了广泛的应用,内嵌GPS模块,GSM模块的移动定位终端已经在各种运输行业获得了成功的使用 。目前GPS设备已经从尖端产品进入了普通百姓的家庭,只需要几千元 , 就可以随时随地找到你的位置 。?


学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图


3 家庭智能管理系统
水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高,更准确和更安全的性能 。?
4 POS网络及电子商务
公共交通无接触智能卡发行系统,公共电话卡发行系统 , 自动售货机,各种智能ATM终端将全面走入人们的生活 。? 4.?环境工程与自然:水文资料实时监测,防洪体系及水土质量监测、堤坝安全,地震监测网,实时气象信息网 , 水源和空气污染监测 。在很多环境恶劣,地况复杂的地区,嵌入式系统将实现无人监测 。?


学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图


5 机器人
嵌入式芯片的发展将使机器人在微型化 , 高智能方面的优势更加明显,同时会大幅度降低机器人的价格,使其在工业领域和服务领域获得更广泛的应用 。?
6 工业控制
各种智能测量仪表、数控装置、可编程控制器、控制机、分布式控制系统、现场总线仪表及控制系统、工业机器人、机电一体化机械设备、汽车电子设备等,广泛采用微处理器/控制器芯片级、标准总线的模板级及系统嵌入式计算机 。相对于其他的领域,机电产品可以说是嵌入式系统应用最典型最广泛的领域之一 。从最初的单片机到现在的工控机、SOC在各种机电产品中均有着巨大的市场 。工业设备是机电产品中最大的一类 , 在目前的工业控制设备中,工控机的使用非常广泛 , 这些工控机一般采用的是工业级的处理器和各种设备,其中以X86的MPU最多 。工控的要求往往较高,需要各种各样的设备接口,除了进行实时控制 , 还须将设备状态,传感器的信息等在显示屏上实时显示 。这些要求8位的单片机是无法满足的,以前多数使用16位 。


学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图


7 军用
由于军用PDA需要将卫星定位、无线通信、图像摄取传送等等功能集于一体,对于高科技战争中各作战个体至关重要,国外一些国家早已从事相关技术的研究和开发,并将此类产品装备到特定的作战场合 。军用PDA产品根据不同的应用场合有不同的功能要求,涉及多种当前最先进的技术,如嵌入式CPU应用
除了军用PDA以外还有其他各种武器控制(火炮控制、导弹控制、智能炸弹制导引爆装置)、坦克、舰艇、轰炸机等陆海空各种军用电子装备,雷达、电子对抗军事通信装备,野战指挥作战用各种专用设备等都是应用了嵌入式系统 。
嵌入式系统在生活中的例子不只这些,还有很多,由此可见嵌入式系统在我们生活中发挥着很重要的作用 。选择嵌入式还是一个很不错的选择哦 。
看你自己的理解能力和毅力,我一个同事以前做测试的,也就大学玩过8051,arm基础基本没有,后来靠自己慢慢也是成长起来,至于生活中能接触到的嘛
小家电:
什么只能电饭锅
破壁机
豆浆机
油烟机
电磁炉
工业领域:
电网智能集抄系统 , 路灯系统、能耗管理系统
医疗方面:
什么额温枪呀 , 什么呼吸机、血糖仪
等等太多了
难不难?要看你学成什么样了?入门容易,要成为大神就难了 。如果你只要简单的控制个什么东西啊,只是使用一下 。那容易 。
如果你要成为软硬兼通,上能写多平台上位机,下能电路设计,画板,打板,焊板一气呵成 。中间还能嵌入汇编以提高代码效率 。那就难了 。
至于能接触到的设备,emmmm……你就是使用它提出这个问题的 。

秒懂知识为您整理更多相关内容。
回答第一个问题:难易是与个人能力有关的 。嵌入式开发有嵌入式硬件开发和嵌入式软件开发,嵌入式软件开发中又包括嵌入式应用开发工程师和嵌入式驱动开发工程师 。目前嵌入式开发涉及到的知识有模电 , 数电,电路分析与设计,C语言,汇编语言,更深一点的有数据结构(主要是链表操作) linux操作系统,linux多进程,多线程 , 文件操作,linux驱动框架,数据库操作等 。目前比较多的嵌入式软件开发主要是做stm32研发 。可以从单片机->stm32->linux应用->linux驱动 路线学习 , 做嵌入式实践性很强,所以最好有开发版配套学习 。踏踏实实一步一个脚印学习 。回答第二个问题:嵌入式应用很广泛,生活中比如家里的电饭锅,空调,冰箱,智能插座等 区别就是里面是用单片机开发还是stm32开发亦或者是用linux开发 。选定一个自己感兴趣的方向,坚持下去 ,定能有所收货 。
感谢评论 , 转发 。更多精彩内容可关注本头条号:嵌入式软硬件开发 。感谢大家 。相互交流,共同进步 。


学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
1.什么是嵌入式系统嵌入式系统已经渗透到人们生活的方方面面 。往大的说 , 军事,通信,运输,金融,医疗,气象,农业等众多领域的监控系统 , 往小的说,就是基于单片机的应用,如常见的LED显示,空调和洗衣机等 。而恰恰由于这种宽泛的应用,使得“嵌入式系统”更加难于明确定义 。应该说 , 一切智能的应用,都是在某种程度上的嵌入式系统 。包括华为的5G!总体上讲,嵌入式是相对于PC机应该言的 , 除了PC机,基本都属于嵌入式 。
2.嵌入式系统开发正因为嵌入式系统应用广泛,因此 , 与其相对应的硬件型号和软件开发工具也非常多 , 有些产品甚至要用专门的软件进行开发 。主要目前市场的主流单片机有PIC--用MPLAB开发,STM32/LPC/Nordic等常见的,可以用KEIL/IAR等付费软件开发,也可以用GNU+Cygwin+文本编辑器等免费软件进行开发 。具体还可以进一步细分为
1.无操作系统
此时 , 整个应用程序就处理一个死循环内 , 单片机根据各任务、函数状态逐个进行运行 。除了中断之外 , 任务/函数的优先级不好控制 。
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
2.带操作系统
这个系统是适用到嵌入式单片机的,占用空间很少,运行效率也很高,包含了许多传统操作系统的特征,包括任务管理、任务间通讯、同步与相互排斥、中断支持、内存管理等功能 。其中比较著名的有VxWorks、FreeRTOS等 。特别是FreeRTOS是免费的,可以直接下载,很多知名芯片应用系统也是基于它修改的 , 比如现在很火的ESP无线网络应用芯片就是基于此系统开发的 。
3.学嵌入式难不难从前面的介绍可以,嵌入式是很宽泛的概念,具体到个人,要学什么,取决于你想从事哪个行业,根据这个行业应用中要涉及的内容来选型 。
对于初学者而言,完全可以从目前的市场主流开始入手 。比如基于Cortex-M内核的STM32 , 及普通的STM8,或者国内特别流行的51系列,网上资源非常丰富 。只要下肯功夫,就不难 。
学嵌入式开发难不难生活中能接触到的嵌入式开发都有什么

文章插图
4.给初学者的建议学以致用,在应用中学,这样学的快 。学会一个片子,再学别的片子就简单了 。买一套开发工具 , 按照例子一个一个的编写代码,一定要自己写,百看不如一写!从简单的按键、中断、串口开始学 , 逐渐总结提高 。调试的过程能发现和学习很多技能 。