While learning the relevant knowledge of system transplantation, during the learning and debugging process, I discovered many problems and solved many problems. However, I always have a strange feeling about our development results. To correct the reason, it is mainly about our d

2024/05/1619:40:32 technology 1817

is learning the relevant knowledge of system transplantation. During the learning and debugging process, many problems have been discovered and solved. However, we always have an inexplicable feeling about our development results. To correct the reason, it is mainly about our We don’t have a deep understanding of the development environment . Sometimes a few simple commands can complete very complex functions, but have we ever thought about why there is such an effect?

If you don't ask questions, you just complete it mechanically and see the experimental results, you don't really grasp the essence of system transplantation.

When doing each step, first ask yourself, why are you doing this, and then ask yourself what are you doing? Once you understand these issues, I think it’s almost the same. No matter what platform, chip or development environment you change in the future, you will not be confused and you will get started quickly. Regarding the learning method of embedded , my personal method is: grasp it from a macro perspective (solve the problem of why), and study it from a micro perspective (solve the problem of what is being done). The following is based on the ARM-cortex_a8 development board that I have learned. Introduce your own learning methods and experience.

There are really a lot of things to learn about the embedded Internet of Things. Don’t learn the wrong route and content, which will cause your salary to go up!

will share an information package with you for free, which costs almost 150 gigabytes. The learning content, interviews, and projects are relatively new and comprehensive! If you buy a certain fish online, it is estimated to cost at least dozens of dollars.

Click here to find an assistant to receive 0 yuan: While learning the relevant knowledge of system transplantation, during the learning and debugging process, I discovered many problems and solved many problems. However, I always have a strange feeling about our development results. To correct the reason, it is mainly about our d - DayDayNews

While learning the relevant knowledge of system transplantation, during the learning and debugging process, I discovered many problems and solved many problems. However, I always have a strange feeling about our development results. To correct the reason, it is mainly about our d - DayDayNews

Embedded Linux system transplantation mainly consists of four parts:

1. Building a cross-development environment

2. Selection and transplantation of bootloader

3. Configuration, compilation, and transplantation of kernel

4. Creation of the root file system

Part 1: Building a cross-development environment

Let’s first introduce the content of the first part: To build a cross-development environment, we must first think about two questions. What is a cross-development environment? Why do we need to build a cross-development environment?

will answer the first question first. In embedded development, cross-development is a very important concept. The first step in development is to build the environment. If the first step cannot be completed, the subsequent steps will start from scratch. What is said here The cross-development environment mainly refers to: developing a program on the development host (usually my PC) that can run on the target machine (usually our development board). The special thing about embedded is that you cannot develop programs on the target machine (in a narrow sense), because for an original development board , it cannot run at all without any program. In order to make it run, we You must also use a PC to burn programs and other related work before the development board can run. The PC here is what we call the development host. Think about it, if there is no development host, our target machine will basically be unable to develop. This is also This is a famous saying in the electronics industry: To put it bluntly, doing electronics is just playing with computers!

Then answer the second question, why is a cross-development environment needed? The main reasons are as follows:

Reason 1: The hardware resources of embedded system have many limitations, such as relatively low CPU frequency, small memory capacity, etc. Imagine having an MCU with a frequency of several hundred MHZ to compile an Linux kernel will make us impatient to wait. Relatively speaking, PCs are faster and have richer hardware resources, so using PCs for development will improve development efficiency.

Reason 2: The MCU architecture and instruction set of the embedded system are different, so cross-compilation tools need to be installed for compilation, so that the compiled target program can run normally on the corresponding platforms such as: ARM, MIPS, and POWEPC.The hardware components of the

cross-development environment are mainly composed of the following parts:

1. Development host

2. Target machine (development board)

3. There are three main ways of linking the two: (1) Serial port line (2) USB cable (3) Network cable

corresponds to the hardware media, and must also have corresponding software "media" support:

1. For serial port , there are usually serial port debugging assistants, putty tools, etc. There are many tools with similar functions. You can use one or two types;

2. For USB cables, of course you must have a USB driver. Generally, the chip company will provide it. For example, for Samsung chips, USB downloading is mainly completed by DNW software;

due to time The reason is shared here first. For more details, you can click on the information in the article to get it.

technology Category Latest News