refers to an information transmission line that can serve multiple components. In a microcomputer system, each component communicates with each other through the bus.
Address bus (AB): The address bus is unidirectional and is used to transmit address information. The width of the address bus is 16 bits, so the external memory directly addresses 64K. The 16-bit address bus is provided by the P0 port through the address latch to provide the low 8-bit address (A0~A7), and the P2 port directly provides the high 8-bit address (A8~A15).
Data bus (DB): Generally bidirectional, used to transmit data information (including data and instruction codes of practical significance) between the CPU and memory, the CPU and peripherals, or the peripherals and peripherals. The data bus width is 8 bits and is provided by the P0 port.
Control bus (CB): It is the general term for all control signals in a computer system. What is transmitted in the control bus is control information. It consists of the second functional state of the P3 port and 4 independent control buses, RESET, EA, ALE, and PSEN.
Memory:
It is used to store all information in the computer: including programs, original data, intermediate results of operations, and final results.
Read-only memory (ROM):
When in use, the read-only memory can only be read but not written. The information in the ROM will not be lost after power failure. Therefore, it is generally used to store some fixed programs, such as monitoring programs, subroutines, fonts and data tables. ROM can be divided into the following types according to the method of storing information :
1. Mask ROM:
Mask ROM is also called fixed ROM. It is programmed by the manufacturer and written into ROM (called curing) for users to use. Users cannot change the internal program. Its characteristic is that it is cheap.
2. Programmable read-only memory (PROM):
Its content can be written once by the user according to the program he has programmed. Once written, it can only be read but cannot be changed. This type of memory is now also called OTP (Only Time Programmable).
3. Rewritable read-only memory EPROM:
The first two types of ROM can only be written once, so users rarely use them. The more popular ROM chip is EPROM. Because its content can be completely erased by ultraviolet irradiation, and a new program can be rewritten after erasing.
4. Electrically rewritable read-only memory (EEPROM):
EEPROM can write and clear its contents electrically. Its programming voltage and clearing voltage are the same as the 5V working voltage of the microcomputer CPU, and no additional voltage is required. It has the same advantages as RAM in terms of simple read and write operations, and data will not be lost due to power failure, so it is extremely convenient to use. This type of memory is now the most widely used.
Random Access Memory (RAM):
This type of memory is also called read-write memory. It can not only read the data stored in the storage unit, but also write new data at any time. After writing, the original data will be lost. After power failure, all the information in RAM is lost. Therefore, RAM is often used to store information such as programs or intermediate calculation results that need to be changed frequently.
RAM can be divided into static and dynamic types according to the way it stores information.
1. Static SRAM: Its characteristic is that as long as there is power applied to the memory, the data can be stored for a long time.
2. Dynamic DRAM: The written information can only be saved for a few ms, so it must be rewritten every certain period of time to keep the original information unchanged.
Field-rewritable non-volatile memory:
The characteristics of this memory are: in principle, they belong to ROM-type memory, and in terms of function, they can rewrite information at any time, and their role is equivalent to RAM. Therefore, the definition and division of ROM and RAM have gradually lost their meaning.
1. Flash Erasable Memory (FLASH)
This memory is a non-volatile memory produced on the basis of the manufacture of EPROM and EEPROM. It has high integration and lower manufacturing cost than DRAM. It has both the flexibility of SRAM reading and writing and faster access speed, and the characteristic of ROM that it does not lose information after power failure, so it has developed rapidly.
2. Ferroelectric Memory FRAM
It uses the polarization direction of ferroelectric materials to store data. It is characterized by high integration, fast read and write speed, low cost, and short read and write cycle.
Clock cycle: The computer works in a beat mode under the action of the clock signal. Therefore, there must be a clock generation circuit, and the cycle of the clock signal input to the microprocessor is called the clock cycle.
Machine cycle: The time required for a machine to complete an action is called a machine cycle, which is generally composed of one or more clock cycles. In the MCS-51 series of microcontrollers we are talking about, a machine cycle consists of 12 clock cycles.
Instruction cycle: The time required to execute an instruction (such as "MOV A, #34H", which means to transfer the immediate value 34H to the accumulator A in the microprocessor) is called the instruction cycle, which consists of one to several machine cycles. The length of the instruction cycle depends on the type of instruction, that is, the operation steps and complexity of the instruction.
Assembly: It is a collection of machine instructions that can complete a certain task. Binary
number: There are only two digits 0 and 1, and the base is two. Hexadecimal
number: It uses 16 digits such as 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F, etc., among which the corresponding decimal numbers of AF are 10-15, and the base is 16. Instruction
: It is a description of a basic operation that a computer can perform and is the basic unit of computer software.
Byte: 8-bit binary numbers constitute a byte, and information is stored in bytes in the memory.
Word: 2 bytes make up a word.
Double word: 2 words make up a double word.
Complement code: Machine numbers can be represented by different code systems. Complement code representation is the most commonly used one. Positive numbers are represented by sign-absolute value, that is, the most significant bit of the number is 0, and the rest of the number represents the absolute value of the number; the representation of negative numbers is more complicated. First write out the complement code representation of the positive number corresponding to the negative number, then invert it bit by bit, and finally add 1 to the last bit to get the complement code representation of the negative number. [page]
Segment address: 8086 CPU divides 1MB of memory space into many logical segments, each segment is limited to 64KB at most, and the segment address is the starting position of the logical segment in the main memory. In order to use 16-bit registers to represent segment addresses, 8086 stipulates that segment addresses must be modulo 16 addresses, that is, in the form of xxxx0H, omitting the lower 4 bits 0, and the segment address can be represented by 16-bit data, which is usually stored in 16-bit segment registers.
Offset address: The offset of the storage unit from the starting position of the segment is referred to as the offset address. Since each segment is limited to no more than 64KB, the offset address can also be represented by 16-bit data.
Physical address: In a 1M-byte memory, each storage unit has a unique 20-bit address, called the physical address of the storage unit. The physical address is formed by shifting the segment address left by 4 bits and adding the offset address.
Code segment: When programming, programmers must divide the memory into segments. The code segment is used to store the instruction sequence of the program. The segment address of the code segment is stored in CS. The instruction pointer register IP indicates the offset address of the instruction in the code segment. The processor uses CS:IP to obtain the next instruction to be executed.
Data segment: The data segment stores the data used by the currently running program, and the segment address of the data segment is stored in DS.
Additional segment: The additional segment is an additional data segment, which is also used to save data. In addition, string operation instructions use the additional segment as the storage area for their destination operands. The segment address of the additional segment is stored in ES.
Stack segment: The stack segment is the main memory area where the stack is located. The segment address of the stack segment is stored in SS. The stack pointer register SP indicates the offset address of the top of the stack. The processor uses SS:SP to operate the data in the stack.
Stack: The stack is a "last in, first out" main memory area located in the stack segment, and uses the SS segment register to record its segment address. It has only one entrance and exit, namely the current top of the stack. The top of the stack is the end with a smaller address (low end), which is specified by the stack pointer register SP. The stack has two basic operations in words, corresponding to two basic instructions: the push instruction PUSH and the pop instruction POP.
Pseudo-instructions: In addition to instructions, the statements of assembly language programs also include pseudo-instructions and macro instructions. Pseudo-instructions are also called pseudo-operations. Unlike machine instructions, they are not executed by the computer during program execution. They are operations processed by the assembler during the assembly of the source program, completing functions such as data definition, allocation of storage area, and indication of program end.
Macro instructions: A macro is a section of program code with independent functions in the source program. It only needs to be defined once in the source program and can be called multiple times. When calling, only one macro instruction statement is needed. Macro instructions are user-defined instructions. When programming, functions that are used multiple times are replaced by one macro instruction.
Subroutines: Subroutines are also called procedures, which are equivalent to procedures and functions in high-level languages. In different parts of a program, similar program segments are often used. The functions and structural forms of these program segments are the same, but the assignments of some variables are different. At this time, these program segments can be written in the form of subroutines so that they can be called when needed; some commonly used program segments with specific functions can also be compiled into subroutines for users to use.
Interrupt: An interrupt is an operation that causes the CPU to stop executing a program and turn to handle special events. These events that cause interrupts are called interrupt sources. They may be input and output requests from peripherals, or some abnormal accidents or other internal reasons of the computer.
Interrupt handler: When an interrupt occurs, the processor stops the currently running program and turns to the program segment that handles special events for execution. This subroutine that handles interrupts is an interrupt handler, also known as an interrupt service program. The entry address of the interrupt handler is arranged in the interrupt vector table.
BIOS interrupt: In the memory system, the 8K ROM starting from address 0FE000H contains BIOS (Basic Input/Output System) routines. The basic input and output program BIOS residing in the ROM provides functional modules such as system power-on self-test, boot loading, main I/O device handlers, and interface control to handle all system interrupts. BIOS interrupts bring great convenience to programmers. Programmers do not need to understand the characteristics of the hardware I/O interface. They can directly use instructions to set parameters and then interrupt to call the program in BIOS.
Scratchpad: It is used to temporarily store the operand sent by the data bus or general register and use it as another operand.
Interrupt: Interrupt is an internal mechanism of the microcontroller to process internal or external events in real time. When a certain internal or external event occurs, the interrupt system of the microcontroller will force the CPU to suspend the program being executed and turn to handle the interrupt event. After the interrupt is handled, it returns to the interrupted program and continues to execute.
Power-off protection: When the normal power supply is powered off, the backup DC power supply is quickly used to ensure that the information will not be lost within a period of time. When the main power supply is restored, it automatically switches to the main power supply.
Register addressing: The operand is in the register. The value of the three bits of rrr in the instruction opcode and the status of RS1 and RS0 in PSW select a register in a certain working register area, and then perform the corresponding instruction operation.
Baud rate: That is, the number of bits of binary numbers transmitted per second. The higher the baud rate, the faster the data transmission speed.
D/A conversion: That is, converting the binary quantity into a current signal or voltage signal proportional to its value.
A/D conversion: converting analog quantity into corresponding digital quantity, and then sending it to computer for processing.
Serial mode: refers to the time-sharing transmission of each bit of data, which only requires one data line, plus a common signal ground line and several control signal lines.
Parallel mode: refers to the simultaneous transmission of each bit of data, and each piece of data requires a transmission line.
Pseudo-instruction: an instruction used to tell the assembler how to assemble. It neither controls the operation of the machine nor is it assembled into machine code. It can only be recognized by the assembler and guide how to assemble.
SLEEP MODI sleep mode: an operating mode that ensures the internal operation of the program, but the transmission and other actions with the outside have stopped.
Linking connection: merge the *.obj file generated after compilation with other *.obj files into a machine file that the machine can recognize.
I²C: a serial transmission method in which the input and output share a transmission line, and the clock is controlled by another line.
SFR Special Function Register Area: 8051 arranges the dedicated registers in the CPU, parallel port latches, serial ports and control registers in the timer/counter into one area, discretely distributed in the address range from 80H to FFH. This area is called the special function register area SFR.
Previous article:Design of portable blood pressure monitor based on MSP430 microcontroller and USB bus
Next article:Design of low power consumption active RFID tag based on MSP430 microcontroller
Recommended ReadingLatest update time:2024-11-16 19:52
- 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
- [Evaluation of EC-01F-Kit, the NB-IoT development board of Anxinke] 01. Communication test
- Mini Adafruit QT Py Development Board
- openmv3 serial port hangs up
- Design and Implementation of VGA Image Controller Based on CPLDFPGA
- HC32F460 series virtual serial port problem
- It’s really stuffy to wear a mask when going out in summer. Is there any good solution?
- Smoke sensor as wireless power supply
- What are the methods for upgrading the msp430 microcontroller program?
- RS422 to 5V and 3.3V TTL level
- Architecture of Wireless Sensor Networks