8051 Microcontroller Interview Questions
8051 Microcontroller Interview Questions
The Intel 8051 microcontroller is one of the most popular general purpose microcontrollers in use today.It is an 8-bit family of microcontroller developed by Intel in the year 1981.This microcontroller was also referred as “system on a chip” because it has 128 bytes of RAM, 4Kbytes of ROM, 2 Timers, 1 Serial port, and four ports on a single chip. 8051 microcontroller allows CPU to work on 8bits of data at a time.n case the data is larger than 8 bits then it has to be broken into parts so that the CPU can process conveniently.
Below are the some features of 8051 Microcontroller.
- 64K bytes on-chip program memory (ROM)
- 128 bytes on-chip data memory (RAM)
- Four register banks
- 128 user defined software flags
- 8-bit bidirectional data bus
- 16-bit unidirectional address bus
- 32 general purpose registers each of 8-bit
- 16 bit Timers (usually 2, but may have more or less)
- Three internal and two external Interrupts
- Four 8-bit ports,(short model have two 8-bit ports)
- 16-bit program counter and data pointer
In 8051 a stack pointer is 8 bits wide register to access stack.The stack is a section of RAM used by the CPU to store information temporarily information could be data or an address.
Generally, 8051 used bank1 of internal RAM as the stack so the default stack pointer is 07H.The stack is used for PUSH, POP, CALL, RET instructions and work on the principle of last in first output (LIFO)
Trap interrupt has the highest priority.A trap is an abnormal condition detected by the CPU, which indicates an unknown I/O device is accessed, etc
When Microcontroller is under sudden interrupt, it will call ISR (Interrupt service routine) that will store the address of current memory address and takes the control to new interrupt memory address. After the interrupt, the control will transfer back to its previous address.
The applications of 8051 Microcontroller is involved in 8051 based projects. Below are the list of 8051 projects .
- Arduino Managed High Sensitive based Power Saver for Street Light Control System
- The Temperature Humidity Monitoring System of Soil Based on Wireless Sensor Networks using Arduino
- RFID based Electronic Passport System for Easy Governance using Arduino
- Arduino based RFID Sensed Device Access
- Arduino based DC Motor Speed Control
- Arduino Based Line Following Robot
- Zigbee based Automatic Meter Reading System
- GSM based Electricity Energy Meter Billing with Onsite Display
- Android Phone Speech Recognition Sensed Voice Command based Notice Board Display
- Parking Availability Indication System
- Voice Controlled Home Appliances
- Remote Control Home Appliances
- PC Mouse operated Electrical Load Control Using VB Application
- Solar Highway Lighting System with Auto Turn Off in Daytime
- 8051 Microcontroller based Wireless Energy Meter
- Farmer Friendly Solar Based Electric Fence for Deterring Cattles
- Vehicle Movement Sensed Streetlight with Daytime auto off Features
Register provides a fast way to collect and store data using microcontrollers and processors.If we want to manipulate data with a controller or processor by performing tasks like addition, subtraction, and so on, we cannot do that directly in the memory, in order to perform these tasks we need registers to process and store the data. Microcontrollers contain several types of registers that can be classified according to their content or instructions that operate on them.
The 8051 microcontroller contains mainly two types of registers:
- General purpose registers (Byte addressable registers)
- Special function registers (Bit addressable registers)
The 8051 microcontroller consists of 256 bytes of RAM memory, which is divided into two ways, such as 128 bytes for general purpose and 128 bytes for special function registers (SFR) memory. The memory which is used for general purpose is called as RAM memory, and the memory used for SFR contains all the peripheral related registers like Accumulator, ‘B’ register, Timers or Counters, and interrupt related registers.
Interrupt: An interrupt is a signal to the processor emitted by hardware or software indicating an event that needs immediate attention. An interrupt alerts the processor to a high-priority condition requiring the interruption of the current code the processor is executing.The processor responds by suspending its current activities, saving its state, and executing a function called an interrupt handler (or an interrupt service routine, ISR) to deal with the event. This interruption is temporary, and, after the interrupt handler finishes, the processor resumes normal activities.There are two types of interrupts: hardware interrupts and software interrupts.(source: https://en.wikipedia.org/wiki/Interrupt)
8051 Microcontroller is based on Harvard Architecture and developed primarily for use in embedded systems technology.Its architecture consists of following units
- Central Processor Unit (CPU)
- Input/Output Port
Address Bus: Address Bus is used for address memory locations and to transfer the address from CPU to Memory of the microcontroller.Microcontroller 8051 has a 16 bit address bus for transferring the data.8051 have four addressing modes they are
- Immediate addressing modes.
- Bank address (or) Register addressing mode.
- Direct Addressing mode.
- Register indirect addressing mode.
Data Bus:Data Bus is used to transfer data within Microprocessor and Memory/Input or Output devices. It is bi-directional as Microprocessor requires to send or receive data. The data bus also works as address bus when multiplexed with lower order address bus. 8051 has 8 bits of the data bus, which is used to carry data of particular applications
Control Bus:Control bus manages the information flow between components indicating whether the operation is a read or a write and ensuring that the operation happens at the right time.
- External interrupt 0 (IE0) has highest priority among interrupts.
- Timer interrupt 0 (TF0)
- External interrupt 1 (IE1)
- Timer interrupt 1 (TF1) has lowest priority among other interrupts.
- Serial port Interrupt
Subscribe Our NewsLetter
Never Miss an Articles from us.
- Common Interview Questions
- Python Flask Interview Questions
- NoSQL interview questions
- JQuery Interview Questions
- C programming interview questions
- AngularJS Interview Questions
- Node JS Interview Questions with Express
- Core Java interview questions
- HTML Interview Questions
- Laravel interview questions
- Wordpress Interview Questions
- Core PHP Interview Questions