-
Embedded systems are a combination of software and hardware, and there are two types of people who engage in embedded development.
One is people who study electronic engineering, communication engineering and other hardware majors, they are mainly engaged in hardware design, and sometimes have to develop some of the lowest level software most closely related to hardware, such as bootloader, board support package (like the BIOS of a PC, drive the hardware downwards, and support the operating system upwards), the most basic hardware drivers, etc. They have the advantage of being very clear about the hardware principles, but they are better at defining various hardware interfaces, but they are often unable to handle complex software systems (such as embedded operating system principles and complex application software). This requires a mastery of digital circuits, analog circuits, microcomputer principles, etc.
The other type is people who are majoring in software and computer science, mainly engaged in the development of embedded operating systems and application software. If we who learn software have a good grasp of hardware principles and interfaces, we can also write BSPs and hardware drivers. After the embedded hardware is designed, all kinds of functions are realized by software, and the value-added of embedded devices largely depends on the embedded software, which accounts for the most important work of the embedded system (at present, there are many companies that have given the hardware design package to a special hardware company, and the slightly complex hardware is handed over to Taiwan or foreign companies for design, the domestic hardware design force is very weak, and many embedded companies are only responsible for developing software, because the company knows that the difference between embedded products is largely in the software, In terms of software, it is the most "flowery" to do), so we who engage in software do not have to worry about our use in the embedded market, the more intelligent devices are more complex systems, the more software plays a key role, and this is the current trend.
This requires a certain mastery of C language, C++ and other languages, because embedded systems generally write software in these two languages. At the same time, you should have a good understanding of the Linux operating system.
To learn embedded systems, you must a. grasp the structure and principles of mainstream embedded microprocessors; b. master an embedded operating system; c. be familiar with the embedded software development process and have done at least one embedded software project. Linx mainly learns the system, and it's the first time I've typed so many words, so you can do it.
-
After seeing that some well-wishers suggested participating in the training course, I personally disagreed. It is really not recommended that you go to any training, not to mention that it is very expensive, and the training effect is generally not very good, in the final analysis, it is up to you to learn.
It is easier to get started with learning software to engage in embedded software development, so it is recommended that you start with a single-chip microcomputer, and the single-chip microcomputer recommends that you choose a single-chip microcomputer that you use more around you, and there should be more information about the corresponding information, which is very important, and the communication will be more convenient, and since you specifically mentioned 51, this is a more popular single-chip microcomputer, even if the internal structure of different models is not much different. Again, refer to the situation around you.
In addition, since you want to engage in embedded, it is recommended that you pay attention to the information of ARM while learning single-chip microcomputer, which is a very important processor in embedded at this time, so as to understand it first and prepare for further in-depth in the future. But at present, it is recommended that you start with the 8-bit 51 microcontroller, after all, ARM is relatively more complex, and 51 is easier to get started, and 51 has a solid foundation, and it will not be too difficult to learn other processors.
-
The span of learning computer software to develop in the direction of embedded is relatively small.
If you want to be embedded, you need to learn the C language, but you also need to be able to use C++.
If it is soft, you don't have to learn to count the electric model electricity.
At present, 51 single-chip microcomputer is slowly fading out, it is recommended to learn ARM, first to understand the structure of ARM, etc., various manufacturers, various ARM architectures, in terms of cost, you can choose a LPC2103 to learn.
-
It's easy to go to embedded software, and many of the software I know are very good to learn in the embedded direction, and with the foundation of C, everything is easy to learn. 1. Operating system, linux, etc. to learn one. 2, arm, buy a board, there is a lot of information in it.
Its practical hardware knowledge is very small, and it is still the C language.
-
It is recommended that you go to a professional training institution for training.
-
To put it simply, it is to do two categories: the bottom layer and the application.
1. At the bottom level, I mainly learn C language and hardware knowledge, and learn assembly while learning hardware, because assembly is the closest language to hardware, and the two can be learned in comparison.
2. If you want to make an application, you need to learn C, C++, and graphical user interface (GUI) or something.
3. In addition, to do embedded, you also need to learn some operating system knowing, Linux or Wince or something, embedded learning is more miscellaneous, learn everything, so it is more difficult.
-
As with other social activities, there are different roles in the field of embedded (Linux) system development. If you want to enter this industry, it is best to understand the different roles in this industry, and then choose the role you are interested in according to your actual situation, and then work hard to learn all the knowledge required to become a role in the daily time consumption process.
In this article, we discuss the division of roles in the development field based on our own practical experience in the course of our daily work. Specifically, in this article, we need to address several major issues:
Who are the roles involved in embedded product development?
How do these roles support each other and work together to accomplish specific products?
What skills do you need to be in each of these roles?
Among the above questions, question 3 is easier to understand. For question one, we are mainly talking about those roles involved in specific product development, and we will ignore those management roles here. For question 2, we don't focus on how the roles interact with each other, but on what functions each role has to perform throughout the product development process.
Before we move on, as a basis for understanding this article, perhaps you need to understand the general composition of the next embedded system. To do this, you can refer to the article "Applications, Operating Systems, Drivers and Hardware".
-
Software development includes low-level development (e.g., drivers) and application layer development (e.g., qt).
1.Embedded development requires a good C foundation and assembly, and C++ cannot be bad for the application layer (QT), and in general, a good foundation of C, C++ and assembly language is required.
2.Most of the embedded is developed on the Linux system, but of course there are also developed on Windows. Therefore, it is necessary to go back to the Linux operating system, master its basic instructions, and try to understand and memorize as many Linux kernel functions as possible.
Of course, it would be better if you could read the Linux kernel**.
3.Once you have the basics of programming languages and the operation of Linux systems, you will need to learn C programming on Linux. This is a basic requirement for low-level development.
4.You can choose to do low-level or application-level development for embedded development, but it is better to be proficient in both, so learn qt. Personally, I think QT is better than C++'s MFC, and it's more advanced than VB.
5.You can not use the hardware, the design of the hardware is done by the hardware engineer, but at least you have to be able to understand the hardware and understand the circuit diagram. Otherwise, someone has designed the hardware for you, and you don't know how to make the software.
It's better to try to understand some hardware, because sometimes it's more convenient to connect a few pins to test it once, and you don't need to ask for advice. Raw trouble. And at least the circuit diagram of the ARM development team still has to be understood.
-
Hello, it seems that you are very confused now, please listen to me one by one.
1. Is embedded Linux easy to find a job?
Embedded jobs are still very easy to find, you can go to some recruitment** to see the situation, such as Zhaopin, worry-free future, etc.**, especially in cities like Beijing and Shanghai, embedded companies are flying all over the sky, you say that it doesn't matter what electronic products and embedded now, TVs, washing machines, microwave ovens, cars, mobile phones, tablets, etc. are all related to embedded. Embedded technology all kinds of electronic products are more intelligent, and intelligence is the current and future technology trend, so embedded will not be eliminated even after a hundred years, but will only be more perfect.
2. Is embedded hard to learn?
To be honest, it is still difficult to learn, I encountered two problems when I was self-taught embedded, the first problem is that I can't find the direction when I am self-taught, I don't know what kind of learning process to start with, I am very confused. The second problem is that it is difficult to solve the problems, and some technical problems are not known to the teachers, after all, they are not engaged in development. (It's much easier if you're a graduate student, and with a supervisor to take you, these problems don't exist.)
3. Do I need to go to training?
Training is nothing more than trying to find a good job, if you feel that you are now or you can find an embedded job after self-study, you don't have to go to training, so you can do at least these two things before you think about going to training, 1: buy a few books to learn on your own, 2: speculate on a few embedded job resumes to find a job.
I don't need to say more about that later.
4. Is the training course useful?
Brother I am not talented, at that time self-study fruitless, and then ran to training, as for the training institution inconvenient to say, at that time our training class time was from 8:00 am to 6:00 pm, evening to 7:00
00-10:00 is practice, more than ten hours a day, four months.
These four months taught me what I had learned in four years of college. Especially for the event competition once a month (there is a bonus of 300 yuan), they are all crazy to learn and skip meals. I don't know how others are doing in training, but I think it's worth it, even though the tuition is a bit expensive, and now I'm doing a good job in the company.
5. Can I get a job after training?
At that time, the class I was training in later found jobs, and several of them had very high salaries, breaking 7,000, which was the treatment of graduate students, and I was decent. Then again, there are always a few unlucky people in each class at any time, and the search for a job is full of twists and turns, you know. Training will bring you into the embedded door in the shortest possible time, that's for sure, as for how much you can learn in these months, it depends on the individual's efforts.
Purely handwritten, if you have any questions, you can ask them).
Don't be nervous during the interview, you always have to give yourself a hint: "These are small scenes, I can handle them!" In addition, don't be too honest, the other party asks you if you have project experience, then just blow it, "I have two years of development experience" and something like that doesn't hurt, as long as you can enter the company, it all makes sense! >>>More
Computer software consists of programs and related documentation. A program is a symbolic representation of a sequence of instructions, and a document is a technical document established during software development. A program is the main body of software and is generally kept in storage media (such as floppy disks, hard disks, and optical discs) for use on a computer. >>>More
What are the benefits of applying for computer software copyright registration? Computer software copyright registration refers to the fact that when the software copyright owner disagrees with each other, any copyright owner can apply for registration on the premise that the interests of other copyright owners are not harmed, but other copyright owners should be indicated. China's computer software registration began in 1991, and in 2002, the new and improved law was used to register computer software copyrights. >>>More
Regardless of whether the school really wants to cultivate high-tech talents, first of all, it must be very important, the school only plays a role in allocation, and it depends on you yourself to which level of development! >>>More
Let's grasp it from three aspects.
1. The willingness of the management should make the managers recognize the significance and role of computerized accounting. >>>More