嵌入式学习计划

时间:2021-03-29 18:49:55
相信很多初学者都有这样的疑问:我想学嵌入式,但是应该怎样起步呢?俗话说的好,一个好的计划往往能让你取得更高的效率。因此,我作为过来人,就说一说我的学习流程。当然,只能供大家一个参考,没有最好的学习方法,只有更好的学习方法。当然,我也很希望我这篇博文能够帮助到一些初学者,让他们也给自己定下一个适合自己的学习方法。。      

嵌入式学习流程图

  嵌入式学习计划

 

 

 

 

 


声明:

     在进行该学习计划前我已默认你也基本掌握了C语言,已入门单片机,对数字电路和模拟电路都有一定了解并且能看懂电路图

Linux基础学习:

学习目的:通过该阶段学习,主要学会如何安装Linux,终端使用,VI使用,学会配置Linux系统的网络,掌握常用命令,学会shell编程,了解Linux的文件组织结构,对Linux工作原理有一定了解

参考书目:《鸟哥的私房菜-Linux基础篇》相关内容

使用工具:Vm6.5 Fedora10.0

Linux c编程

     学习目的:通过该阶段的学习,主要学会在Linux字符界面下用gcc进行编程及如何使用gdb进行程序调试,学会Linux c的文件操作,进线程编程,网络编程及Makefile文件的编写

      参考书目:《Linux c语言编程一站式学习》《Linux c编程指南》

                《How to write Makefile》

      参考视频:天嵌开发板配套光盘之中嵌视频1-20课

                国嵌视频:第2阶段(Linux应用程序设计)

      使用工具:编译工具-gcc,调试工具-gdb,编程工具-vi

ARM硬件编程:

通过该阶段的学习知道如何使用Keil4进行2440的裸机编程,了解ARM的体系结构及汇编

参考书目:《ARM嵌入式体系结构与编程》《s3c2440 datasheet》

              《嵌入式Linux应用开发完全手册》第二篇

参考视频:韦东山视频1-8课

使用工具:Jlink s3c2440开发板

使用软件:Keil4 SERRG

嵌入式环境搭建:

通过该阶段的学习主要是知道如何在linux下安装软件包,如何搭建Samba,Ftp,Nfs服务器,如何安装arm-linux-gcc这个编译软件。Windows和linux如何通过samba服务器共享文件以及Linux和Linux之间如何通过nfs共享文件

参考书目:《鸟哥的私房菜-Linux基础篇》相关内容,

                       

系统移植:

通过该阶段学习能够初步理解什么是bootloader,什么是内核,什么是文件系统并且能移植一个系统在2440开发板上成功运行,第一步移植内容为bootloader(u-boot)移植,第二步移植内容为内核移植,第三步移植内容为文件系统移植。

参考书目:《嵌入式Linux应用开发完全手册》第三篇

              天嵌配套光盘之《天嵌科技出品-Linux移植》

参考视频:《嵌入式Linux应用开发完全手册》配套视频9-11课

使用软件:arm-linux-gcc

驱动开发:

   通过该阶段的学习大家能初步了解Linux驱动开发的步骤,了解Linux驱动程序的基本框架并且能成功移植几个最常用驱动程序

     参考书目:《嵌入式Linux应用开发完全手册》第四篇,《Linux设备驱动程序》

     参考视频:《嵌入式Linux应用开发完全手册》配套视频第12课,国嵌视频

备注:由于本人未曾涉及应用程序开发和深入研究过内核,最后两部分学习内容不做计划

 

入门嵌入式必学课程:

         软件类(驱动方向):高等数学,线性代数,电路分析基础,模拟电路,数字电路,单片机原理及应用,计算机组成原理,C语言,数据结构,操作系统,计算机网络原理。

         硬件类(画板方向):高等数学,线性代数,电路分析基础,模拟电路,数字电路,电磁场与电磁波,高频电路,电磁兼容与PCB设计,高速数字电路设计,计算机组成原理,单片机原理及应用。

 

推荐书籍:

         软件类(驱动方向):《ARM体系结构与编程》,《鸟哥的私房菜-Linux基础篇》,《嵌入式Linux应用开发完全手册》,《Linux设备驱动程序》,《深入理解linux内核》

         硬件类:《protel99se多层电路板设计与制作》,《电磁兼容与PCB设计》,《高速数字电路设计》