intel

8
Intel 8051 From Wikipedia, the free encyclopedia (Redirected from 8051 ) Ten things you may not know about Wikipedia Jump to: navigation , search SAB-C515-LN by Infineon is based on the 8051 The Intel 8051 is a Harvard architecture , single chip microcontroller (µC) which was developed by Intel in 1980 for use in embedded systems . It was popular in the 1980s and early 1990s, but today it has largely been superseded by a vast range of enhanced devices with 8051-compatible processor cores that are manufactured by more than 20 independent manufacturers including Atmel , Infineon Technologies , Maxim Integrated Products (via its Dallas Semiconductor subsidiary), NXP (formerly Philips Semiconductor), Winbond , ST Microelectronics , Silicon Laboratories (formerly Cygnal), Texas Instruments and Cypress Semiconductor . Intel's official designation for the 8051 family of µCs is MCS 51. Intel's original 8051 family was developed using NMOS technology, but later versions, identified by a letter "C" in their name, e.g. 80C51, used CMOS technology and were less power-hungry than their NMOS predecessors - this made them eminently more suitable for battery-powered devices. Contents [hide ] 1 Important features and applications 2 Programming 3 Related processors 4 References 5 External links [edit ] Important features and applications It provides many functions (CPU , RAM , ROM , I/O , interrupt logic, timer , etc.) in a single package 8-bit data bus - It can access 8 bits of data in one operation (hence it is an 8- bit microcontroller ) 16-bit address bus - It can access 2 16 memory locations - 64 kB each of RAM and ROM

Upload: sabir-khan

Post on 22-Jul-2016

8 views

Category:

Documents


3 download

DESCRIPTION

PROJECT

TRANSCRIPT

Page 1: Intel

Intel 8051

From Wikipedia, the free encyclopedia

  (Redirected from 8051) • Ten   things   you   may   not   know   about   Wikipedia  •

Jump to: navigation, search

SAB-C515-LN by Infineon is based on the 8051

The Intel 8051 is a Harvard architecture, single chip microcontroller (µC) which was developed by Intel in 1980 for use in embedded systems. It was popular in the 1980s and early 1990s, but today it has largely been superseded by a vast range of enhanced devices with 8051-compatible processor cores that are manufactured by more than 20 independent manufacturers including Atmel, Infineon Technologies, Maxim Integrated Products (via its Dallas Semiconductor subsidiary), NXP (formerly Philips Semiconductor), Winbond, ST Microelectronics, Silicon Laboratories (formerly Cygnal), Texas Instruments and Cypress Semiconductor. Intel's official designation for the 8051 family of µCs is MCS 51.

Intel's original 8051 family was developed using NMOS technology, but later versions, identified by a letter "C" in their name, e.g.

80C51, used CMOS technology and were less power-hungry than their NMOS predecessors - this made them eminently more suitable for battery-powered devices.

Contents

[hide] 1 Important features and applications 2 Programming 3 Related processors 4 References

5 External links

[edit] Important features and applications

It provides many functions (CPU, RAM, ROM, I/O, interrupt logic, timer, etc.) in a single package 8-bit data bus - It can access 8 bits of data in one operation (hence it is an 8-bit microcontroller) 16-bit address bus - It can access 216 memory locations - 64 kB each of RAM and ROM On-chip RAM - 128 bytes ("Data Memory") On-chip ROM - 4 kB ("Program Memory") Four byte bi-directional input/output port UART (serial port) Two 16-bit timers Two-level interrupt priority Power saving mode

A particularly useful feature of the 8051 core is the inclusion of a boolean processing engine which allows bit-level boolean logic operations to be carried out directly and efficiently on internal registers and RAM. This feature helped to cement the 8051's popularity in industrial control applications. Another valued feature is that it has four separate register sets, which can be used to greatly reduce interrupt latency compared to the more common method of storing interrupt context on a stack.

Page 2: Intel

The 8051 UART can be configured to use a 9th data bit that can provide addressable communications in an RS-485 multi-point communications environment.

8051 based microcontrollers typically include one or two UARTs, two or three timers, 128 or 256 bytes of internal data RAM (16 bytes of which are bit-addressable), up to 128 bytes of I/O, 512 bytes to 64 kB of internal program memory, and sometimes a quantity of extended data RAM (ERAM) located in the external data space. The original 8051 core ran at 12 clock cycles per machine cycle, with most instructions executing in one or two machine cycles. With a 12 MHz clock frequency, the 8051 could thus execute 1 million one-cycle instructions per second or 500,000 two-cycle instructions per second. Enhanced 8051 cores are now commonly used which run at six, four, two, or even one clock per machine cycle, and have clock frequencies of up to 100 MHz, and are thus capable of an even greater number of instructions per second. All SILabs, some Dallas and a few Atmel devices have single cycle cores.

Even higher speed single cycle 8051 cores, in the range 130 MHz to 150 MHz, are now available in internet downloadable form for use in programmable logic devices such as FPGAs, and at many hundreds of MHz in ASICs, for example the netlist from www.e8051.com.

Common features included in modern 8051 based microcontrollers include built-in reset timers with brown-out detection, on-chip oscillators, self-programmable Flash ROM program memory, bootloader code in ROM, EEPROM non-volatile data storage, I²C, SPI, and USB host interfaces, PWM generators, analog comparators, A/D and D/A converters, RTCs, extra counters and timers, in-circuit debugging facilities, more interrupt sources, and extra power saving modes.

[edit] Programming

Several C compilers are available for the 8051, most of which feature extensions that allow the programmer to specify where each variable should be stored in its six types of memory, and provide access to 8051 specific hardware features such as the multiple register banks and bit manipulation instructions. Other high level languages such as Forth, BASIC, Pascal, PL/M and Modula 2 are available for the 8051, but they are less widely used than C and assembly.

[edit] Related processors

The 8051's predecessor, the 8048, was used in the keyboard of the first IBM PC, where it converted keypresses into the serial data stream which is sent to the main unit of the computer. The 8048 and derivatives are still used today for basic model keyboards.

The 8031 was a cut down version of the original Intel 8051 that did not contain any internal program memory (ROM). To use this chip external ROM is to be added that will contain the program that the 8031 will fetch and execute.

The 8052 was an enhanced version of the original Intel 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. The 8032 had these same features except for the internal ROM program memory. The 8052 and 8032 are largely considered to be obsolete because these features and more are included in nearly all modern 8051 based microcontroller.

[edit] References

Payne, William (19). Embedded Controller Forth for the 8051 Family (hardcover) (in English), Elsevier, 528. ISBN 978-0125475709. 

[edit] External links

Intel MCS 51 series microcontrollers Atmel NXP (Philips) Maxim Integrated Products Winbond Roman-Jones FPGA Based 8051 Core Silicon Labs Cypress USB Texas Instruments Dolphin Integration (8051 IP provider) Single page instruction set summary 8051 Interfacing Tutorials Free Online Book: Architecture and Programming of 8051 Microcontrollers

Page 3: Intel

The 8051/8052 Microcontroller:Architecture, Assembly Language, and Hardware Interfacing

Book: Main | Synopsis | Table of Contents | Errata/CorrectionsProfessors/Instructors: Request Free Copy

Introduction

"The 8051/8052 Microcontroller: Architecture, Assembly Language, and Hardware Interfacing" was written by Craig Steiner, the webmaster and author of 8052.com. The idea to write a complete book on the topic of the 8052 microcontroller came from the dozens-- possibly hundreds--of visitors of 8052.com who emailed me asking if a printed version of the tutorials was available, or suggesting that I write a complete book in the style and spirit of the tutorials.

After years of receiving such questions and suggestions, I decided to go ahead and follow that advice. The book uses the tutorials at 8052.com as an initial base and then builds on those chapters with additional sections on the 8052 microcontroller hardware, a functioning single-board computer, a custom monitor program, and practical interface examples that demonstrate interaction with keypads, LCDs, external I2C real-time clocks, and an external SPI serial EEPROM.

In the process of writing the book, I designed the 8052.com SBC and wrote the SBCMON monitor program to demonstrate its functionality. I also wrote the VisISP-52 in-system programming Windows application to provide an easy-to-use method to download new programs to the microcontroller. Each of these projects was developed with the specific purpose of providing a basis for discussion in the book and, as a result, the book covers each of these topics in sufficient detail for the 8052 novice to quickly get up to speed in these areas.

The book started as a simple, small project to put the current tutorials into a printed version--but as the book took form, I found that there were more and more related topics that I was compelled to discuss. The 346-page book is the result of nearly a year-long effort.

It is my sincere hope that the book will be as well-received as both 8052.com and its tutorials have been over the last 8 years.

Basic introduction to the 8051 microcontroller

The 8051 is an 8-bit microprocessor originally designed in the 1980's by Intel that has gained great popularity since its introduction. Its standard form includes several standard on-chip peripherals, including timers, counters, and UART's, plus 4kbytes of on-chip program memory and 128 bytes (note: bytes, not Kbytes) of data memory, making single-chip implementations possible. Its hundreds of derivatives, manufactured by several different companies (like Philips) include even more on-chip peripherals, such as analog-digital converters, pulse-width modulators, I2C bus interfaces, etc. Costing only a few dollars per IC, the 8051 is estimated to be used in a large percentage (maybe 1/2?) all embedded system products.

The 8051 memory architecture includes 128 bytes of data memory that are accessible directly by its instructions. A 32-byte segment of this 128 byte memory block is bit addressable by a subset of the 8051 instructions, namely the bit-instructions. External memory of up to 64 Kbytes is accessable by a special "movx" instruction. Up to 4 Kbytes of program instructions can be stored in the internal memory of the 8051, or the 8051 can be configured to use up to 64 Kbytes of external program memory The majority of the 8051's instructions are executed within 12 clock cycles.

Page 4: Intel

We developed a VHDL synthesizable model of the 8051 and a C++ based 8051 instruction-set simulator, both found below, on which we've based some research directions. One of those directions is a tuning environment, also found below, to assist a designer who wants to modify the 8051 architecture to be more power efficient for a particular program You see, a particular 8051 will probably execute the same program over and over for its lifetime, so it would be nice to orient the 8051 towards that program. We've also developed some new architectural features that can be used to lower the power of an 8051, which will appear on this page in the future.

8051-related releases

8051 Synopsys Synthesizable Model 8051 Instruction Set Simulator (C++) 8051 Power Tuning Environment 8051 Benchmarks

8051 references

www.8052.com

Synthesizable VHDL Model of 8051

The Intel 8051 is an 8-bit micro-controller. This micro-controller is capable of addressing 64K of program and 64K of data memory. The implementation below is written in Synthesizable VHDL (at least by Synopsys and Xilinx,) and models the actual Intel implementation rather closely, e.g., it is 100% instruction compatible. Visit this page for latest information and upgrades, and keep in mind that we tend to make frequent revisions. Do not hesitate to contact us regarding questions or comments. Needless to say, we do not, nor does the University of California at Riverside, provide any kind of warrantee for anything you read or download from this page.

Block Diagram

Page 5: Intel

8051 Development Board, Rev 4

The 8051 development board provides an easy-to-use and low-cost way to develop your 8051 based microcontroller projects, without purchasing any other special equipment, such as IC programmers or emulators. All required software is available as a free download, including a C compiler!

Page 6: Intel

Features:

Standard 87C52 CPU clocked at 22.1184 MHz 50 I/O lines!! All I/O lines are clearly labeled and available at the edge of the prototype construction area. 32k SRAM, program variables and code (24k usable for code download) 30k Flash ROM, non-volatile program storage and data logging High speed baud rates: 115200, 75600, 38400, etc. All standard baud rates are supported (except 300 baud) Display port, works with standard character-based LCDs. A 16x2 display will be available from PJRC (see photo

below) Eight LEDs, controlled by 8 dedicated I/O lines (not shared with the 50 I/O lines) Bus expansion with 4 chip select signals, for adding UARTs, A/D converters and other bus-based peripheral

chips. Unregulated, polarity-protected DC voltage input with 2 position terminal block. PAULMON2 monitor for easy code development without additional equipment.

Requirements:

DC Voltage, 8 to 15 volts (regulated), 50 mA or 300 mA with LCD. PC Computer With Serial Port, Linux or Microsoft Windows 95-OSR2, 98, 98SE, NT4, 2000. Assembler or Compiler, usually AS31 or SDCC Terminal Emulation Program, eg Hyperterminal (windows), Minicom (linux) Text Editor Program, eg Notepad, Vi, Emacs Standard 9 pin serial cable (straight through, not null-modem!)

LCD Display Port

The 8051 development board's LCD port provides the 14 signals needed for standard character based LCD modules. A 16x2 display is available from PJRC:

Page 7: Intel

This is a backlight display with transmissive LCD. In bright lighting (as this photo) the characters appear as highly readable green against a dark blue background. In darkness, the characters are bright green against the darker background (which does pass a small amount of the backlight, yet still remains much darker than the displayed characters). Like all character modules, eight custom (graphic) characters may be downloaded to the display, in addition to the build-in character font.

Board Photo