Embedded Software Primer learning route

Embedded Software Engineer Learning Path

  1, to lay the foundation of embedded software programming

  This phase focuses lay the foundation for embedded software programming, including the application of basic learning Linux system, Linux is commonly used commands, C language programming basics, common data structures.

  In particular C language understanding and application of the pointer. The main purpose of this stage is to learn programming languages, development environments, and develop their own programming thinking, and lay a good foundation for further learning embedded development. This phase embedded learning books recommended as follows: "C Programming Language", "C language core technology", "data structure and algorithm analysis --C language to describe", "C and pointer", "C traps and defects." , "C ++ Primer"

  

 

  2, learning ARM architecture Programming System

  This stage is the real embedded programming, first of all we have to choose an embedded CPU and an embedded development platform, currently the most widely used ARM embedded CPU, the focus of this stage is to learn the bare metal programming embedded CPU, familiar interrupt, hardware work principle of common embedded peripherals timers, serial port, NAND FLASH, network controllers, LCD screen, touch screen, as well as how to use the C programming language to control the hardware. This stage in addition to learning to hardware programming, also need to learn the knowledge of embedded hardware, but for embedded software engineers is concerned, focusing on the principle of learning hardware, the hardware on the basis of master works on the hardware programming control. This and hardware engineers to learn the focus is different. This phase corresponds to the school's courses include analog circuits, digital circuits, computer theory and SCM. This phase focused on is to look at the CPU chip manuals, reference books are also translated most of the chip manual. Recommended reference books as follows: "ARM embedded system development -

  Software design and optimization "," ARM processor-based development and design development explain ARM Cortex-A8 processor. "

  

 

  3, learning to build embedded systems

  This phase of learning to build an embedded system with an operating system, including the system boot process, workflow Bootloader compiler UBOOT of cutting and transplantation, embedded Linux kernel cutting, transplant and compiler, embedded root file customized systems, programming BootLoader, kernel and root file system. The main purpose of this phase is to master the process of building and programming of embedded systems with the operating system, and there is full understanding of the overall configuration of embedded system software for embedded applications, and we are going to learn to lay a solid-driven development The basics. This phase of the recommended books as follows: "Building Embedded Linux kernel software system real"

  

 

  4, learning embedded Linux application development

  This phase of learning the upper embedded Linux application development, including Linux-based multi-process, multi-threaded, network, file and directory and QT programming. Master the technology application development embedded Linux environment. This phase has recommended books: "UNIX Advanced Programming Environment", "Unix Network Programming", "Qt Creator Getting Started," "proficient Qt4 Programming"

  

 

  5, learning embedded Linux driver development

  This phase of learning the underlying embedded Linux device driver development and design, including the commonly used character device driver, a block device driver, LCD driver devices, touch screen device drivers and core driver technology development. This phase has recommended reference books: "Linux Device Drivers", "Linux device driver development explain"

  

 

  6, to complete a comprehensive project

  After the embedded technology the key is the combination of theory and practice, to be able to apply their knowledge, complete knowledge of all of the above stages of learning, in the end there is not learned, will not use, can apply their knowledge to solve actual development the problem, we need to complete a comprehensive embedded training programs, such as: aircraft based on embedded Linux platform based on intelligent robots and other embedded Linux platform to achieve, a comprehensive application of these projects are in development of embedded applications drive and QT development technologies.

  These are embedded learning route I suggested more systematic. After learning the system and can be more flexible application of knowledge, embedded basically even a beginning, with embedded R & D capabilities of the enterprise project, this time to apply for corporate research and development of embedded engineer jobs there will be no problem.

 

Embedded into the
http://www.makeru.com.cn/live/1392_303.html?s=45051
embedded development career planning
http://www.makeru.com.cn/live/1392_308.html?s= 45051 
embedded with the development of the industry status quo analysis
http://www.makeru.com.cn/live/1392_401.html?s=45051

Guess you like

Origin www.cnblogs.com/QianD/p/10944761.html