嵌入式的定义 以应用为中心、以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 说白了就是先设计硬件,然后根据需求编写能在该硬件上运行的软件,就成了所谓的“智能硬件”。 一些前沿的嵌入式产品: 大疆四轴飞行器,可应用在高空拍摄、军事侦查、高空作业、自动巡逻、农业工作、矿业勘测、地形测绘等方面。 天猫精灵智能音响,可进行语音识别、对话交互,应用与娱乐、生活、购物、智能家具控制等方面,属于新一代音箱。
通过深度学习、神经网络等算法,实现“百度大脑”,具有自学习、自训练能力,如最强大脑的小度机器人。
自动驾驶是一个前沿的科技,在我国还没本真正实施,不仅是技术方面,它还得得到政府支持和认同。
扫地机器人,能够自动巡逻,自动绘制室内地图,自动避障,自动清洁地面,还你一个干净的环境。
智能手环可显示微信、来电等消息内容,振动闹钟,心率计算,步数统计,实时运动数据查询,睡眠质量监测等。
嵌入式工程师在企业的工作内容嵌入式软件开发具体可以分三类: 嵌入式驱动工程师:编写和移植各种芯片驱动(如音频芯片),优化硬件设备驱动(如温湿度传感器),得精通各种硬件接口协议(如I2C协议)、系统调度、信号量、锁机制等等,开发难度最大。 该类开发者一般是软硬件综合型人才,一般的嵌入式驱动工程师指Linux上的驱动开发工程师,需要精通Linux驱动框架(platform框架、input子系统框架等),结合芯片本身去编写驱动,驱动的好坏很大程度上决定一个产品的好坏。业界对驱动人才的定义是三年才算入门,可见此门槛之高。 嵌入式系统工程师:主要是编写固件,根据不同平台移植操作系统,根据应用场景来优化系统,需要熟悉整个操作系统组成与调度,对固件的稳定性高求很高,如果系统不稳定,驱动和应用也是白做的。 嵌入式应用工程师:编写业务逻辑程序,调用驱动工程师提供的接口控制设备,软件开发过程所涉内容范围非常广,主要使用C语言开发,但经常会涉及C++、Java、python、JavaScript、PHP等各类语言以及各种脚本语言、数据库、前端后台、各种通讯协议、甚至一些从来没听过的协议或概念。
最后有一个经验分享给年轻人:无论哪种语言,程序代码只是一个简单的工具,最后真正留下的只有原理、协议、框架、思维。
|