什么是嵌入式系统,嵌入式点歌系统

嵌入式系统的定义很多,这也是困扰嵌入式系统学习的一个因素。多年和嵌入式设备及开发人员的接触,提出了嵌入式系统的简单定义:嵌入式系统是嵌入式计算机系统的简称,这个定义突出嵌入式计算机系统和普通计算机系统的共性。现在随着边缘计算的越来越火热,嵌入式开发也会逐渐成为新型科技市场的热门领域,虽然这是一个几十年就存在的技术和岗位。

如果题主真想入坑想学好嵌入式我查询了一些资料供您参考一下,注定是一场攻坚之旅,成为一位合格厉害的嵌入式开发工程师需要逐级掌握以下这些开发知识(升级之路):

第一阶段:打基础阶段即初级工程师或工程师助理

  1.电路知识 首先你要学习电路、模电,认识电阻、电容、三极管,基础器件,放大电路、集成运放、时序电路基本电路能看懂,不然看电路图一定是云里雾里,也就无法进行后续的工作。硬件产品的设计实现,包括器件选型、原理图和PCB设计都需要过硬的电路基础。

  2.C语言

  C语言是嵌入式开发中最重要的编程语言,要对这门语言有深入的理解,毕竟不仅仅要会写程序,看懂他人程序也很重要。最基本的数据类型、数组、指针、结构体,链表、文件操作等都要会,掌握基本语法和语句,不然你要能区分指针数组与数组指针吗?

  3.单片机

单片机入门相对简单,通过单片机的学习可以熟悉单片机的硬件结构,包括I/O口、AD转换、通信(串口、并口、I2C、CAN、USB、以太网、ZigBee技术等)、显示(LED、LCD等)、控制(PWM等控制技术)、数据处理等,学好单片机可以为采用嵌入式系统奠定良好的基础。

  4Linux基础

  Linux的源码和架构都是开放的,在嵌入式系统中应用尤为广泛,学习Linux对于系统的开发会有很大的帮助。详细了解Linux下的目录结构、基本命令、编辑器、编译器、调试器,Shell Makefile脚本编写等知识,以及嵌入式开发环境的搭建。

第二阶段:相当于中级工程师需要掌握的技术

  1.Linux编程

  系统编程可以直接跟内核及核心系统程序库对话,深入了解Linux内核。掌握Linux系统编程主要提升对Linux应用开发的理解和代码调试的能力。由于网络应用开发越来越广泛,通过Linux网络发展、TCP/IP协议、socket编程、TCP网络编程、UDP网络编程、Web编程开发等方面入手,可以全面了解Linux网络应用程序开发。

  2数据结构与算法

数据结构及算法在嵌入式底层驱动、通信协议及各种引擎开发中得到了广泛的应用,语言编译要使用栈、散列表以及语法树;操作系统中用队列、存储管理表及目录树等;数据库系统运用线型表、多链表及索引表进行数据管理等等,对其掌握的好坏直接影响程序的效率、简洁及健壮性。

  3.QT、DSP、FPGA

  Linux没有自己界面,学习QT编程可以创建艺术级的图形用户界面所需的所有功能,从而更好的实现人机交互控制。

第三阶段:高级工程师

  学习了前两个阶段的知识,你已经可以胜任大部分嵌入式工作了,但是距离大咖仍有一定的差距,其实已经到了第二个分水岭。这部分更多涉及系统层面,没有全方位的知识将会很难下手。

  1操作系统平台开发

除了Linux外,嵌入式操作系统还有ARM、WINCE、uClinux等,不同的系统有着不同的使用环境,你需要学习掌握系统的各个模块,为底层平台搭建做好准备

  2驱动开发

驱动程序设计是嵌入式Linux开发工作中非常重要的一部分。不仅要熟悉Linux的内核机制、驱动程序与用户级应用程序的接口,熟悉ARM Cortex处理器各资源、掌握Linux设备驱动原理框架,以及工程中常见Linux高级字符设备、块设备、网络设备、USB设备的驱动开发。

什么是嵌入式系统,嵌入式点歌系统图1

嵌入式分为嵌入式硬件和嵌入式软件。所谓嵌入式,就是指软件在特定的嵌入式硬件开发完成后,最后被固化在此硬件平台中,当硬件启动后,自动执行软件,完成特定的功能。

嵌入式系统启动后,一般是没有人机交互界面的,但会留有调试接口,如RS232串口、网口,可以通过终端工具检测软件运行状态、下发控制指令等。

硬件工程师

什么是嵌入式系统,嵌入式点歌系统图2

嵌入式硬件工程师,主要掌握的是基于CPU设计计算主板的电路知识。所以模电、数电、EDA知识是这类工程师的基本功!除此之外,熟悉常用通信协议和总线,如CAN、SPI、I2C、PCIe、DDR,也是硬件工程师应该掌握的技能。

软件工程师

嵌入式软件工程师,编程语言、数据结构是其基本功,除此之外,还应该熟练掌握以下技能:

  1. 掌握多线程、多进程编程技术,理解各种线程同步机制,如临界保护、同步信号。知晓进程间通信技术,如共享内存、管道、套接字编程技术;
  2. 了解常见外设作用,如CPU、DDR、SDRAM、FLASH、串口、网口等;
  3. 了解常见总线或通信协议概念,如数据总线、地址总线、CAN总线、I2C总线、SPI总线等;
  4. 理解基于寄存器编程概念,也就是硬件驱动程序实现原理。无论什么硬件,不管函数接口如何封装,其内部一定是对硬件各个寄存器的操作;

嵌入式编程由于受限于硬件资源的大小,所以在内存使用上并不像桌面软件那么灵活。比如,在windows下编程,函数中的数组变量可以分配很大的内存,这是因为其栈空间默认很大。但是在嵌入式环境中,最好把这些内存大的变量定义到外部存储硬件中,如SDRAM或DDR,这是因为嵌入式处理器的片内RAM都很小!

从这里可以看出,嵌入式软件工程师与其他类型软件工程师有一个很大的不同点,就是需要掌握很多硬件知识,这是由嵌入式开发的特点来决定的。

什么是嵌入式系统,嵌入式点歌系统图3

本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:dandanxi6@qq.com

(0)
上一篇 2023-08-02 17:02
下一篇 2023-08-03 10:02

相关推荐

  • 厨房橱柜改造翻车

    有没有人和我一样,在橱柜装修的时候,还是一头雾水的状态? 我身边就有很多朋友之前在做橱柜的时候,压根儿没往心里去,都是师傅怎么说,他怎么做,到入住后才发现,踩了太多坑,翻车翻得很彻…

    2023-08-21
  • 用清水拖地等于白拖,教你几个小妙招,拖地又快又干净

    #头条创作挑战赛#大家好,我是萍萍,每天分享一个生活小妙招。 拖地对大多数人来说是很头疼的一件事,每天不是拖地就是在拖地的路上,想要把房间打扫干干净净,可是要如何才会快速轻松地做到…

    2023-04-17
  • 一个老师傅对装修新手们5条建议

    对于装修这件事,想必绝大多数人的初体验都是在不停地踩坑。装修行业是信息差非常明显的行业。倘若最开始我们懂得的装修知识多一些,后期在装修道路上踩坑肯定就能够少一些。在这里跟大家分享一…

    2023-09-12
  • 装修知识大全 200条家装常识

    装修,作为一种居所装修装饰的新理念,在20世纪80年代末在中国诞生。柠树装修即装潢,一般指居室内固定部分的后加工,如地面墙面天棚门窗的装修;室内设计中装修、装饰是不可分的。 一、装…

    2023-10-08
  • 免费手工墙绘,卡通逼真墙绘

    这是我们讲述的第253位真人的故事 我叫刘志成@hello刘小备,1995年出生的云南人。 我从小聪明伶俐,却因迷恋街舞与理想大学失之交臂。大学时,不喜欢调剂的专业,不到半年愤然退…

    2023-11-21
  • 集成灶使用有什么注意事项

    1、使用前先看看火盖有没有放好,旋钮开关是不是显示关闭状态,每一次使用完集成灶之后都必须要把气源阀门关好; 2、如果你使用的是脉冲打火燃气灶,在出现间断打火时,可以更换电池,继续保…

    2023-06-08
  • 实木地板选购技巧有哪些

    相信很多业主在装修选购材料的时候都比较茫然,市面上材料种类以及品牌有很多,到底哪种比较好呢?今天诸暨良工装饰装修师傅就给大家说说实木地板选购技巧有哪些,一起来看看。 实木地板选购技…

    2023-05-05
  • pe保护膜的详细介绍建议收藏

    01 关于PE保护膜 PE,全名为Polyethylene,是结构最简单的高分子有机化合物,当今世界应用最广泛的高分子材料保护膜,以特殊聚乙烯(PE)塑料薄膜为基材聚合而成,根据密…

    2023-02-22
  • 硅藻泥使用五年后的真实感受

    硅藻泥作为家装涂料市场上的新生产品,近几年很受欢迎。 小能手家里装修时也是用的硅藻泥,因为当时就是被它的取材天然,造型立体有肌理感以及环保所吸引,而且它不像普通装修完的房子要空置通…

    2023-03-03
  • 灯罩的材质有哪些,灯具罩子一般什么材质

    我们在购买灯饰时会发现每一盏灯具的外面都会有一层灯罩作装饰,而且不同材质的灯罩所起到的装饰作用也不一样。下面,装修网就来和大家说说灯罩材质有哪些? 一、灯罩材质有哪些? 1、布艺灯…

    2023-01-12