-
1. Required courses: operating system (UNIX), compilation principles, discrete mathematics. If these three courses are not good, the development of embedded systems will stay at a very low level in the future, and you will not get a high salary.
2. The field of embedded development is definitely the field of software. The most critical question for embedded systems is to see who has the most sophisticated software. Because the hardware capabilities of embedded systems are limited, only the most sophisticated software can develop satisfactory products.
For example, an ARM9 processor with a clock speed of 400MHz can be bought by you and your competitors, so how can your product beat the competition? It's up to you to make your software more sophisticated, your software more nb!
3. The software of the mobile platform is based on the C C++ high-level language. As a computer science student, it is natural to be familiar with a development platform and develop some applications. This is not part of embedded development.
4. I don't know what you said about the "soft test", but we don't care about it.
-
1. The embedded system engineer test questions of the soft test are biased towards hardware and theory, and there are currently more than a dozen embedded certifications, none of which are influential in the industry. Some of them can be bought for money, and some of them are too old to be practical.
2. Students in the first class do not need to participate in four-month embedded employment training, but they can consider participating in some short-term training to get started quickly, such as the embedded engineer special training class of Sunplus Education, four weeks, "embedded C advanced programming, embedded Linux system design, ARM driver development, 3G mobile phone Android" entry.
-
1. Embedded development refers to the development of embedded operating systems, including hardware and software under the guidance of systematic design and comprehensive research and development. In addition to the EDA research and development of temporarily separated hardware, the focus is on systematic design and software development under certain hardware conditions.
2. Software development is the process of building a software system or a software part of the system according to user requirements. Software development is a system engineering that includes requirements capture, requirements analysis, design, implementation, and testing. Software is generally implemented in some programming language.
Software development tools are usually used to develop them. Software is divided into system software and application software, and does not only include programs that can be run on a computer, but also files related to these programs are generally considered to be part of the software.
-
The concept of embedded software is relatively large.
He is in a hurry with this concept on the CPU.
The bright envy program running on the single-chip microcomputer is embedded software. Of course, the final form of software flashed on the MCU is machine code. The form of writing of the software can be assembly, c, c, and after compilation by the compiler, they are all in the form of machine code.
Now some hardware description languages are also included in embedded software key announcements, such as vhdl and verilog.
-
My understanding is.
Mobile phone embedded development should mostly refer to the development of the mobile phone operating system layer, for example, when you go to moto, what you should do should be mobile phone embedded development.
In the case of mobile phone software, it mostly refers to some programs developed by third parties and running on mobile phones, the simplest example, mobile games.
Of course, this is just my understanding of development, and there should be no definition of a very enviable standard for Ying Kai's early shooting.
-
1. There are different types of platform development.
Embedded system development is the development of operating systems on all electronic devices except computers, and the development objects include mobile phones, handheld computers, electromechanical systems, etc., which are generally composed of four parts: embedded microprocessors, peripheral hardware devices, embedded operating systems and user applications.
Software is generally implemented in some programming language. Software development tools are often used to develop on the fly. Software is divided into system software and application software, and does not just include programs that can be run on a computer.
Software development platforms arise from tedious hands-on development processes. In practice, developers summarize and encapsulate commonly used functions, classes, abstractions, interfaces, etc., and become reusable "middleware", and with the maturity and generalization of "middleware", software development platforms with more powerful functions and more able to meet the needs of enterprise-level customers have emerged.
2. Different resource limits.
Embedded systems are often resource-constrained, so it is difficult and sometimes impossible to write software directly on the hardware platform of the embedded system. The current solution is to first write a program on a general-purpose computer, then cross-compile to generate a binary format that can be run on the target platform, and finally run it on a specific location on the target platform.
Software implementation is based on computer language. Today, computer language has developed into algorithm language, database language, intelligent simulation language and other categories, among dozens of important algorithm languages, C&C language has increasingly become the close partner of the majority of computer software workers, not only because of its powerful function and flexible structure.
What's more, it provides a highly structured syntax and a simple and unified software construction method, which makes the design and construction of the subroutine library, the basic component of the SDE database, which is the main structure, extremely convenient.
3. The use of tools is different.
Embedded system development requires communication and interaction with the underlying hardware devices. Device-related. Mainly for equipment control and operation.
The requirements for compilers are high, and different processor platforms have their own compilers and debugging software. Specialized debugging tools are required, especially some specialized equipment.
The underlying operations are implemented through the interface function API of the system software, which is independent of the device. Mainly data processing and UI interface processing. There are no specific requirements for the compiler, and some general compiler and debugging software are usually used.
4. Quality requirements.
The embedded land-based system has high quality requirements and requires executable programs to occupy less storage space. Since multiple tasks run at the same time, there are many errors, so it has high requirements in terms of stability and performance.
There are no special requirements for the quality of software development, and there are not too many restrictions on storage space. Not as stringent as embedded systems in terms of stability and performance.
If you want to develop in the direction of embedded software, the most common direction is the direction of embedded Linuxarm, and I think there are about 3 stages in this direction: >>>More
I'm a so-called "professional", but I'm not a master, but I think I'm still capable of getting started. >>>More
Generally, embedded is to learn arm9 + linux
Linux at least has no problem with use, not with a mouse, but with a keyboard, open files, copy files, unzip, package, **source software, are very simple. Knowledge of Linux architecture. I don't say anything about the degree, the more familiar the better, especially the Linux composition. >>>More
Summary. Hello, you can improve the performance of embedded ARM programs in the following ways: Writing C programs with a certain style can help the C compiler generate faster ARM **. >>>More
Take a look at Xia Yuwen's book, which talks about Verilog, which has a complete ** of RSIC CPU. >>>More