Microprocessor 8051

489 views

Published on

Published in: Engineering, Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
489
On SlideShare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
20
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Microprocessor 8051

  1. 1. PRESENTATION ON MICROPROCESSORMICROPROCESSOR 8051 By: - ANIL MAURYA ELECTRICAL & ELECTRONICS ENGINEER
  2. 2. GENERIC 8051 FEATURES •Eight bit CPU with registers A and B •Sixteen bit program counter (PC) and data pointer (DPTR) •Eight-bit program status word (PSW) •Eight bit stack pointer (SP) •128 bytes of RAM and 4K ROM •Thirty two input / output pins arranged as four 8 bit ports: P0-P3 •Two 16-bit timers /counters: T0 and T1•Two 16-bit timers /counters: T0 and T1 •Full duplex serial data receiver and transmitter: SBUF •Two external and three internal interrupt sources •Control registers TCON, TMOD, SCON, PCON, IP and IE. •Oscillator and the clock circuits.
  3. 3. Math Register A and B CPU Registers: A Register (Accumulator) B Register Multiplication and division can be performed only upon numbers stored in the A and B registers. All other instructions in the program can use this register as a spare accumulator (A).
  4. 4. Program Status Word (PSW) Register P - Parity bit. If a number stored in the accumulator is even then this bit will be automatically set (1), otherwise it will be cleared (0). It is mainly used during data transmit and receive via serial communication.communication. OV Overflow occurs when the result of an arithmetical operation is larger than 255 and cannot be stored in one register. Overflow condition causes the OV bit to be set (1). Otherwise, it will be cleared (0). RS0, RS1 - Register bank select bits. These two bits are used to select one of four register banks of RAM. By setting and clearing these bits, registers R0-R7 are stored in one of four banks of RAM.
  5. 5. F0 - Flag 0. This is a general-purpose bit available for use. AC - Auxiliary Carry Flag is used for BCD operations only. CY - Carry Flag is the (ninth) auxiliary bit used for all arithmetical operations and shift instructions.
  6. 6. INTRNAL RAM
  7. 7. REGISTER Bank BANK1 BANK2 BANK3BANK0
  8. 8. Internal ROM Microcontroller has a 4 K byte internal ROM. The opcodes of the instruction stored in the ROM. The opcode fetch from the internal ROM.
  9. 9. DATA POINTER
  10. 10. Stack Pointer (SP) Register
  11. 11. I/O Ports: Port 0: Port 0 is 8 bit port. It used as a input port or output port .when used as a output port ,the pin latches that programmed to a 0 ,if used as a output port ,the pin latches that programmed to a 1.it Also provide the facility for low order adders bus for external memory. Port 1: Port 1is 8 bit port. It used as a input port or output port .when used as a output port ,the pin latches that programmed to a 0 ,if used as a output port ,the pin latches that programmed to a 1. Port 2: Port 0 is 8 bit port. It used as a input port or output port .when used as a output port ,the pin latches that programmed to a 0 ,if used as a output port ,the pin latches that programmed to a 1.it Also provide the facility for high order adders bus for external memory. Port 3: Port 1is 8 bit port. It used as a input port or output port .when used as a output port ,the pin latches that programmed to a 0 ,if used as a output port ,the pin latches that programmed to a 1.The port 3 alternate uses shown in the following table:
  12. 12. TIMERS AND COUNTERS The 8051 comes equipped with two 16 bit timers (T0, T1), both of which may be controlled, set, read, and configured individually. The 8051 timers have two general functions: 1 Count internal -acting as timer 2. Count external -acting as counter All counter action is controlled by the TMOD and the TCON registers.
  13. 13. TMOD Register:TMOD Register: GATE 1 /0 enables and disables Timer 1/0 by means of a signal brought to the Timer 1 Timer 0 GATE 1 /0 enables and disables Timer 1/0 by means of a signal brought to the INT1/0 pin (P3.3/P3.2) 1 - Timer 1 operates only if the INT1 bit is set. 0 - Timer 1 operates regardless of the logic state of the INT1 bit. C/T 1/0 selects pulses to be counted up by the timer/counter 1: 1 - Timer counts pulses from external source ,brought to the T1 pin (P3.5)(counter) 0 - Timer counts pulses from internal oscillator(timer) T1M1,T1M0 These two bits select the operational mode of the Timer 1.
  14. 14. Different modes of timers
  15. 15. Different modes of timers
  16. 16. TCON RegisterTCON Register TF1 bit is automatically set on the Timer 1 overflow (ie when counting is over)TF1 bit is automatically set on the Timer 1 overflow (ie when counting is over) TR1 bit enables the Timer 1. 1 - Timer 1 is enabled. 0 - Timer 1 is disabled. TF0 bit is automatically set on the Timer 0 overflow (ie when counting is over). TR0 bit enables the timer 0. 1 - Timer 0 is enabled. 0 - Timer 0 is disabled.
  17. 17. IE1 – External interrupt 1. set when INT1 is active(pin 3.3).Not related with timer/counter IT1 – If IT1 =1 , INT1 is enabled by falling edge signal to generate interrupt If IT1 =0 , INT1 is enabled by low signal to generate interrupt IE0 –External interrupt 0. set when INT0 is active(pin 3.2). Not related with timer/counter IT0 –If IT1 =1 , INT0 is enabled by falling edge signal to generate interrupt If IT1 =0 , INT0 is enabled by low signal to generate interrupt
  18. 18. UART (Universal Asynchronous Receiver and Transmitter) SBUF register holds the data SCON register controls the data communication PCON register controls data rate
  19. 19. Serial Port Control (SCON) Register SM0 – Serial port mode control bit 0 SM1 – Serial port mode control bit 1 SM2 – Multi processor communication bitSM2 – Multi processor communication bit - In mode 2 and 3, if set to 1 then interrupt is generated 9th bit of received data is 1. No interrupt is generated if 9th bit is 0 - In mode 1 , no interrupt is generated until a stop bit is received - in mode 0,it is cleared REN- Receive enable control bit . Set to 1,to enable reception.Cleared to 0 to disable reception TB8 – transmit bit 8. set and cleared by program in mode 2 and mode 3 RB8 – Receive bit 8. set and cleared by program in mode 2 and mode 3 TI – Transmit interrupt flag RI - Receive interrupt flag
  20. 20. Different mode of serial data transmission MODE 0 Bit pattern BAUD RATE = f/12 f:crystal frequency
  21. 21. Different mode of serial data transmission MODE 1 Bit pattern BAUD RATE = 2SMOD *k* oscillator freq /32*12*[256-TH1] If SMOD=0 ,then k=1 If SMOD =1, then k =2 f:crystal frequency(11.0592 MHz)
  22. 22. Different mode of serial data transmission MODE 2 Bit pattern BAUD RATE = f/32,f/64
  23. 23. Different mode of serial data transmission MODE 3 Bit pattern BAUD RATE = 2SMOD*k*oscillator freq /32*12*[256-TH1]
  24. 24. INTERRUPT Five interrupts are provided in 8051,three of these are generated automatically by internal operation two interrupts are triggered by external signals provided by circuitry that is connected to pins INT0 and INT1. Timer flag interrupt: when a timer and counter overflow the corresponding timer flag TF0 or TF1 is set to 1. Serial port interrupt: if a data byte is received an interrupt bit, RI is set to 1 in the SCON register when a data byte has binn transmitted an interrupt bit TI is set to be 1. External interrupt: pins ~INT0 and ~INT1 are used by external circuitry. Input on these pins can set the interrupt flag IE0 and IE1 in the TCON reregister to 1 by two different methods.
  25. 25. Interrupt Enable RegisterInterrupt Enable Register EA - global interrupt enable/disable: EX1 - bit enables or disables external 1 interrupt:EA - global interrupt enable/disable: 0 - disables all interrupt requests. 1 - enables all individual interrupt requests. ET2 - Reserved ES - enables or disables serial interrupt: 0 - UART system cannot generate an interrupt. 1 - UART system enables an interrupt. ET1 - bit enables or disables Timer 1 interrupt: 0 - Timer 1 cannot generate an interrupt. 1 - Timer 1 enables an interrupt. EX1 - bit enables or disables external 1 interrupt: 0 - change of the pin INT1 logic state cannot generate an interrupt. 1 - enables an external interrupt on the pin INT1 state change. ET0 - bit enables or disables timer 0 interrupt: 0 - Timer 0 cannot generate an interrupt. 1 - enables timer 0 interrupt. EX0 - bit enables or disables external 0 interrupt:
  26. 26. Interrupt Vector Location Priority External hardware interrupt 0(INT0) 0003H Highest Timer 0 interrupt ( T0) 000BHTimer 0 interrupt ( T0) 000BH External hardware interrupt 1(INT1) 0013H Timer 1interrupt ( 1) 001BH Serial communication interrupt (RI and TI) 0023H lowest
  27. 27. Interrupt priority RegisterInterrupt priority Register PS - Serial Port Interrupt priority bitPS - Serial Port Interrupt priority bit Priority 0 Priority 1 PT1 - Timer 1 interrupt priority Priority 0 Priority 1 PX1 - External Interrupt INT1 priority Priority 0 Priority 1 PT0 - Timer 0 Interrupt Priority Priority 0 Priority 1 PX0 - External Interrupt INT0 Priority Priority 0 Priority 1

×