Embedded Design Course summary (a)

Course targets:

1, understand the embedded technology;
2, master the use of embedded Linux operation; (command)
3, master the use of embedded Linux development tools; (gcc, GBD, the make, shell)
4, master of embedded Linux application development; ( file, multi-tasking, network, database)
5, understand the embedded product development process; (hardware - software - system)
6 for embedded system migration; (u-boot, kernel, file system)
7, understand the underlying embedded software development; (driven development)

Embedded Development Overview

What embedded technology?

Embedded technology device or system perform dedicated functions and controls of the internal computer. Embedded systems can not use general-purpose computers and software running cured, indicates that the firmware (Firmware), or the end user can not change the firmware is difficult to term.

The difference between the non-embedded software and embedded software?

1, attached to the embedded system board read only memory ROM, the system is custom in the ROM, can be instantly started, start standby recovery effect is similar to a PC (software remain in memory).
Advantages : bottom energy, high efficiency, rapid response, system stability,
disadvantages : a ROM memory is not released, can not be installed too many features.
2, non-embedded system installed on the hard disk or solid state drive (such as a memory card), the system can DIY, the system reads the data from the hard drive, create a temporary operating system environment in RAM at startup, shutdown disappears, every time you start to be re-establishment of a temporary system environment.
Advantages : high versatility in a strong support system, RAM memory can run a variety of large-scale software,
shortcomings : slow start, hardware large, high energy consumption.

The difference between the embedded development MCU development?

Here Insert Picture Description
Whether the operating system:
multi-tasking mechanism;
provides a wealth of network protocols;
provides open source software and libraries;

Embedded Development advantages and disadvantages

The shortcomings of traditional development:
① software portability poor (poor adaptation platform)
② developer proficiency requirements: soft and hard take-
Embedded :
① in portable operating system on existing software;
② do upper application development on the operating system;
③ do low-level development on the operating system;
the role of the operating system: management resources (software resources, hardware resources) = housekeeper
consisting of embedded systems : software subsystem (application + operating system) + hardware subsystems (peripherals + CPU)

Embedded development direction?

Embedded upper layer application software development:

① a language proficiency;
② familiar with an operating system; (see description will)
③ familiar with the structure / algorithm;

The underlying embedded system software development:

① proficient in C language; (all operating system kernel is a C + compilation development)
② understand the implementation of the operating system; (use, also add / edit function)
③ familiar with the hardware works; (CPU: stm32 + 64 place; SPI, IIC, Bluetooth, wifi, networking, camera)
④ familiar with assembly

Why would choose C language (C language features)?

① direct access to hardware;
② portability is good;
③ operating efficiency;

Why C language can directly access the hardware?

C has a pointer data type * 0x1234567 = 0xff (manipulation of the address pointer)

When selected compilation? When selected in C language?

Compilation features : low language, without advanced support syntax; access to the hardware efficiency of greater than C language
for hardware initialization when a group uses a compilation;
the use of C language hardware for complex operations; (operation memory)
Embedded Systems course reserve knowledge : C
+ language microcontroller (hardware works)
embedded systems engineer
BSP (firmware engineers) kernel development

CPU

Embedded =! ARM
whether the device can be used as an embedded CPU? YES
embedded core (Portable Operating System) ; the device can be made small operating system
which operating systems can be used as an embedded operating system?
Portable (open source code, provides a portable excuse) operating system called embedded operating systems
on a fee modal split
Business type: Vxworks, Nucleux, PlamOS, Symbian , WinCE, QNX, pSOS, VRTX, LynxOS, Hopen, DeltaOS
free type: Linux, uCLinux, uC / OS -ⅱ, eCos, uITRON
by real-time division of
hard real-time: Vxworks
soft real-time: WinCE, RTLinux
no real time: Linux
real-time (software, emergency it): complete the prescribed within the stipulated time action
vxworks: strong real-time
Linux: no real-time efficiency and stable running
Android in real time: RT-Linux openwrt

Application of embedded systems industry

Industrial control: industrial control equipment, intelligent instruments, automotive electronics,
military and national defense: Military Electronics
Consumer Electronics: information appliances, smart toys, communications equipment, mobile storage
network: Network equipment, e-commerce

The type of CPU architecture, features and application scenarios?

The basic structure of CPU
from the functional point of view, the internal structure of a general CPU can be divided into: a control unit, arithmetic logic unit, a storage unit (including an internal bus and a buffer) three parts. Wherein the control unit performs a data processing operation of the entire formulation process, each of the logic unit instruction is completed in order to obtain the desired final result of the program, the storage unit stores the original data, and is responsible for the operation result.

CPU architecture

1, Von Neumann architecture
(Von Neumann architecture), also known as Princeton structure, a program data memory and instruction memory of the computer design concept combined structure.
Features : The program is also self-modifying the characteristics of modern programming Yang rejected, because it would cause difficulty understanding and debugging, and the modern central processor pipeline and cache mechanism will reduce the efficiency of this feature.
Application scenario : The concept of the structure of the guide vaguely storage means separate from the central processor, made according to a design known as a computer stored-program computer. The earliest computer programs connotation is only a fixed purpose. Some modern computers still maintain such a design approach usually is to simplify or educational purposes.
2, Harvard architecture
(Harvard architecture) is a memory storing program instructions and data structures stored separately.
Features : Harvard architecture microprocessor typically have higher efficiency. Which program instructions and data organization and separate storage of instructions, when executed the next instruction can be read in advance.
Scenarios : program instructions stored and a separate data storage, data and store instruction may be performed simultaneously, enables the instruction and data have different data widths, such as program instructions Microchip's PIC16 chip is 14 bits wide and the data is 8 bits width.
3, parallel processing architecture
features : SIMD (SIMD) architecture.
Scenarios : SIMD machine most suitable dense array Problem with rules. An image processing, a matrix operation and physical simulation problems. They are not as common as a single processor, generally as a von Neumann additional host processor.

Released two original articles · won praise 1 · views 112

Guess you like

Origin blog.csdn.net/u010096988/article/details/104590115