Every now and again we take a look around at the 8051 microcontroller to select the best tutorials, simulators, compilers, programmers and present them to you in a brief overview. The choice is enormous, so the time you need to find all these resources is usually the time you should be investing in your current projects. We search for them, and we find them, so you can have it in one place.
Apr 04, 2013 Tiny 8051 Microcontroller Simulator 0.6.1 – designed for educational purposes, Tiny is a simulator written in C# language to simulate and debug the 8051 microcontroller; Compilers. The list with C or C compilers that support the 8051 microcontroller series. A vendor might sell an 8051 as an 8031 for any number of reasons, such as faulty code in the 8051's ROM, or simply an oversupply of 8051s and undersupply of 8031s. The 8052 was an enhanced version of the original 8051 that featured 256 bytes of internal RAM instead of 128 bytes, 8 KB of ROM instead of 4 KB, and a third 16-bit timer. J51 – is a java based 8051 (MCS-51) simulator which has an emulator integrated with disassembler, debugger, SDCC symbol table etc. A very decent documentation is available to learn more about the simulator and its usages. GSim 51 – is an open source simulator for 8051, which is completely free to download with source code.
8051 is not just a random number; it’s the name of one of the most frequently used microcontroller in robotics. This single chip microcontroller is a very small black piece where are stored functions like CPU, RAM, ROM, Timer, Serial Communication Interface, I/O ports, etc. The first version was presented in the 1980s, and since then the microcontroller has been embedded in a large variety of robotics projects.
The 8051 microcontroller is a small computer based on an architecture with support for embedded applications. This is the biggest difference between a microcontroller and microprocessor. A microprocessor is used in personal computers while a microcontroller is used for embedded systems, especially in robotics.
8051 Microcontroller Programming Tutorials
Beginners or advanced users can read these tutorials and learn how to program an 8051 microcontroller, or in the case of advanced users, can use them for inspiration.
- How to Program For 8051 Microcontroller – short tutorial with tools and steps to program the microcontroller in order to blink an LED. The tutorial can be useful for beginners;
- Driving 8 LED C Programming 8051 Microcontroller – the programming code that uses a WHILE loop construct to drive eight LED’s;
- Interfacing LED To Microcontroller & LED Blinking Program – tutorial with the steps described to show how to interface the LED to the microcontroller;
- C Programming for 8051 Using KEIL IDE – tutorial for beginners that explain how Keil development and testing software can be used in C programming for 8051 microcontrollers;
- Paul’s 8051 Tools, Projects and Free Code – tools and library for 8051 microcontroller series;
- 8051 Tutorials – a series of tutorials from where you can learn how to program the 8051 microcontroller;
- Tutorials for Microcontrollers – another series of tutorials how to write programming code for microcontrollers;
- 8051 Microcontroller Tutorials – tutorials to learn how to use C or assembly language to program the microcontroller;
- Programming Embedded Systems – introduction course for 8051 microcontroller;
- Embedded C Programming – the series of articles for 8051 microcontroller (link removed);
- 8051 Programming in C – comprehensive tutorial how to use the C programming language to write code for 8051 microcontrollers;
- USB & GLCD Expansion Board for 8051SBC – tutorial how to use and test the programming code for the Ezy USB-M01 board;
- How to Simulate a Microcontroller in Multisim – tutorial with steps to simulate the 8051 microcontroller in Multisim;
Simulators
Useful development tools compatible with the 8051 microcontroller.
- Raisonance – application simulator for 8051 microcontrollers;
- JSIM51 – one of the most popular simulators with comprehensive documentation to learn how to use the 8051 microcontroller;
- Micro C 8051 – C de programare Embedded – seria de articole pentru 8051 microcontroler;
- C51 Software – a simulator tool for classic and extended 8051 microcontrollers;
- Proteus VSM for 8051 – complete tools to develop and test programming line for all series of 8051 microcontrollers;
- Crossware 8051 – a simulation tool that creates a virtual clone of 8051 microcontrollers that runs on computers;
- EdSim51 – one of the most popular simulator tool for 8051 series with interface for virtual peripherals and keyboard, ADC, or DAC;
- Tiny 8051 Microcontroller Simulator 0.6.1 – designed for educational purposes, Tiny is a simulator written in C# language to simulate and debug the 8051 microcontroller;
Compilers
The list with C or C++ compilers that support the 8051 microcontroller series.
- SDCC – a C language compiler for a wide series of microcontrollers including the 8051 models;
- mikroC PRO for 8051 – a C compiler with friendly interface and support for Atmel and Silicon Labs microcontrollers;
- Keil – a powerful and efficient C simulator for 8051;
- TASKING – the compiler compatible with 8, 16 and 32-bit microcontrollers;
- IAR Embedded Workbench for 8051 – a C and C++ compiler for 8051;
- 8051 C Compiler – based on ANSI standard, the Crossware 8051 C compiler is designed for 8051 microcontroller series;
- 8051 C++ Compiler – a C++ simulator with support for object oriented programs;
- Ceibo 8051 C++ – a C++ compiler with support for Object Oriented Programming and used to debug and maintain the code;
- 8051 C-Compiler uC51 – a friendly interface tool based on ANSI C standard;
Programmer
In this section, we did a list of hardware devices called programmer. These devices are used to write in the 8051 microcontroller memory the machine language code.
- AS3128ZIF – ASSEMBLED USB Flash PIC Programmer with ZIF Socket (link removed)
8051 Microcontroller Instructions Set
For a precise control, the microcontrollers may operate under instructions. These instructions are commands written for microcontroller and divided into various categories including arithmetic, logic, data transfer, Boolean variables, and machine control instructions.
- 8051 Microcontroller Tutorial(basics) (link removed)
Related posts:
Below are the list of Best 8051 Microcontroller Interview Questions and Answers
1) What is 8051 Microcontroller ?
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 to 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.
2) What are registers in Microcontroller ?
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.
3) List Interrupts available in 8051 Microcontroller
- 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
- Reset
4) What is stack pointer in 8051 Microcontroller?
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)
5) List some features of 8051 Microcontroller.
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
6) What is an Interrupt service routine in Microcontroller?
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.
7) What is an interrupt? List various types of interrupts available in 8051 Microcontroller?
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)
8) Explain architecture of 8051 Microcontroller?
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)
- Interrupts
- Memory
- BUS
- Oscillator
- Input/Output Port
- Timers/Counters
9) What is Address Bus, Data Bus and Control Bus in Microprocessor 8051 ?
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.
10) Which interrupt has highest priority in Microcontroller ?
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
Take Free: 8051 microcontroller MCQ & Quiz11) List some 8051 Microcontroller applications in embedded systems ?
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
12) What are applications of 8051 microcontrollers?
The constant growth in information technology has provided many benefits of making use of a microcontroller, integrated circuits, embedded chips, microprocessors, etc. With these technologies, work is done faster and complexity is reduced. The 88051 microcontrollers are used in electronic and electrical circuits. You can also find its application in robotics and artificial intelligence.
13) What is the difference between microprocessor and microcontroller?
Microprocessor differs from microcontrollers in different areas. Based on external peripheral, storage locations like ROM (Read-only memory), RAM (Random access memory) and EEPROM are embedded in microcontroller while external circuits are used in the microprocessor. Every peripheral is on one chip but they are bulky in the microprocessor. The microcontroller is less expensive than microprocessors and devices manufactured with microprocessors are cheaper too because of the metal oxide semiconductor technology used. Microprocessors are faster than microcontrollers.
14) What is a PIC microcontroller?
PIC microcontrollers (Programmable Interface Controllers Microcontrollers) are programmable circuits that perform many functions. Pic microcontroller can be programmed to function as a timer, production line controller and other tasks. You can see programmable interface controllers in applications such as computer control systems, electronic phones, alarm systems, and every other electronic device. PIC controllers exist in different types though ones found in the GENIE range are considered as the best and they are cheap to buy.
15) What is the use of PIC microcontroller?
There are different uses of the programmable interface controller. Some of the applications are video games, peripherals, audio accessories and many more. Since this circuit is programmable, it can be used for many functions like timer and to control the production line.
16) What is ARM microcontroller?
The ARM microcontroller is considered by many as the most popular microcontroller existing in the world of the digital embedded system. Many industries prefer to make use of ARM microcontrollers because of the many exciting features. With ARM microcontroller, such industries can easily implement high performing products. The ARM microcontroller is cost-sensitive and its applications range to sensors, wireless networking, automotive body system, and others.
17) Where ARM chips are used?
Arm processors or chips are used in different electronic applications or devices. Devices, where the ARM chips are used, include tablets, multimedia players, smartphones, wearables, and other mobile devices. Arm chips need little transistors because of their instruction set. The use of ARM chips to the devices mentioned above and those not mentioned will keep on increasing because of the small size, little consumable power, and reduced complexity.
18) List some 8051 microcontroller interrupts?
There are 5 major sources of interrupt an 8051 microcontroller passes through. An interrupt is when the microprocessor stops its operation on a present task to look for signals from another task. It performs its operation on the new task before going back to the first task. The 8051 microcontroller interrupts are:
- TF0 which stands for Timer 0 overflow interrupt
- TFI which stands for Timer 1 overflow interrupt
- INT0 or External hardware interrupt
- Int1 or External hardware interrupt
- Serial communication interrupt- RI/TI
19) List some microcontroller examples?
There are many examples of the microcontroller. Some of the examples are Altera, Atmel, Espressif system, ELAN microelectronics Corp., Maxim Integrated, Cypress Semiconductor, Analog Devices, Intel, Holtek, National Semiconductor, NEC, Freescale Semiconductor, Fujitsu, Panasonic, Microchip technology, Hyperstone, Infineon, Parallax, Nuvoton technology, Sony, Toshiba, Spansion, Rockwell, XMOS, Rabbit semiconductor, Silicon Motion, Redpine signals, Ubicom, Sortable table and many more.
20) What is a data pointer in 8051 Microcontrollers?
8051 Microcontroller Projects With Source Code Free Download 64-bit
Data pointer in the 8051 microcontrollers is one of the storage registers. Other storage registers in an 8051 microcontroller are the accumulator, the stack pointer (SP), R register, B register and the program counter (PC). The Data Pointer in 8051 microcontrollers in short form DPTR is the only 2-byte register a user can access. Other registers like the B register and accumulator are 1-byte register. This data pointer just like the name implies is for data pointing. With it, the 8051 can access memory outside the system.
21) What is embedded Microcontroller?
A microcontroller is an integrated circuit that governs one particular task in an embedded system. Every typical microcontroller has a memory, a processor and input and output peripheral all on a single chip. In some cases, it is called an embedded controller and it is used in vending machines, vehicles, medical devices, home appliances, robots, and mobile radio transceivers. They are small personal computers used for controlling small features of a bigger component.
22) List major components of microcontroller?
A microcontroller has many components. Some of the major components of a microcontroller are Central processing unit(CPU), Input and output ports, Digital analog converters, Random Access Memory)(RAM), Serial interfacing ports, Read-Only Memory(ROM), Oscillatory circuits, interrupt controls, Timers and Counters and Analog to digital converters. Every microcontroller has one or more of the components mentioned above.
23) What are different types of Microcontrollers?
There are different types of microcontrollers. They include:
- PIC Microcontroller: PIC microcontroller stands for a programmable interface controller used for developing computer robotics, electronics, and similar devices. The PIC controller is made up of data bus, dedicated processor and built-in data memory that plays a role in preparing input and output methods
- ARM Microcontroller: It is more popular than other microcontrollers. The ARM means Advanced RISC Machine and widely used by industries because of its unique features. Sensor and wireless networks are some of the devices produced with ARM microcontrollers.
- 8051 Microcontroller: This is another type of microcontroller develops by Intel in the year 1981. It has 40 pins and four programmable parallel 8-bit ports.
- AVR Microcontroller: AVR microcontroller is an advanced Harvard architecture machine. The AVR in full form is Alf and Vegard's RISC Processor.
- MSP Microcontroller: The mixed-signal processor is another type of microcontroller from the Texas instruments family. It is cost-effective and gives a good performance in the denser programming code.
Ads Free Download our Android app for 8051 Microcontroller Interview Questions (Interview Mocks )
Got a Questions? Share with us
Also Read Related 8051 Microcontroller Interview Questions
Lisp Interview QuestionsC programming interview questionsEmbedded Systems interview QuestionsMainframe Interview Questions8051 Microcontroller Projects With Source Code Free Download For Ipad 7
Python Interview QuestionsRaspberry Pi interview questions8051 Microcontroller Projects With Source Code Free Download Pdf
HCL Freshers Interview Questions JBehave Interview Questions EJB Interview Questions IoT Interview Questions PHP String Interview Questions Cucumber Interview Questions Apache Storm Interview Questions Loadrunner Interview Questions Splunk Interview Questions Fedora Interview Questions TestNG Interview Questions Laravel Interview Questions Swift Interview Questions CSS interview questions React Native Interview questions Hibernate Interview Questions MVC interview questions C++ Interview Questions Data Warehousing Interview Questions Terraform Interview Questions Elixir Interview Questions XSD Interview Questions UX Designer Interview Questions Angularjs unit testing interview questions Cordova Interview Questions XHTML Interview Questions XPath Interview Questions Marionette js Interview Questions Less.js Interview Questions Handlebars js Interview Questions