1.基本简介
嵌入式开发,对于初学者而言,一般会从简单的C语言的基本语法使用开始,包括一个运行在嵌入式实体硬件上的软件延时。然后就会依次做如下的工作:
- 调试一些基本的外围,包括,串口,IIC,SPI,USB,SDIO,CAN,网络模块等等。在这个阶段,一些有自主意识的开发者,就会自己去学习硬件知识,画原理图,发板,焊接等。
- 做一些有实时操作系统的项目,使用比如ucosiii,freertos,rt-thread等,在这个阶段会去实际操作nand flash 、SDRAM等大容量易失非易失器件,并深入了解它们。
- 基于对应用上的深入理解,而必须要去研究一些更底层的内容,也就是一些软实现上。这个就是下面要说的研究方向。
- 其次,就可以更容易的去理解linux,android等,学习掌握其中的架构,设计原理,以及怎么将其精华用到后续的项目上。
- 最后,可以随心所欲的参与到一些的IOT上,android things,NB-IOT,Lora,MQTT等等。
2.研究方向
这个覆盖几大基本方向,包括,内存管理,文件系统,图形界面,操作系统,shell交互,网络等等。
其中,shell交互,需要包括虚拟机等相应知识。