厚德载物

爱喝茶的家伙

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

从事嵌入式系统的所需要掌握的知识比较广泛,具体分类如下:

1.计算机技术基础

  编程语言主要是 C和 C++, GUI程序则可以考虑Qt;数据库主要是 SQLite和MySQL;基础知识主要是数据结构与算法、数字信号处理和计算机网络。

2.系统硬件层

  PCB设计软件主要是KiCAD和Altium Designer,基础知识包括电路/PCB设计和ARM、DSP芯片架构和外设。 

3.硬件抽象层/中间件

  通用设备接口及协议包括USB、TCP/IP、 SPI和I2C等。

4.系统软件层

  文件系统包括FAT等,GUI包括STMWin等,实时操作系统包括FreeRTOS和RTEMS等,非实时操作系统包括Linux和WinCE等。

   

总结:

   1)从事嵌入式系统必须有计算机科学基础和算法基础,由于它的涵盖面很广,个人需要结合自己的岗位和行业选定一个制高点,比如linux驱动、电机驱动、图像识别等;

   2)从事嵌入式系统必须有电路和PCB设计基础,要熟悉一门EDA软件的使用比如KiCad;

   3)由于嵌入式系统兼有软件、硬件和系统集成,在开发过程中一定要高度重视原型的制作,可以简化问题的复杂性;

   4)由于linux系统很复杂再加上嵌入式自身的复杂性,没有基础不要轻易尝试嵌入式Linux,可以从Linux系统裁剪编译移植、Linux驱动编写、Linux系统编程三个方面逐步深入,总之Linux是个大系统但是我们要简化它的使用,比如先使用没有MMU的ucLinux。

posted on 2018-08-08 14:44  剑胆琴心2015  阅读(222)  评论(0编辑  收藏  举报