Microcontrollers are not learned, but played out

Publisher:VelvetDreamerLatest update time:2015-03-25 Source: diangon Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
      Many MCU learners always fail to grasp the key points. From the high enthusiasm at the beginning of learning to the frustration and giving up at the end, everyone has a feeling of both love and fear for MCU. In the communication with classmates at work and school, the most common thing I hear is "MCU is too difficult". In fact, it is not that MCU is difficult to learn, but I don't know how to get started. Please remember this sentence "MCU is not learned, but played".
  It is not enough to read books to learn MCU. Practice must also start from reality. The current technology is too modular. Everything can be modular. In the end, technicians can only use it. The knowledge left by our ancestors and the basic knowledge should be known. After all, the ultimate goal of learning MCU is development, which is to reflect one's own value by creating physical objects with intelligent control.
  There are two ways to practice. You can choose one: buy a 51 single-chip microcomputer experimental board. It does not require too many functions. For beginners, the kind of board with many functions has many things you will never need in your life. In order to increase functions and reduce costs, the experimental board is full of patch components and double-sided wiring. The more complex the more advanced it is, it seems that when they were designing, they thought that learning single-chip microcomputers only requires downloading programs according to my prompts. What's more, the downloader is integrated on the experimental board. Many beginners still think that the original single-chip microcomputer is not a chip, but a single-board computer that is often mentioned in old textbooks and is no longer used. I think these modules are enough for beginners to learn single-chip microcomputers, and the rest have to be developed by themselves. Flowing lights, digital tubes, keyboards, buzzers, serial communication, AD, etc. are almost the same. If you can skillfully apply the above-mentioned ones, it can be said that you have already entered the hardware of single-chip microcomputers. The rest is to practice designing circuits by yourself and constantly accumulate experience. When designing a circuit, you must learn PCB board design software. After all, computer-aided design is still required for product mass production. Manual work is too inefficient. However, it is recommended to solder by yourself during the learning process. You must understand the circuit connection before soldering. You can find many circuit schematics by searching on the Internet, but they may not all be usable. Therefore, it is recommended to prepare a breadboard. With it, you can test it before soldering the circuit. If the test on the breadboard is successful, you will be determined to solder later. If it fails, you can just find another one. As long as you pass the first level, the road ahead will be easy. Everything is difficult at the beginning.
  Method 2: If there is a microcontroller beginner around you who has strong hands-on ability, ask him to help build a simple microcontroller circuit, even if it is a circuit to control the operation of an LED. For them, it is easy to make a minimum system board for a microcontroller, but it is much more difficult for beginners. Once the layer of window paper in the middle is broken, everything will be simple. Because only when you understand the hardware can you use it skillfully.
  Only when you know that the program is downloaded to the microcontroller, you will know why you need to write a microcontroller program, where the motivation comes from, and you will have a clear mind. Microcontroller programming is to talk to the microcontroller. If you don't know who the other party is and whether they are listening, will you still have the passion to talk? Of course, if there is no such person, the same thing applies. Just find a few minimum circuit schematics on the Internet and solder them on the breadboard. Of course, if you don't know this, I suggest you buy a test board, which will be used for the microcontroller learning experiments and project tests in the future.
  With a microcontroller test board, you have to practice more. It is best to have a computer of your own, download fewer movies, play fewer online games, connect the test board and the computer, install the necessary software, download the reference program, and modify the reference program. Start with the simplest traffic light experiment. When you find that you can control the traffic light and understand the soft and hard design of traffic, you have already entered the door. You will find how fascinating the microcontroller is. This is not learning knowledge, but improving your own value. The design of traffic with such a wide range of uses is no problem. Do you still feel that you have not learned anything? Do you still feel that you know nothing? All the professional knowledge of computer programming and electronic technology is used. When the program you wrote is implemented according to your wishes, you are happier than doing anything else. The sense of achievement and fulfillment of learning is very rare. Then let the digital tube light up to show the number you need. After these two parts, you can't help yourself, and you have begun to consider which career you want to take in this life. Just learn like this. When writing programs, you will definitely encounter many problems. At this time, you will look for books. Among them, you will find the programming books you have learned before, as well as digital electronics and analog electronics books. You will find that the knowledge you learned before is still useful.
  If you don’t understand, go to the books you have learned before to check. This is the great truth of "reviewing the old and learning the new, you can be a teacher". Knowledge must be used in real life to solve practical problems. You can use a single-chip microcomputer to design a simple home appliance timer, infrared remote control, etc., so that it can play its role. Think about it carefully. After so many years of college, exploring for so long, hesitating and wandering, and attending classes every day, what have you learned in class? Are you busy for the final exam of 60 points? You are lucky to get 90 points, and you are very happy. You brag about how well you have learned professional knowledge in front of others. Little do you know that college exams are not like high school exams. What does it matter if you get a scholarship? But when you come back to school next semester, you think about it and forget all the knowledge you have learned. What have you learned?
  Why do you recommend learning single-chip microcomputers? Because single-chip microcomputers are learned by engineering students. They are a subject that integrates computer programming, electronic technology, and multiple control languages. It is better to say that learning is learning a large subject than learning single-chip microcomputers. 5. Is learning single-chip microcomputers assembly programming or C language programming? About the problem of programming in assembly and C language. This problem bothers many people. It may be mainly caused by the teaching of schools and the educational guidance of some textbooks. C language programming was introduced in the freshman year. Before students knew what the practical use of C language was, other languages ​​came along. Even if they started a special microcontroller course, the content of the course was very similar to the technical documentation. There were many instructions, but not many complete ones. So after learning it, they didn’t know why they had to learn programming.
  Many students took C language courses in their freshman year. I also took it, but at that time, I just multiplied and added a few every day, and calculated factorials. I used C language to solve elementary school math problems. I went to the computer twice a week and kept typing on the books. After class, I didn’t know what I had mastered and what the use of mastering it was. What’s the use of learning it? If the boss asks you during the interview, have you learned programming? What will immediately come to your mind? "C language, VC, VB. Many things, what C language is basic and engineering-oriented, what VC is advanced object-oriented", but the boss asks again, can you apply the C language you have learned to practice, such as designing a timer alarm in C language. I was confused now, I didn't learn it in school. You can use C language or assembly language to program microcontrollers, but I suggest C language is better, modular management programming is convenient, portability is strong, and it is suitable for writing large programs. If you have a foundation in C language, it will be easier to learn. If not, you can also learn C language while learning microcontrollers.
  Although many people start to learn microcontrollers with assembly language, it is still simple to write small programs in assembly language. If you want to implement some algorithms, then assembly language is not simple. Although the amount of code after C language compilation is obviously longer than assembly language, and the execution efficiency is not as high as assembly language, in the past microcontroller development, due to the limitations of chip technology and the limitations of microcontroller main frequency, many microcontrollers have very small internal memory and very small main frequency. But now it is different, the internal memory of the chip does not care about this difference at all.
  So should we not learn assembly language? No, we must learn it. There are two aspects. First, when getting started with microcontrollers, we should use assembly language, and its syntax is simple. Secondly, if you want to be a senior designer of microcontroller programs, you must master assembly language. Many advanced microcontrollers like ARM use assembly language as the boot code. In addition, many newly released microcontrollers first have assembly language compilers and then C language compilers. Therefore, I think for microcontrollers, you should learn assembly language for beginners, master C language, and then assembly language. Finally, for the study of microcontrollers, getting started is the first step. After getting started, you should pay attention to the market, the company, and what kind of talents the company needs. I think after having a foundation, you can understand the type of microcontrollers needed by the company before the interview, and you will get started quickly. After all, learning is the same. I wish beginners who are still hesitating or have been exposed to microcontrollers before to get started in advance.
Reference address:Microcontrollers are not learned, but played out

Previous article:What are the differences and connections between microcontrollers and embedded systems?
Next article:Electromagnetic compatibility design of single chip microcomputer printed circuit board (PCB)

Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号