My experience of learning MCU and the worries of graduation
[Copy link]
Hello everyone, thank you for reading this post! I am a fresh graduate from a local university, and my major is electronic information engineering. In late May 2006, I decided to go out to work suddenly, even though I didn't plan to go out to work so early. After two weeks of searching, I found that it was not as easy as I thought to find a job that I was satisfied with. In the face of reality, I had to re-examine myself and look back at the road I had traveled. The following text is a review of my experience in learning electronic technology in the past two years. Here I declare that the purpose of posting this post is to get the guidance of the predecessors and exchange experiences with everyone. I will be very happy if I can provide some reference for readers who are just starting to learn single-chip microcomputers.
In 2003, I was a sophomore. At that time, I worked part-time in the library, and my job was to re-shelf the books returned by readers. Because the library I was responsible for was computer and other information sciences, I had the opportunity to come into contact with books such as single-chip microcomputers during my work. In the process of sorting books, I found that books about single-chip microcomputers were the most popular, and most of the readers were electrical majors. Because I have been very interested in electronic circuits since I was a child, and I saw so many people studying electricity learning single-chip microcomputers, so I was curious to learn what single-chip microcomputers are. You don't know until you see it, and you can't stop it. I have been very fond of electronics since I was a child, and I discovered a new world! From then on, single-chip microcomputers entered my world. Because I was a sophomore, we didn't have any related courses, so I had to learn by myself. At the beginning, I borrowed an introductory book "Hand-in-hand Teach You to Learn Single-chip Microcomputers" from the library. This book gave me a preliminary understanding of single-chip microcomputers, at least I knew what single-chip microcomputers were, what single-chip microcomputers were used for, what functions and characteristics they had, etc. The rich information on the Internet also helped me to enter the door of single-chip microcomputers to a great extent. At that time, I thought the most useful one was the website of Magnetic Power Studio. It was she who made me know what tools I needed to learn single-chip microcomputers, what type of single-chip microcomputers I generally chose to get started, etc. I was born with a special interest in electronics, so the more I learned, the more excited I became, so I tried to learn it. Although our school has a single-chip computer laboratory, it is a machine from the 1990s, which is extremely backward. It can only be used in assembly and can only be used in DOS environment, which is quite inconvenient. If there are conditions, we must go to it. If there are no conditions, we must create conditions to go to it. After two months of preparation, on the National Day of 2004, I boarded a bus to Guangzhou - my destination was the New SEG Electronics City and Taojie Second-hand Market. Going to SEG mainly to buy entry-level chips ATMEL89C51 and SST89C58, which was very popular on the Internet at that time for emulators, and some basic chips such as MAX232, AT24C02, etc. At that time, I made a great determination. It was my first time to go to Guangzhou to buy things. I had just passed by before. When I arrived at the New SEG after some twists and turns, the notice at the door made me feel half disappointed - the National Day holiday is 3 days! I had to go directly to Taojie. Taojie was introduced to me by a classmate in Guangzhou. Later, I bought some batteries, tools, etc. there, and then returned to school. I didn't buy the chips I wanted in Guangzhou this time, so I was very sorry. At that time, the singer Dao Lang had just become famous. When I walked on the street, sat on the bus, and entered the store, my ears were almost filled with Dao Lang's song - "Punishment of Impulse". So now when I hear this song, I will think of the situation in Guangzhou that time, and my heart will naturally be filled with bitterness. The money was used up, and I prepared for another month. There was only one way for me to raise money - tutoring. In November 2004, I came to Guangzhou again. Because of the experience last time, my trip was a little easier this time, and I didn't worry about taking the wrong road - I didn't have the confusion and anxiety of the migrant workers who had just arrived. In addition, I got the guidance of the teacher of the school's electrical experiment center when I went to Guangzhou this time. She introduced me to a shop that specializes in selling single-chip microcomputers and other chips. This time, the door of SEG was open! In the new SEG, I was immersed in the world of electronic parts. I would stay at each counter to see what was on sale. After shopping for 3 hours, I bought most of the parts on the component list. Actually, there are so many things I want to buy, but I don't have enough money in my pocket. However, I am still satisfied and full of hope. This time, I bought 2 AT89C51, 1 AT89S52, 2 bare boards and some peripheral parts. As soon as I returned to the dormitory, I started to weld the test board. Here I have to mention an experience that made me laugh and cry. After the test board was welded, I wrote a running light program. I found that the chip always ran normally for a while and then failed again. After a few days of busy work, my discovery made me laugh and cry-the EA pin on the test board was not connected to a high level! I think many beginners will encounter this problem. After the test board was ready, I started to do experiments according to the examples in the book. From running lights to serial communication, LCD display... Slowly, I really entered the world of single-chip microcomputers. As the years go by, I learn more and more deeply, do more and more experiments, and I am more and more familiar with single-chip microcomputers. In December 2004, an accidental opportunity triggered the beginning of my one-year struggle. One day, I saw a used telephone meter in a local garbage market. It was a product of the Guangzhou Automation Research Institute. It had 26 LED digital tubes. My intuition told me that the machine had what I needed. I finally bought the meter for a dozen yuan (I thought at the time that one digital tube cost 1 yuan, and even if only the digital tube was usable, there were 26 of them, which was a good deal!). When I returned to the dormitory, I immediately powered it on and tried it. I found that the digital tube could display, and then I immediately disassembled it. When I opened the case, I saw a dusty circuit board and a transformer (later I found that it was a product around 1997, so the circuit board was relatively old). At this time, I was so nervous that I held my breath. I wiped the dust off a chip that looked very much like C52 with my hand as if I was scratching a lottery ticket. When those words appeared in front of me, I was so excited! - INTEL 80C31BH @1982! The sample chip in almost all textbooks! Then, with waves of excitement, I discovered 8279D, MC146818, MT8880, 74hc373... From then on, this circuit board began to occupy my time for a year. In 2005, I spent a year studying that circuit board. From reading the data sheets of each chip on the board, to drawing the circuit schematic, then to analyzing the circuit principle, to writing programs to control each chip on the board. This is a long process. In this process, I learned and practiced the principles of the microcontroller bus, the driver of the digital tube, etc., and transitioned from assembly language to C51. When copying the board, because it was a double-layer board, it was particularly difficult to draw. I had to complete it under the sun or fluorescent light (enough brightness to see the wiring above from the bottom through the board). I copied this board for a full week. Later, based on the characteristics of that circuit board, I decided to transform it into a telephone alarm. From this, I started a round of research on telephone alarms. Because I started with assembly language, I wrote a basic driver program in assembly language. This driver program tested the basic functions of each chip on the board. Fortunately, all the chips were normal! Later, the amount of useful programs was large, so I switched to learning KEIL C51. After learning C51, I rewrote all the drivers with C51. After the successful transition, I realized the powerful function of C, so I made a visual menu-operated LCD system for the board. In this way, I started writing LCD drivers, learning the principles of fonts and menus, and came into contact with FLASH chips for the first time...
In November 2005, I participated in the school's electronic design competition. I was in a group of one, while the others were in groups of more than 3 people. Then I had two works that entered the finals. One of my works was an intelligent voice system based on isd4003, and the other was a telephone alarm. In fact, the intelligent voice system based on isd4003 was created because I needed a language chip when I was making a telephone alarm, so I studied it. I like to play with technology, so I made full use of the functions of the ISD4003 chip. My language system is so powerful that the judges asked: Where can I use such a powerful function? My telephone alarm took most of my efforts. On this telephone alarm, I built a powerful menu imitating a mobile phone. This is what I think I am most proud of. There are 200 menu items in it, and various parameters are set. Just one menu took me a lot of time, including learning C language, building a font library, implementing menu algorithms, and reallocating the IO addresses of the chip on the board. In the end, both of my works only won the third prize. I spent three months preparing for this competition. During those three months, I had no weekends or golden weeks. Every day, I hurried back to the dormitory after class, and sometimes I skipped classes when I was in high spirits. I don’t know how many times I forgot to eat lunch, how many nights I fell asleep thinking about programs and circuit boards, and how many mornings I jumped out of bed thinking about programs and circuits. Looking back now, it was really a period of obsession and madness for microcontrollers, and a period of passionate years.
A few days before I participated in the competition, my classmate said to me: "You are so crazy now, and you will feel inexplicably empty after the competition! This is my experience of participating in the College Cup!" I didn't believe it at first, but later facts proved that he was right. Because the competition was held at night, that night, when I was lying in bed, an inexplicable emptiness frightened me, so that I didn't dare to think about that aspect. Why is there such a common phenomenon, I still don't know the reason. After the competition, it was the final exam and the Spring Festival, so I stopped for three months. After the Spring Festival in 2006, I started learning again. I was determined to transform the alarm into a home monitoring system. The transformation is still in progress. During this period, I also learned the microcontroller operating system SMORT RTOS51.
Now, I am about to graduate, and my efforts are still continuing...
Now I describe my abilities as follows:
1. I have a clear understanding of the MCS51 series microcontroller architecture 2. I have a certain level of proficiency in C51 language programming, and have a deep understanding of KEIL software and understand the characteristics of KEIL in compilation. 3. I have been holding a soldering iron since I was a child, and I have a good level of welding and excellent hands-on ability. 4. I have learned the single-chip microcomputer operating system. 5. I have learned and practiced single-chip microcomputer serial master-slave multi-machine communication, IIC communication, SPI communication protocol, menu compilation, LCD display technology, LED display technology, single-chip microcomputer font library principle, single-chip microcomputer USB data transmission, remote control based on 2262/2272, single-chip microcomputer bus technology, logical encryption IC card reading and writing, etc. ( I will try my best to do everything that has the conditions to practice) 6. Know the use of PROTEL DXP/99. 7. I have a considerable desire for knowledge and am determined to develop in the embedded field. 8. I have the foundation of VB programming .
Now, what lies before me is employment. Here, I would like to ask all the seniors, I want to develop in the embedded field, so what kind of company should I choose? What do I need to do now?
My writing level is not good, please forgive me. Thank you all!
Supplement 1: When I was in kindergarten, I was playing with other kids. I saw that one of the wires in my neighbor's house was broken. Because I knew where his electricity went, I told my friends that I dared to touch that wire. I picked up the wire that led to the neighbor's house instead of the power source and touched it with my hand. As a result, I lost control and my senses became blurred. I staggered as if I was being pulled by something, and then fell into the ditch. At that time, I didn't know why my hand would hold the wire tightly. Later, an adult saved me. From then on, I had a fear of electricity. Later, I learned the reason why I was electrocuted: although I didn't touch the power source, the broken wire was the neutral wire, and the live wire was not broken, and at least one of the lights in the neighbor's house was turned on! Then, I played with electric motors in the second grade of elementary school. I installed it on the foam bottom, cut a propeller with iron sheets, and installed a rudder, and it became an electric boat. In the fourth grade, my sister bought me an electric soldering iron, and the history of welding began. Until junior high school, I didn't know the function of resistors and capacitors. I didn’t use a computer until I was in college. I used to think that a computer was just a monitor, and I didn’t know there was such a thing as a host.
Supplement 2: Everyone has worked on hardware, and they all know that the cost of learning is relatively high, such as buying experimental boards, chips, and electronic components. For me, when I started learning single-chip microcomputers, I spent an average of more than 70 yuan a week on them. Fortunately, I had a stable tutoring income to support my interest and hobby. Now, in my dormitory, my electronic parts can be packed into several boxes, and those circuit boards are piled into a small pile. Don’t look at me. There are so many electronic things. In fact, more than half of them are second-hand. Buying second-hand parts or circuit boards is the most useful way for me to reduce the cost of learning! There is a street in Jiangmen that specializes in selling second-hand goods. The things there are very mixed, some of which are rubbish, but if you are lucky, you will come across good things. So far, I think the following things have had a significant impact on my studies: a telephone meter (bought in 2004), 4 electronic payment password devices, and a supermarket cash register. Among them, the telephone meter is the biggest helper in my study of single-chip microcomputers, which has been mentioned before. Then there is the electronic payment password device, which is used by banks, but I don’t know how to use it. Similarly, I drew the circuit diagram manually based on the PCB, and then made modifications after analyzing the principle. Because the electronic payment password device is a handheld device, powered by a single battery, with a 4×4 keyboard, SSD1815 LCD display, and an onboard 29LE010, an external 32K RAM, and a real-time clock chip DS1302, I modified it into something similar to a PDA, built a snake game, a menu, a perpetual calendar, an e-book, etc., and also learned VB at the same time, wrote the upper computer software, and used the PC to download data. It took me three months to learn this thing. However, it was this electronic payment password device that provided me with a platform to let me know how to design handheld devices, such as 1.5V boost to 3V, how to choose low-voltage chips, and how to design a single-button switch circuit. By the way, this electronic payment password device is produced by a large company in Shenzhen, and the quality is good, so it is easy to modify. The other one is a supermarket card machine. The benefit of this machine to me is that I disassembled a first-class LCD display. I have bought 128×64 dot matrix before, but the quality is far inferior to this one. Unfortunately, the LCD does not have its own negative voltage drive, so I had to make negative voltage myself, so I made one based on the original circuit board. I disassembled many useful chips from this machine, and the most useful one is the lightning protection circuit on it, which is first-class! Later, I transplanted its lightning protection circuit to my phone alarm, and I was so proud. Here I will talk about my phone alarm again. At the beginning, I really wanted to use it for alarm. I also designed two slaves for this purpose, one to play voice information & collect defense zone signals, and the other is a relay module, which is responsible for the control of home appliances. In order to design the alarm function to meet the market requirements, I also went to most of the stores selling monitoring equipment in Jiangmen City to understand their product information and ask them for promotional brochures. Later, in November, I finally had a prototype and participated in the competition. In this process, I also tried to use GSM communication, so I played with Siemens mobile phone (3518i) for another month and learned the AT instruction set of the mobile phone. Trying to find second-hand useful circuits to analyze and modify is my main method of learning single-chip microcomputers. To be honest, I spent two years constantly dismantling old circuits, looking up information and analyzing the principles, and finally modifying and summarizing other people's experiences. I think this way I can save a lot of money and learn a lot of useful knowledge. After all, those are mature products and the technology should be reliable. Writing here, I suddenly remembered the ISD4004 experimental circuit board I bought a year ago. I can say that I watched the growth of that second-hand market, because from its formation to its current prosperity, I go there almost every week. Once I went to a stall and saw a pile of bare circuit boards with only the shape of the components but no model number. Suddenly, I found out like a genius that a circuit board might be used for ISD4004, so I bought two for 1 yuan. I went back and checked the data sheet of ISD4004 and compared the circuit board, and I found that this circuit board was actually the typical driving circuit given in the data sheet. The excitement at that time was really indescribable. Later, I learned a knowledge from that circuit board: the data sheet of ISD4004 said that in order to ensure the sound quality, it is best to separate the ground of the digital circuit and the ground of the analog circuit and merge them not far from the power supply. As a result, I found out that my circuit board strictly followed this suggestion after N months! From then on, I had a direct understanding of the separation of digital ground and analog ground mentioned in the electromagnetic interference book. Finally, I suddenly remembered my biggest dream when I first learned single-chip microcomputer: to make an intelligent robot. At first, I came for the application of robots and industrial control, but now I have accepted consumer electronics.
Supplement 3: When I was a beginner, the single-chip microcomputer I used was the C51 series, which required a burner. Because I had no money to buy one, I made one based on the examples on the Internet. There are many similar functions on the Internet. I used the one of teacher Nie Zongqiang. This burner made me try my best to make it when I got started. Its success gave me strong confidence and created conditions for my later learning and practice. Later, I switched to the S51/52 series chips and used the download line to download the program, which was quite convenient. Now, I use SST chips and use the serial port to download the program. So far, I have not bought a burner. In addition, my emulator is also made according to the information on the Internet. The function is general, but it is enough for me. Now I always recommend my juniors to use SST chips or ATMEL's S51 series chips to get started. Now I feel that time is not enough, and there are many things I want to learn, such as cpld, arm, etc. I also want to play with radio frequency cards, single-chip microcomputer control network cards, etc. I have been a tutor for 2 years and earned more than 8,000 yuan, but most of the money was spent on single-chip microcomputers. I never asked my family for money except for living expenses, such as buying circuit boards, chips, parts, and books. It has been 2 years, and looking back at the road I have walked, I feel quite complicated. I have gained a lot, but I have also lost a lot. Every weekend, when others are surfing the Internet and watching movies, I am often in a burst of rosin smoke.
The heart is too high and it cannot be reached.
|