物联网 嵌入式(物联网嵌入式开发实战)
作为除PC端外的另一种系统,嵌入式系统应用领域极其广泛,广泛到单片机、PLC、FPGA+CPLD、ARM+Linux实际上都属于嵌入式范畴,嵌入式主要内容包括linux系统,C语言开发,数据库等。
什么是嵌入式技术
嵌入式技术是以应用为中心,以计算机技术为基础的系统技术,把软件直接烧录在硬件里,而不是安装在外部储存介质上。即在已有的硬件上移植操作系统,让操作系统去管理软硬件资源,使软硬件耦合度降低,在操作系统之上做上层应用开发,在操作系统之下做底层开发。
嵌入式软件
嵌入式使产品更加智能,跑更多的软件。嵌入式软件是结合操作系统做的开发,而非嵌入式软件是裸机开发(没有跑操作系统)。判断是不是嵌入式产品,看产品中有没有跑操作系统,在各行各业都有不同类型的操作系统,应用非常广泛,但是其作用都为隔离软硬件。
单片机开发
单片机开发是传统开发,开发流程为先看原理图,然后写代码,最后将代码下载到开发板中,即由软件和硬件两大元素组成,熟悉硬件的工作原理再去写软件,将写好的软件烧录到硬件中,由软件去控制硬件工作(软件即代码,底层的开发板即硬件)。
缺点:
首先软件和硬件的耦合度高,软件移植性差(适配平台能力差),运行效率低,功耗高;在开发人员能力要求方面传统开发工程师要软硬兼顾,相对于团队合作,其开发效率低,工程师精力有限,很难顾全局,用户体验感降低。嵌入式开发
嵌入式开发是在软件和硬件中间移植入操作系统。操作系统可以管理软件资源和硬件资源,实现软件和硬件之间的隔离,例如想要运行硬件中的摄像头,先让软件向操作系统发出相应的指令,由操作系统去控制硬件,硬件将数据返回给操作系统,操作系统再将数据返回给软件,这样我们在开发软件时就不需要去了解硬件的工作原理和构造,只要操作系统不发生变化,硬件的改变就不会影响到软件。
优点:软件移植性好(适配平台能力强),开发人员能力划分更清晰,操作系统实现了多任务机制、提供了丰富的网络协议、提供了开源软件和库。
缺点:操作系统升级硬件成本会提高。
嵌入式开发技能要求
1)嵌入式上层应用软件开发:
精通一门语言;熟悉一款操作系统(会看说明书);数据结构/算法;2)嵌入式底层系统软件开发:
精通C语言(所有的操作系统内核都是有C+汇编开发的);理解操作系统的实现(会使用,会添加/修改功能);熟悉硬件的工作原理(CPU:stm32+64位,SPI,IIC,蓝牙,wifi物联网,摄像头);熟悉汇编;嵌入式各个方向
嵌入式(ARM+Linux)
方向:
★ 高端智能硬件(平板、手机、机顶盒)
★ 工业机器人
★ 物联网(网关)
技能:
Ø C语言、数据结构
Ø 嵌入式Linux下文件I/O、Linux并发程序设计你该这么学、Linux网络编程
Ø ARM体系结构及接口技术、嵌入式系统移植、嵌入式内核及驱动开发高级
嵌入式(FPGA+CPLD)
互联网小常识:标准分类的IP地址由网络号和主机号组成,共32位,采用点分十进制的方法表示。
方向:
★ 通信产品(基站、大型交换机、网关)
★ 军工产品(导弹、火箭)
★ 视频(视频流、图像处理)
互联网小常识:由于Winmail邮件服务器支持基于Web方式的访问和管理,因此在安装邮件服务器软件前要安装IIS.
技能:
Ø vhdl和verilog编程语言
Ø Altera FPGA设计
Ø Xilinx FPGA设计
嵌入式(单片机)
方向:
★ 智能硬件(无人机、智能小家电)
★ 物联网(无线传输、智能传感器)
技能:
Ø C语言、数据结构
Ø STM8/STM32/MSP430单片机开发
Ø Ucos/FreeRTOS嵌入式操作系统移植
Ø 电子电路设计
嵌入式(PLC)
方向:
★ 各个方向知识体系
技能:
Ø 西门子/三菱/施耐德PLC程序开发
Ø 工业传感器、伺服系统、变频器应用
Ø 工业总线通信协议
互联网小常识:常用的服务有:DNS服务、DHCP服务、WWW服务、FTP文件传输服务、E-mail电子邮件服务。
免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186