External structure of single chip microcomputer
If you want to use a chip, you must first know how to connect it. We use a chip called 89C51. Let's take a look at how to connect it. 1. Power supply: This is of course essential. The microcontroller uses a 5V power supply, of which the positive pole is connected to pin 40 and the negative pole (ground) is connected to pin 20. 2. Oscillator circuit: The microcontroller is a timing circuit that must provide a pulse signal to work properly. The oscillator has been integrated inside the microcontroller. A crystal oscillator is used, connected to pins 18 and 19. Just buy a crystal oscillator and a capacitor and connect them. Just connect them according to Figure 1. 3. Reset pin: Connect according to the method in Figure 1. As for what reset means and why it is necessary to reset, it is introduced in the microcontroller function. 4. EA pin: The EA pin is connected to the positive power supply terminal. At this point, a microcontroller is connected, and the microcontroller starts working after power is turned on.
Our first task is to use the microcontroller to light up a light-emitting diode (LED). Obviously, this LED must be connected to a pin of the microcontroller, otherwise the microcontroller cannot control it. So which pin should it be connected to? In addition to the 5 pins just used, there are 35 pins on the microcontroller. We connect this LED to pin 1. (See Figure 1, where R1 is the current limiting resistor)
According to the connection method in this diagram, when pin 1 is at a high level, the LED will not light up, and only when pin 1 is at a low level, the LED will light up. Therefore, we need to be able to control pin 1, that is, we need to be able to make pin 1 change to a high or low level as required. Since we want to control pin 1, we have to give it a name. We can't just call it pin 1, right? What should we call it? INTEL, the company that designed the 51 chip, has already named it P1.0. This is a rule and cannot be changed by us.
Figure 1
Now that we have a name, how do we make it go "high" or "low"? To tell someone to do something, we just need to say it, which is called issuing a command. To tell a computer to do something, we also need to send a command to the computer. The command that the computer can understand is called a computer instruction. The instruction to make a pin output a high level is SETB, and the instruction to make a pin output a low level is CLR. Therefore, if we want P1.0 to output a high level, we just need to write SETB P1.0, and if we want P1.0 to output a low level, we just need to write CLR P1.0. [page]
Now we have a way to let the computer output P10 high or low, but how can we make the computer execute this instruction? We can't just tell the computer and leave it at that. To solve this problem, there are still several steps to go. First, the computer can't understand instructions such as SETB CLR. We have to translate the instructions into a way that the computer can understand, and then let the computer read it. What can the computer understand? It only understands one thing - numbers. Therefore, we have to change SETB P1.0 to (D2H, 90H) and CLR P1.0 to (C2H, 90H). As for why these two numbers are used, this is also stipulated by the designer of the 51 chip - INTEL, and we will not study it. The second step is, after obtaining these two numbers, how to let these two numbers enter the internal of the microcontroller? This requires the help of a hardware tool "programmer".
We connect the programmer to the computer, run the programmer software, and then write (D2H, 90H) in the editing area (see Figure 2). Write... OK, take the chip, insert the chip into the finished circuit board, and turn on the power... What? The light is not on? That's right, because the command we wrote in is to make
Figure 2
P10 outputs a high level, so of course the light won't light up. If it does, it's wrong. Now we unplug this chip, put it back on the programmer, change the content in the editing area to (C2H, 90H), which is CLR P1.0, write the chip, take it off, insert it into the circuit board, connect the power, and the light will light up. Because the () we wrote is the instruction to make P10 output a low level. In this way, we can see that the connection of the hardware circuit has not been changed. As long as the content written into the microcontroller is changed, the output effect of the circuit can be changed.
Analysis of the Internal Structure of a Single Chip Microcomputer
Let's think about a question. When we write an instruction into the microcontroller in the programmer, and then remove the microcontroller, the microcontroller can execute the instruction. Then the instruction must be saved somewhere in the microcontroller, and this place can still keep the instruction from being lost after the microcontroller loses power. What is this place? This place is the read-only memory inside the microcontroller, namely ROM (READ ONLY MEMORY). Why is it called read-only memory? Didn't we just write two numbers in it? It turns out that the ROM in 89C51 is an electrically erasable ROM, called FLASH ROM. We just used a programmer to write to the ROM under special conditions by an external device. Under normal working conditions of the microcontroller, it can only be read from that side, and data cannot be written in, so we still call it ROM.
Previous article:Features of MSP430 MCU
Next article:Microcontroller Overview - What is a Microcontroller
Recommended ReadingLatest update time:2024-11-16 20:33
- Popular Resources
- Popular amplifiers
- Wireless Sensor Network Technology and Applications (Edited by Mou Si, Yin Hong, and Su Xing)
- Modern Electronic Technology Training Course (Edited by Yao Youfeng)
- Modern arc welding power supply and its control
- Small AC Servo Motor Control Circuit Design (by Masaru Ishijima; translated by Xue Liang and Zhu Jianjun, by Masaru Ishijima, Xue Liang, and Zhu Jianjun)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- [Atria Development Board AT32F421 Review] 4. Run RTX
- [MM32 eMiniBoard Review] Initial Impressions of Receiving Data Download Environment Setup
- A brief discussion on several application solutions of GPRS
- 【Embedded Qt】Building the Qt runtime environment for embedded Linux
- Project Submission
- About crossover
- The download and win gift event is here again~you can learn and win prizes at the same time!
- Why is it said that the larger the ceramic capacitor package, the better the frequency characteristics?
- The smartwatch craze has left the survivors
- [TI recommended course] #Boost and buck-boost DCDC converters help wireless charging design#