SlideShare une entreprise Scribd logo
1  sur  40
Introduction to
PIC16F877
Microcontrollers
Introduction
   • What is PIC?
     - A family of Harvard architecture microcontrollers made by
     Microchip Technology
     - Derived from the PIC1650 originally developed by
     General Instrument Microelectronics Division.
     - The name PIC was originally an acronym for " Peripheral
     Interface Controller ".




Technology beyond the Dreams™               Copyright © 2006 Pantech Solutions Pvt Ltd.
Introduction
   • Why PIC is popular?
        low cost ,wide availability with high clock speed
        availability of low cost or free development tools
        Only 37 instructions to remember
        serial programming and re-programming with flash
         memory capability
        Its code is extremely efficient, allowing the PIC to run
         with typically less program memory than its larger
         competitors
        PIC is very small and easy to implement for non-
         complex problems and usually accompanies to the
         microprocessors as an interface

Technology beyond the Dreams™                 Copyright © 2006 Pantech Solutions Pvt Ltd.
Two Different Architectures
    • Harvard Architectures     • Von-Neumann Architecture
          (newer arch.)




Technology beyond the Dreams™           Copyright © 2006 Pantech Solutions Pvt Ltd.
Two Different Architectures
    •   Harvard Architectures                   •   Von-Neumann Architecture




    •   Used mostly in RISC CPUs                •   Used in: 80X86 (CISC PCs)
    •   Separate program bus and data bus:      •   Only one bus between CPU and
        can be of different widths                  memory
    •   For example, PICs use:                  •   RAM and program memory share the
         – Data memory (RAM): a small number        same bus and the same memory, and
           of 8bit registers                        so must have the same bit width
         – Program memory (ROM): 12bit, 14bit   •   Bottleneck: Getting instructions
           or 16bit wide (in EPROM, FLASH, or       interferes with accessing RAM
           ROM)




Technology beyond the Dreams™                                  Copyright © 2006 Pantech Solutions Pvt Ltd.
RISC vs. CISC
    • Reduced Instruction Set           • Complex Instruction Set
      Computer (RISC)                     Computer (CISC)
        – Used in: SPARC, ALPHA,           – Used in: 80X86, 8051, 68HC11,
          Atmel AVR, etc.                    etc.
        – Few instructions                 – Many instructions
           (usually < 50)                      (usually > 100)
        – Only a few addressing modes      – Several addressing modes
        – Executes 1 instruction in 1      – Usually takes more than 1
          internal clock cycle (Tcyc)        internal clock cycle (Tcyc) to
                                             execute




Technology beyond the Dreams™                     Copyright © 2006 Pantech Solutions Pvt Ltd.
Family Core Architecture
                       Differences
    The     PIC Family: Cores
        12bit   cores with 33 instructions: 12C50x, 16C5x

        14bit   cores with 35 instructions: 12C67x,16Cxxx

        16bit   cores with 58 instructions: 17C4x,17C7xx

        „Enhanced‟ 16bit   cores with 77 instructions: 18Cxxx


Technology beyond the Dreams™                 Copyright © 2006 Pantech Solutions Pvt Ltd.
The PIC Family: Speed
   • Can use crystals, clock oscillators, or even an RC circuit.
   • Some PICs have a built in 4MHz RC clock, Not very
     accurate, but requires no external components!
   • Instruction speed = 1/4 clock speed (Tcyc = 4 * Tclk)
   • All PICs can be run from DC to their maximum specified
     speed:
                          12C50x            4MHz


                          12C67x            10MHz
                          16Cxxx            20MHz
                          17C4x / 17C7xxx   33MHz
                          18Cxxx            40MHz

Technology beyond the Dreams™                  Copyright © 2006 Pantech Solutions Pvt Ltd.
Clock and Instruction Cycles
   • Instruction Clock
       –   Clock from the oscillator enters a microcontroller via OSC1 pin where internal circuit of a microcontroller divides
           the clock into four even clocks Q1, Q2, Q3, and Q4 which do not overlap.
       –   These four clocks make up one instruction cycle (also called machine cycle) during which one instruction is
           executed.
       –   Execution of instruction starts by calling an instruction that is next in string.
       –   Instruction is called from program memory on every Q1 and is written in instruction register on Q4.
       –   Decoding and execution of instruction are done between the next Q1 and Q4 cycles. On the following diagram
           we can see the relationship between instruction cycle and clock of the oscillator (OSC1) as well as that of
           internal clocks Q1-Q4.
       –   Program counter (PC) holds information about the address of the next instruction.




Technology beyond the Dreams™                                                        Copyright © 2006 Pantech Solutions Pvt Ltd.
Pipelining in PIC
   • Instruction Pipeline Flow




Technology beyond the Dreams™    Copyright © 2006 Pantech Solutions Pvt Ltd.
The PIC Family: Program Memory
    • Technology: EPROM, FLASH, or ROM
    • It varies in size from one chip to another.
           - examples:
                12C508             512            12bit
                                              instructions
                16C711           1024 (1k)        14bit
                                              instructions
                16F877           8192 (8k)        14bit
                                              instructions
                17C766          16384 (16k)       16bit
                                              instructions


Technology beyond the Dreams™                  Copyright © 2006 Pantech Solutions Pvt Ltd.
The PIC Family: Data Memory
    • PICs use general purpose “File registers” for RAM
      (each register is 8bits for all PICs)
         - examples:

                    12C508       25B RAM

                    16C71C       36B RAM
                    16F877       368B RAM + 256B of
                                 nonvolatile EEPROM

                    17C766       902B RAM




Technology beyond the Dreams™          Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Programming Procedure
   • For example: in programming an embedded PIC featuring electronically erasable
     programmable read-only memory (EEPROM). The essential steps are:

       – Step 1: On a PC, type the program, successfully compile it and then generate the HEX
          file.

       – Step 2: Using a PIC device programmer, upload the HEX file into the PIC. This step is
          often called "burning".

       – Step 3: Insert your PIC into your circuit, power up and verify the program works as
          expected. This step is often called "dropping" the chip. If it isn't, you must go to Step 1
          and debug your program and repeat burning and dropping.




Technology beyond the Dreams™                                       Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC16F877A Features

     High Performance RISC CPU:
     • Only 35 single word instructions to learn

     • All single cycle instructions except for program branches,
       which are two-cycle

     • Operating speed: DC - 20 MHz clock input DC - 200 ns
       instruction cycle


Technology beyond the Dreams™                Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC16F877A Pin Layout
ADC inputs
  PORTA                                                       PORTB
Counter
0
PORTE
external
input                                                        PORTD

  PORT                                                         PORTC
  C




Technology beyond the Dreams™
                                PORT   Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Memory
       The PIC16F877A has an 8192 (8k) 14bit instruction
        program memory

       368 Bytes Registers as Data Memory :
          Special Function Registers: used to control peripherals
           and PIC behaviors
          General Purpose Registers: used to a normal
           temporary storage space (RAM)

       256 Bytes of nonvolatile EEPROM

Technology beyond the Dreams™                Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Program Memory
      The PIC16F877 8192 (8k) 14bit instructions
                                    Takes a max of 8
                                    addresses, the ninth address
                                When the
                                    will write over the first.
                                controller is
                                reset, program
                                execution starts
                                from here
                                 If interrupted, program
                                 execution continues
                                 from here




Technology beyond the Dreams™                Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Data Memory
The
most
importa
nt
registers
have
addresses
in all
the four
banks



                 The data memory is devided into 4 memory banks
Technology beyond the Dreams™               Copyright © 2006 Pantech Solutions Pvt Ltd.
Register Addressing Modes
                                   Immediate Addressing:
                                        Movlw H‟0F‟




    Indirect Addressing:
    Direct Addressing:
    • Full7 bits register address is written the special function
    Uses 8 bit of 14 bit instruction to identify a register file
    register FSR 9th bit comes from RP0 and RP1 bits of
    address 8th and
    • INDF isregister. get the content of the address pointed by FSR
    STATUS used to
    • Exp : A sample program to clear RAM locations H‟20‟ –
    i.e.    Z equ D‟2‟                 ; Z=2
    H‟2F: btfss STATUS, Z                    ; test if the 3rd bit of the
            MOVLW 0x20 ;initialize pointer
Technology beyond theRAM set ™
    STATUS register Dreams
            MOVWF FSR ;to is
                                                             Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Family Control Registers
   • Uses a series of “Special Function Registers” for
     controlling peripherals and PIC behaviors.

        STATUS     Bank select bits, ALU bits (zero, borrow,
         carry)
        INTCON  Interrupt control: interrupt enables, flags, etc.

        OPTION_REG        contains various control bits to
         configure the TMR0 prescaler/WDT postscaler
         ,the External INT Interrupt, TMR0 and the weak
         pull-ups on PORTB

Technology beyond the Dreams™                 Copyright © 2006 Pantech Solutions Pvt Ltd.
Special Function Register
                   STATUS Register




Technology beyond the Dreams™      Copyright © 2006 Pantech Solutions Pvt Ltd.
Special Function Register
                   INTCON Register




Technology beyond the Dreams™      Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Peripherals
      Each peripheral has a set of SFRs to control its operation.

      Different PICs have different on-board peripherals




Technology beyond the Dreams™                 Copyright © 2006 Pantech Solutions Pvt Ltd.
Peripheral Features
          5 Digital I/O Ports
          Three timer/counter modules
               Timer0: 8-bit timer/counter with 8-bit pre-scaler
               Timer1: 16-bit timer/counter with pre-scaler, can be incremented during SLEEP via
                external crystal/clock
               Timer2: 8-bit timer/counter with 8-bit period register, pre-scaler and post-scaler
          A 10-bit ADC with 8 inputs
          Two Capture, Compare, PWM modules
              Capture is 16-bit, max. resolution is 12.5 ns

              Compare is 16-bit, max. resolution is 200 ns

              PWM max. resolution is 10-bit

          Synchronous Serial Port (SSP) with SPI™ (Master mode) and I2C™ (Master/Slave)
          Universal Synchronous Asynchronous Receiver Transmitter (USART/SCI) with 9-
           bit address detection
          Parallel Slave Port (PSP) 8-bits wide, with external RD, WR and CS controls


Technology beyond the Dreams™                                          Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Peripherals: Ports (Digital
                                         I/O)
       Ports are basically digital I/O pins which exist in all PICs

      The PIC16F877A have the following ports:
         PORT A has 6 bit wide, Bidirectional
         PORT B,C,D have 8 bit wide, Bidirectional
         PORT E has 3 bit wide, Bidirectional


      Ports have 2 control registers
         TRISx sets whether each pin is an input (1) or output (0)
         PORTx sets their output bit levels or contain their input bit levels


      Pin functionality “overloaded” with other features
      Most pins have 25mA source/sink thus it can drive LEDs directly

Technology beyond the Dreams™                             Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Peripherals: Analogue to
               Digital Converter
        Only    available in 14bit and 16bit cores


        Fs   (sample rate) < 54KHz


        the   result is a 10 bit digital number


        Can generate an interrupt when ADC conversion is
         done
Technology beyond the Dreams™                Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Peripherals: Analogue to Digital
                   Converter
      The A/D module has four registers. These registers are:
          A/D Result High Register (ADRESH)
          A/D Result Low Register (ADRESL)
          A/D Control Register0 (ADCON0)
          A/D Control Register1 (ADCON1)
      Multiplexed 8 channel inputs
          Must wait Tacq to charge up sampling capacitor
      Can take a reference voltage different from that of the
       controller




Technology beyond the Dreams™                               Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Peripherals: USART: UART
    Serial Communications Peripheral:
   Universal Synch./Asynch. Receiver/Transmitter

      Interrupt on TX buffer empty and RX buffer full

      Asynchronous communication: UART (RS-232C serial)
         Can do 300bps - 115kbps
         8 or 9 bits, parity, start and stop bits, etc.
         Outputs 5V so you need a RS232 level converter (e.g.,
          MAX232)

Technology beyond the Dreams™                   Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Peripherals: USART: UART
      Synchronous communication: i.e., with clock signal

      SPI = Serial Peripheral Interface
         3 wire: Data in, Data out, Clock
         Master/Slave (can have multiple masters)
         Very high speed (1.6Mbps)
         Full speed simultaneous send and receive (Full duplex)


      I2C = Inter IC
         2 wire: Data and Clock
         Master/Slave (Single master only; multiple masters clumsy)
         Lots of cheap I2C chips available; typically < 100kbps

Technology beyond the Dreams™                          Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC Peripherals: Timers
      Available in all PICs.

      generate interrupts on timer overflow.

      Some 8bits, some 16bits, some have prescalers and/or
       postscalers

     Can use external pins as clock in/clock out
   (ie, for counting events or using a different Fosc)

Technology beyond the Dreams™                   Copyright © 2006 Pantech Solutions Pvt Ltd.
Timer 0 Block Diagram




Technology beyond the Dreams™     Copyright © 2006 Pantech Solutions Pvt Ltd.
Special Function Register
                 OPTION_REG Register




Technology beyond the Dreams™      Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC16F877A Block Diagram
  Instructio
  n                                           Data
  Memory                                      Memor
    Instructi                                 y
                                                Data
    on Bus           must be                    Bus
                     involved
                     in all
                     arithmeti
                     c           Most
                     operation   important
                     s           register
                                 in the
                                 PIC


Technology beyond the Dreams™                Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC16F877A Block Diagram



                                Brown-out: when the supplying
 Keep the                       voltage falls below a trip point
 Keep the in
 controller                     This ensures that the device does
                                (BVDD).
 Resets the in
 controller
 reset state                    not continue program execution
 Resets the
 controller
 reset power
 until state                    outside the valid operation range
 controller                     Typically used in AC line or large
 after thean
 until a
 reaches                        of the device
 after                          battery application where large
 specified is
 oscillator
 acceptable
 detecting                      loads maybe switched in and cause
 time &&
 started
 level
 Brown-Out                      the device voltage to temporarily
 stable
 steady
 condition                      fall below the specified operating
                                minimum
Technology beyond the Dreams™               Copyright © 2006 Pantech Solutions Pvt Ltd.
PIC16F877A Instruction Set




Technology beyond the Dreams™   Copyright © 2006 Pantech Solutions Pvt Ltd.
Literal and Control Instructions




Technology beyond the Dreams™    Copyright © 2006 Pantech Solutions Pvt Ltd.
Byte-Oriented Instructions




Technology beyond the Dreams™    Copyright © 2006 Pantech Solutions Pvt Ltd.
Bit-Oriented Instructions




Technology beyond the Dreams™      Copyright © 2006 Pantech Solutions Pvt Ltd.
Technology beyond the Dreams™   Copyright © 2006 Pantech Solutions Pvt Ltd.
For more details
         –   www.pantechsolutions.net
         –   http://www.slideshare.net/pantechsolutions
         –   http://www.scribd.com/pantechsolutions
         –   http://www.youtube.com/pantechsolutions




Technology beyond the Dreams™                 Copyright © 2006 Pantech Solutions Pvt Ltd.

Contenu connexe

Tendances

ARM - Advance RISC Machine
ARM - Advance RISC MachineARM - Advance RISC Machine
ARM - Advance RISC MachineEdutechLearners
 
Introduction to pic microcontroller
Introduction to pic microcontrollerIntroduction to pic microcontroller
Introduction to pic microcontrollerRAMPRAKASHT1
 
Microcontroller-8051.ppt
Microcontroller-8051.pptMicrocontroller-8051.ppt
Microcontroller-8051.pptDr.YNM
 
Introduction to MPLAB IDE
Introduction to MPLAB IDEIntroduction to MPLAB IDE
Introduction to MPLAB IDEKarim El-Rayes
 
L15 timers-counters-in-atmega328 p
L15 timers-counters-in-atmega328 pL15 timers-counters-in-atmega328 p
L15 timers-counters-in-atmega328 prsamurti
 
Soc architecture and design
Soc architecture and designSoc architecture and design
Soc architecture and designSatya Harish
 
PIC MICROCONTROLLERS -CLASS NOTES
PIC MICROCONTROLLERS -CLASS NOTESPIC MICROCONTROLLERS -CLASS NOTES
PIC MICROCONTROLLERS -CLASS NOTESDr.YNM
 
I2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacingI2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacingBhargav Kakadiya
 
Introduction to arm architecture
Introduction to arm architectureIntroduction to arm architecture
Introduction to arm architectureZakaria Gomaa
 
PIC16F877A interfacing with LCD
PIC16F877A interfacing with LCDPIC16F877A interfacing with LCD
PIC16F877A interfacing with LCDsunil polo
 
Embedded C programming based on 8051 microcontroller
Embedded C programming based on 8051 microcontrollerEmbedded C programming based on 8051 microcontroller
Embedded C programming based on 8051 microcontrollerGaurav Verma
 
The ARM Architecture: ARM : ARM Architecture
The ARM Architecture: ARM : ARM ArchitectureThe ARM Architecture: ARM : ARM Architecture
The ARM Architecture: ARM : ARM Architecturesreea4
 

Tendances (20)

ARM - Advance RISC Machine
ARM - Advance RISC MachineARM - Advance RISC Machine
ARM - Advance RISC Machine
 
Introduction to pic microcontroller
Introduction to pic microcontrollerIntroduction to pic microcontroller
Introduction to pic microcontroller
 
Microcontroller-8051.ppt
Microcontroller-8051.pptMicrocontroller-8051.ppt
Microcontroller-8051.ppt
 
Introduction to MPLAB IDE
Introduction to MPLAB IDEIntroduction to MPLAB IDE
Introduction to MPLAB IDE
 
L15 timers-counters-in-atmega328 p
L15 timers-counters-in-atmega328 pL15 timers-counters-in-atmega328 p
L15 timers-counters-in-atmega328 p
 
Soc architecture and design
Soc architecture and designSoc architecture and design
Soc architecture and design
 
System on Chip (SoC)
System on Chip (SoC)System on Chip (SoC)
System on Chip (SoC)
 
PIC MICROCONTROLLERS -CLASS NOTES
PIC MICROCONTROLLERS -CLASS NOTESPIC MICROCONTROLLERS -CLASS NOTES
PIC MICROCONTROLLERS -CLASS NOTES
 
8086 Microprocessor
8086 Microprocessor8086 Microprocessor
8086 Microprocessor
 
memory 8051
memory  8051memory  8051
memory 8051
 
STM32 MCU Family
STM32 MCU FamilySTM32 MCU Family
STM32 MCU Family
 
I2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacingI2C protocol and DS1307 RTC interfacing
I2C protocol and DS1307 RTC interfacing
 
8253
82538253
8253
 
Introduction to arm architecture
Introduction to arm architectureIntroduction to arm architecture
Introduction to arm architecture
 
I2C Protocol
I2C ProtocolI2C Protocol
I2C Protocol
 
dual-port RAM (DPRAM)
dual-port RAM (DPRAM)dual-port RAM (DPRAM)
dual-port RAM (DPRAM)
 
PIC16F877A interfacing with LCD
PIC16F877A interfacing with LCDPIC16F877A interfacing with LCD
PIC16F877A interfacing with LCD
 
AMBA BUS.pptx
AMBA BUS.pptxAMBA BUS.pptx
AMBA BUS.pptx
 
Embedded C programming based on 8051 microcontroller
Embedded C programming based on 8051 microcontrollerEmbedded C programming based on 8051 microcontroller
Embedded C programming based on 8051 microcontroller
 
The ARM Architecture: ARM : ARM Architecture
The ARM Architecture: ARM : ARM ArchitectureThe ARM Architecture: ARM : ARM Architecture
The ARM Architecture: ARM : ARM Architecture
 

En vedette

PIC-MICROCONTROLLER TUTORIALS FOR BEGINNERS
PIC-MICROCONTROLLER TUTORIALS FOR BEGINNERSPIC-MICROCONTROLLER TUTORIALS FOR BEGINNERS
PIC-MICROCONTROLLER TUTORIALS FOR BEGINNERSVISHNU KP
 
PIC 16F877A by PARTHIBAN. S.
PIC 16F877A   by PARTHIBAN. S.PIC 16F877A   by PARTHIBAN. S.
PIC 16F877A by PARTHIBAN. S.parthi_arjun
 
Programming with PIC microcontroller
Programming with PIC microcontroller Programming with PIC microcontroller
Programming with PIC microcontroller Raghav Shetty
 
Chp4 introduction to the pic microcontroller copy
Chp4 introduction to the pic microcontroller   copyChp4 introduction to the pic microcontroller   copy
Chp4 introduction to the pic microcontroller copymkazree
 
Microchip's PIC Micro Controller
Microchip's PIC Micro ControllerMicrochip's PIC Micro Controller
Microchip's PIC Micro ControllerMidhu S V Unnithan
 
Introduction To Embedded Systems
Introduction To Embedded SystemsIntroduction To Embedded Systems
Introduction To Embedded SystemsVishwa Mohan
 
Tutorial dec0604(print24) Programming a PIC
Tutorial dec0604(print24) Programming a PICTutorial dec0604(print24) Programming a PIC
Tutorial dec0604(print24) Programming a PICMuhammad Khan
 
Chapter 3 pic16 f887 microcontroller - book_ pic microcontrollers - programm...
Chapter 3  pic16 f887 microcontroller - book_ pic microcontrollers - programm...Chapter 3  pic16 f887 microcontroller - book_ pic microcontrollers - programm...
Chapter 3 pic16 f887 microcontroller - book_ pic microcontrollers - programm...Robson_Dutra
 
Pic microcontrollers for_beginners
Pic microcontrollers for_beginnersPic microcontrollers for_beginners
Pic microcontrollers for_beginnersPraveen Chary
 
PIC microcontroller review
PIC microcontroller reviewPIC microcontroller review
PIC microcontroller reviewMohsen Sarakbi
 
Introduction to Embedded Systems and Microcontrollers
Introduction to Embedded Systems and MicrocontrollersIntroduction to Embedded Systems and Microcontrollers
Introduction to Embedded Systems and MicrocontrollersIslam Samir
 
Unit 1 embedded systems and applications
Unit 1 embedded systems and applicationsUnit 1 embedded systems and applications
Unit 1 embedded systems and applicationsDr.YNM
 

En vedette (17)

PIC-MICROCONTROLLER TUTORIALS FOR BEGINNERS
PIC-MICROCONTROLLER TUTORIALS FOR BEGINNERSPIC-MICROCONTROLLER TUTORIALS FOR BEGINNERS
PIC-MICROCONTROLLER TUTORIALS FOR BEGINNERS
 
PIC 16F877A by PARTHIBAN. S.
PIC 16F877A   by PARTHIBAN. S.PIC 16F877A   by PARTHIBAN. S.
PIC 16F877A by PARTHIBAN. S.
 
Programming with PIC microcontroller
Programming with PIC microcontroller Programming with PIC microcontroller
Programming with PIC microcontroller
 
Chp4 introduction to the pic microcontroller copy
Chp4 introduction to the pic microcontroller   copyChp4 introduction to the pic microcontroller   copy
Chp4 introduction to the pic microcontroller copy
 
Pic microcontroller step by step your complete guide
Pic microcontroller step by step your complete guidePic microcontroller step by step your complete guide
Pic microcontroller step by step your complete guide
 
Microchip's PIC Micro Controller
Microchip's PIC Micro ControllerMicrochip's PIC Micro Controller
Microchip's PIC Micro Controller
 
Introduction To Embedded Systems
Introduction To Embedded SystemsIntroduction To Embedded Systems
Introduction To Embedded Systems
 
Embedded System Basics
Embedded System BasicsEmbedded System Basics
Embedded System Basics
 
Tutorial dec0604(print24) Programming a PIC
Tutorial dec0604(print24) Programming a PICTutorial dec0604(print24) Programming a PIC
Tutorial dec0604(print24) Programming a PIC
 
Chapter 3 pic16 f887 microcontroller - book_ pic microcontrollers - programm...
Chapter 3  pic16 f887 microcontroller - book_ pic microcontrollers - programm...Chapter 3  pic16 f887 microcontroller - book_ pic microcontrollers - programm...
Chapter 3 pic16 f887 microcontroller - book_ pic microcontrollers - programm...
 
Pic microcontrollers for_beginners
Pic microcontrollers for_beginnersPic microcontrollers for_beginners
Pic microcontrollers for_beginners
 
I o ports.ppt
I o ports.pptI o ports.ppt
I o ports.ppt
 
PIC microcontroller review
PIC microcontroller reviewPIC microcontroller review
PIC microcontroller review
 
Introduction to Embedded Systems and Microcontrollers
Introduction to Embedded Systems and MicrocontrollersIntroduction to Embedded Systems and Microcontrollers
Introduction to Embedded Systems and Microcontrollers
 
Introduction in microcontroller
Introduction in microcontrollerIntroduction in microcontroller
Introduction in microcontroller
 
Embedded C
Embedded CEmbedded C
Embedded C
 
Unit 1 embedded systems and applications
Unit 1 embedded systems and applicationsUnit 1 embedded systems and applications
Unit 1 embedded systems and applications
 

Similaire à Getting started with pic microcontrollers

Introduction2_PIC.ppt
Introduction2_PIC.pptIntroduction2_PIC.ppt
Introduction2_PIC.pptAakashRawat35
 
PIC introduction + mapping
PIC introduction + mappingPIC introduction + mapping
PIC introduction + mappingOsaMa Hasan
 
The sunsparc architecture
The sunsparc architectureThe sunsparc architecture
The sunsparc architectureTaha Malampatti
 
Module 1 - ARM 32 Bit Microcontroller
Module 1 - ARM 32 Bit Microcontroller Module 1 - ARM 32 Bit Microcontroller
Module 1 - ARM 32 Bit Microcontroller Amogha Bandrikalli
 
DESIGN OF A 16-BIT HARVARD STRUCTURED RISC PROCESSOR IN CADENCE 45nmTECHNOLOGY
DESIGN OF A 16-BIT HARVARD STRUCTURED RISC PROCESSOR  IN CADENCE 45nmTECHNOLOGYDESIGN OF A 16-BIT HARVARD STRUCTURED RISC PROCESSOR  IN CADENCE 45nmTECHNOLOGY
DESIGN OF A 16-BIT HARVARD STRUCTURED RISC PROCESSOR IN CADENCE 45nmTECHNOLOGYshaikalthaf40
 
Porting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_GriffinPorting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_GriffinPeter Griffin
 
PIC1jjkkkkkkkjhgfvjitr c its GJ tagging hugg
PIC1jjkkkkkkkjhgfvjitr c its GJ tagging huggPIC1jjkkkkkkkjhgfvjitr c its GJ tagging hugg
PIC1jjkkkkkkkjhgfvjitr c its GJ tagging huggHebaEng
 
Introduction_PIC18F458_Ritula Thakur.pptx
Introduction_PIC18F458_Ritula Thakur.pptxIntroduction_PIC18F458_Ritula Thakur.pptx
Introduction_PIC18F458_Ritula Thakur.pptxAvinashJain66
 
Choosing the right processor for embedded system design
Choosing the right processor for embedded system designChoosing the right processor for embedded system design
Choosing the right processor for embedded system designPantech ProLabs India Pvt Ltd
 
01. introduction to embedded systems
01. introduction to embedded systems01. introduction to embedded systems
01. introduction to embedded systemsayush1313
 
Add sale davinci
Add sale davinciAdd sale davinci
Add sale davinciAkash Sahoo
 
Design of Software for Embedded Systems
Design of Software for Embedded SystemsDesign of Software for Embedded Systems
Design of Software for Embedded SystemsPeter Tröger
 
AN INTEGRATED FOUR-PORT DC-DC CONVERTER-CEI0080
AN INTEGRATED FOUR-PORT DC-DC CONVERTER-CEI0080AN INTEGRATED FOUR-PORT DC-DC CONVERTER-CEI0080
AN INTEGRATED FOUR-PORT DC-DC CONVERTER-CEI0080Vivek Venugopal
 

Similaire à Getting started with pic microcontrollers (20)

Introduction2_PIC.ppt
Introduction2_PIC.pptIntroduction2_PIC.ppt
Introduction2_PIC.ppt
 
PIC introduction + mapping
PIC introduction + mappingPIC introduction + mapping
PIC introduction + mapping
 
The sunsparc architecture
The sunsparc architectureThe sunsparc architecture
The sunsparc architecture
 
Processors selection
Processors selectionProcessors selection
Processors selection
 
Module 1 - ARM 32 Bit Microcontroller
Module 1 - ARM 32 Bit Microcontroller Module 1 - ARM 32 Bit Microcontroller
Module 1 - ARM 32 Bit Microcontroller
 
Datasheet
DatasheetDatasheet
Datasheet
 
datasheet.pdf
datasheet.pdfdatasheet.pdf
datasheet.pdf
 
39582 c (1)
39582 c (1)39582 c (1)
39582 c (1)
 
Pic16f87
Pic16f87Pic16f87
Pic16f87
 
DESIGN OF A 16-BIT HARVARD STRUCTURED RISC PROCESSOR IN CADENCE 45nmTECHNOLOGY
DESIGN OF A 16-BIT HARVARD STRUCTURED RISC PROCESSOR  IN CADENCE 45nmTECHNOLOGYDESIGN OF A 16-BIT HARVARD STRUCTURED RISC PROCESSOR  IN CADENCE 45nmTECHNOLOGY
DESIGN OF A 16-BIT HARVARD STRUCTURED RISC PROCESSOR IN CADENCE 45nmTECHNOLOGY
 
Porting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_GriffinPorting_uClinux_CELF2008_Griffin
Porting_uClinux_CELF2008_Griffin
 
PIC1jjkkkkkkkjhgfvjitr c its GJ tagging hugg
PIC1jjkkkkkkkjhgfvjitr c its GJ tagging huggPIC1jjkkkkkkkjhgfvjitr c its GJ tagging hugg
PIC1jjkkkkkkkjhgfvjitr c its GJ tagging hugg
 
Introduction_PIC18F458_Ritula Thakur.pptx
Introduction_PIC18F458_Ritula Thakur.pptxIntroduction_PIC18F458_Ritula Thakur.pptx
Introduction_PIC18F458_Ritula Thakur.pptx
 
Choosing the right processor for embedded system design
Choosing the right processor for embedded system designChoosing the right processor for embedded system design
Choosing the right processor for embedded system design
 
Introduction to 8085 by Adi PPT.pdf
Introduction to 8085 by Adi PPT.pdfIntroduction to 8085 by Adi PPT.pdf
Introduction to 8085 by Adi PPT.pdf
 
01. introduction to embedded systems
01. introduction to embedded systems01. introduction to embedded systems
01. introduction to embedded systems
 
Add sale davinci
Add sale davinciAdd sale davinci
Add sale davinci
 
Design of Software for Embedded Systems
Design of Software for Embedded SystemsDesign of Software for Embedded Systems
Design of Software for Embedded Systems
 
3.TechieNest microcontrollers
3.TechieNest  microcontrollers3.TechieNest  microcontrollers
3.TechieNest microcontrollers
 
AN INTEGRATED FOUR-PORT DC-DC CONVERTER-CEI0080
AN INTEGRATED FOUR-PORT DC-DC CONVERTER-CEI0080AN INTEGRATED FOUR-PORT DC-DC CONVERTER-CEI0080
AN INTEGRATED FOUR-PORT DC-DC CONVERTER-CEI0080
 

Plus de Pantech ProLabs India Pvt Ltd

Brainsense -Introduction to brain computer interface
Brainsense -Introduction to brain computer interfaceBrainsense -Introduction to brain computer interface
Brainsense -Introduction to brain computer interfacePantech ProLabs India Pvt Ltd
 

Plus de Pantech ProLabs India Pvt Ltd (20)

Registration process
Registration processRegistration process
Registration process
 
Brain Computer Interface
Brain Computer InterfaceBrain Computer Interface
Brain Computer Interface
 
Electric Vehicle Design using Matlab
Electric Vehicle Design using MatlabElectric Vehicle Design using Matlab
Electric Vehicle Design using Matlab
 
Image processing application
Image processing applicationImage processing application
Image processing application
 
Internet of Things using Raspberry Pi
Internet of Things using Raspberry PiInternet of Things using Raspberry Pi
Internet of Things using Raspberry Pi
 
Internet of Things Using Arduino
Internet of Things Using ArduinoInternet of Things Using Arduino
Internet of Things Using Arduino
 
Brain controlled robot
Brain controlled robotBrain controlled robot
Brain controlled robot
 
Brain Computer Interface-Webinar
Brain Computer Interface-WebinarBrain Computer Interface-Webinar
Brain Computer Interface-Webinar
 
Development of Deep Learning Architecture
Development of Deep Learning ArchitectureDevelopment of Deep Learning Architecture
Development of Deep Learning Architecture
 
Future of AI
Future of AIFuture of AI
Future of AI
 
Gate driver design and inductance fabrication
Gate driver design and inductance fabricationGate driver design and inductance fabrication
Gate driver design and inductance fabrication
 
Brainsense -Brain computer Interface
Brainsense -Brain computer InterfaceBrainsense -Brain computer Interface
Brainsense -Brain computer Interface
 
Median filter Implementation using TMS320C6745
Median filter Implementation using TMS320C6745Median filter Implementation using TMS320C6745
Median filter Implementation using TMS320C6745
 
Introduction to Code Composer Studio 4
Introduction to Code Composer Studio 4Introduction to Code Composer Studio 4
Introduction to Code Composer Studio 4
 
Waveform Generation Using TMS320C6745 DSP
Waveform Generation Using TMS320C6745 DSPWaveform Generation Using TMS320C6745 DSP
Waveform Generation Using TMS320C6745 DSP
 
Interfacing UART with tms320C6745
Interfacing UART with tms320C6745Interfacing UART with tms320C6745
Interfacing UART with tms320C6745
 
Switch & LED using TMS320C6745 DSP
Switch & LED using TMS320C6745 DSPSwitch & LED using TMS320C6745 DSP
Switch & LED using TMS320C6745 DSP
 
Led blinking using TMS320C6745
Led blinking using TMS320C6745Led blinking using TMS320C6745
Led blinking using TMS320C6745
 
Introduction to tms320c6745 dsp
Introduction to tms320c6745 dspIntroduction to tms320c6745 dsp
Introduction to tms320c6745 dsp
 
Brainsense -Introduction to brain computer interface
Brainsense -Introduction to brain computer interfaceBrainsense -Introduction to brain computer interface
Brainsense -Introduction to brain computer interface
 

Dernier

Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptxMusic 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptxleah joy valeriano
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptshraddhaparab530
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptxmary850239
 
Food processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsFood processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsManeerUddin
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfVanessa Camilleri
 
Activity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translationActivity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translationRosabel UA
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 

Dernier (20)

Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptxMusic 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
Music 9 - 4th quarter - Vocal Music of the Romantic Period.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
Integumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.pptIntegumentary System SMP B. Pharm Sem I.ppt
Integumentary System SMP B. Pharm Sem I.ppt
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx
 
Food processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture honsFood processing presentation for bsc agriculture hons
Food processing presentation for bsc agriculture hons
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdf
 
Activity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translationActivity 2-unit 2-update 2024. English translation
Activity 2-unit 2-update 2024. English translation
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 

Getting started with pic microcontrollers

  • 2. Introduction • What is PIC? - A family of Harvard architecture microcontrollers made by Microchip Technology - Derived from the PIC1650 originally developed by General Instrument Microelectronics Division. - The name PIC was originally an acronym for " Peripheral Interface Controller ". Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 3. Introduction • Why PIC is popular?  low cost ,wide availability with high clock speed  availability of low cost or free development tools  Only 37 instructions to remember  serial programming and re-programming with flash memory capability  Its code is extremely efficient, allowing the PIC to run with typically less program memory than its larger competitors  PIC is very small and easy to implement for non- complex problems and usually accompanies to the microprocessors as an interface Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 4. Two Different Architectures • Harvard Architectures • Von-Neumann Architecture (newer arch.) Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 5. Two Different Architectures • Harvard Architectures • Von-Neumann Architecture • Used mostly in RISC CPUs • Used in: 80X86 (CISC PCs) • Separate program bus and data bus: • Only one bus between CPU and can be of different widths memory • For example, PICs use: • RAM and program memory share the – Data memory (RAM): a small number same bus and the same memory, and of 8bit registers so must have the same bit width – Program memory (ROM): 12bit, 14bit • Bottleneck: Getting instructions or 16bit wide (in EPROM, FLASH, or interferes with accessing RAM ROM) Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 6. RISC vs. CISC • Reduced Instruction Set • Complex Instruction Set Computer (RISC) Computer (CISC) – Used in: SPARC, ALPHA, – Used in: 80X86, 8051, 68HC11, Atmel AVR, etc. etc. – Few instructions – Many instructions (usually < 50) (usually > 100) – Only a few addressing modes – Several addressing modes – Executes 1 instruction in 1 – Usually takes more than 1 internal clock cycle (Tcyc) internal clock cycle (Tcyc) to execute Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 7. Family Core Architecture Differences  The PIC Family: Cores  12bit cores with 33 instructions: 12C50x, 16C5x  14bit cores with 35 instructions: 12C67x,16Cxxx  16bit cores with 58 instructions: 17C4x,17C7xx  „Enhanced‟ 16bit cores with 77 instructions: 18Cxxx Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 8. The PIC Family: Speed • Can use crystals, clock oscillators, or even an RC circuit. • Some PICs have a built in 4MHz RC clock, Not very accurate, but requires no external components! • Instruction speed = 1/4 clock speed (Tcyc = 4 * Tclk) • All PICs can be run from DC to their maximum specified speed: 12C50x 4MHz 12C67x 10MHz 16Cxxx 20MHz 17C4x / 17C7xxx 33MHz 18Cxxx 40MHz Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 9. Clock and Instruction Cycles • Instruction Clock – Clock from the oscillator enters a microcontroller via OSC1 pin where internal circuit of a microcontroller divides the clock into four even clocks Q1, Q2, Q3, and Q4 which do not overlap. – These four clocks make up one instruction cycle (also called machine cycle) during which one instruction is executed. – Execution of instruction starts by calling an instruction that is next in string. – Instruction is called from program memory on every Q1 and is written in instruction register on Q4. – Decoding and execution of instruction are done between the next Q1 and Q4 cycles. On the following diagram we can see the relationship between instruction cycle and clock of the oscillator (OSC1) as well as that of internal clocks Q1-Q4. – Program counter (PC) holds information about the address of the next instruction. Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 10. Pipelining in PIC • Instruction Pipeline Flow Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 11. The PIC Family: Program Memory • Technology: EPROM, FLASH, or ROM • It varies in size from one chip to another. - examples: 12C508 512 12bit instructions 16C711 1024 (1k) 14bit instructions 16F877 8192 (8k) 14bit instructions 17C766 16384 (16k) 16bit instructions Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 12. The PIC Family: Data Memory • PICs use general purpose “File registers” for RAM (each register is 8bits for all PICs) - examples: 12C508 25B RAM 16C71C 36B RAM 16F877 368B RAM + 256B of nonvolatile EEPROM 17C766 902B RAM Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 13. PIC Programming Procedure • For example: in programming an embedded PIC featuring electronically erasable programmable read-only memory (EEPROM). The essential steps are: – Step 1: On a PC, type the program, successfully compile it and then generate the HEX file. – Step 2: Using a PIC device programmer, upload the HEX file into the PIC. This step is often called "burning". – Step 3: Insert your PIC into your circuit, power up and verify the program works as expected. This step is often called "dropping" the chip. If it isn't, you must go to Step 1 and debug your program and repeat burning and dropping. Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 14. PIC16F877A Features High Performance RISC CPU: • Only 35 single word instructions to learn • All single cycle instructions except for program branches, which are two-cycle • Operating speed: DC - 20 MHz clock input DC - 200 ns instruction cycle Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 15. PIC16F877A Pin Layout ADC inputs PORTA PORTB Counter 0 PORTE external input PORTD PORT PORTC C Technology beyond the Dreams™ PORT Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 16. PIC Memory  The PIC16F877A has an 8192 (8k) 14bit instruction program memory  368 Bytes Registers as Data Memory :  Special Function Registers: used to control peripherals and PIC behaviors  General Purpose Registers: used to a normal temporary storage space (RAM)  256 Bytes of nonvolatile EEPROM Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 17. PIC Program Memory  The PIC16F877 8192 (8k) 14bit instructions Takes a max of 8 addresses, the ninth address When the will write over the first. controller is reset, program execution starts from here If interrupted, program execution continues from here Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 18. PIC Data Memory The most importa nt registers have addresses in all the four banks The data memory is devided into 4 memory banks Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 19. Register Addressing Modes Immediate Addressing: Movlw H‟0F‟ Indirect Addressing: Direct Addressing: • Full7 bits register address is written the special function Uses 8 bit of 14 bit instruction to identify a register file register FSR 9th bit comes from RP0 and RP1 bits of address 8th and • INDF isregister. get the content of the address pointed by FSR STATUS used to • Exp : A sample program to clear RAM locations H‟20‟ – i.e. Z equ D‟2‟ ; Z=2 H‟2F: btfss STATUS, Z ; test if the 3rd bit of the MOVLW 0x20 ;initialize pointer Technology beyond theRAM set ™ STATUS register Dreams MOVWF FSR ;to is Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 20. PIC Family Control Registers • Uses a series of “Special Function Registers” for controlling peripherals and PIC behaviors.  STATUS  Bank select bits, ALU bits (zero, borrow, carry)  INTCON  Interrupt control: interrupt enables, flags, etc.  OPTION_REG  contains various control bits to configure the TMR0 prescaler/WDT postscaler ,the External INT Interrupt, TMR0 and the weak pull-ups on PORTB Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 21. Special Function Register STATUS Register Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 22. Special Function Register INTCON Register Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 23. PIC Peripherals  Each peripheral has a set of SFRs to control its operation.  Different PICs have different on-board peripherals Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 24. Peripheral Features  5 Digital I/O Ports  Three timer/counter modules  Timer0: 8-bit timer/counter with 8-bit pre-scaler  Timer1: 16-bit timer/counter with pre-scaler, can be incremented during SLEEP via external crystal/clock  Timer2: 8-bit timer/counter with 8-bit period register, pre-scaler and post-scaler  A 10-bit ADC with 8 inputs  Two Capture, Compare, PWM modules  Capture is 16-bit, max. resolution is 12.5 ns  Compare is 16-bit, max. resolution is 200 ns  PWM max. resolution is 10-bit  Synchronous Serial Port (SSP) with SPI™ (Master mode) and I2C™ (Master/Slave)  Universal Synchronous Asynchronous Receiver Transmitter (USART/SCI) with 9- bit address detection  Parallel Slave Port (PSP) 8-bits wide, with external RD, WR and CS controls Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 25. PIC Peripherals: Ports (Digital  I/O) Ports are basically digital I/O pins which exist in all PICs  The PIC16F877A have the following ports:  PORT A has 6 bit wide, Bidirectional  PORT B,C,D have 8 bit wide, Bidirectional  PORT E has 3 bit wide, Bidirectional  Ports have 2 control registers  TRISx sets whether each pin is an input (1) or output (0)  PORTx sets their output bit levels or contain their input bit levels  Pin functionality “overloaded” with other features  Most pins have 25mA source/sink thus it can drive LEDs directly Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 26. PIC Peripherals: Analogue to Digital Converter  Only available in 14bit and 16bit cores  Fs (sample rate) < 54KHz  the result is a 10 bit digital number  Can generate an interrupt when ADC conversion is done Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 27. PIC Peripherals: Analogue to Digital Converter  The A/D module has four registers. These registers are:  A/D Result High Register (ADRESH)  A/D Result Low Register (ADRESL)  A/D Control Register0 (ADCON0)  A/D Control Register1 (ADCON1)  Multiplexed 8 channel inputs  Must wait Tacq to charge up sampling capacitor  Can take a reference voltage different from that of the controller Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 28. PIC Peripherals: USART: UART  Serial Communications Peripheral: Universal Synch./Asynch. Receiver/Transmitter  Interrupt on TX buffer empty and RX buffer full  Asynchronous communication: UART (RS-232C serial)  Can do 300bps - 115kbps  8 or 9 bits, parity, start and stop bits, etc.  Outputs 5V so you need a RS232 level converter (e.g., MAX232) Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 29. PIC Peripherals: USART: UART  Synchronous communication: i.e., with clock signal  SPI = Serial Peripheral Interface  3 wire: Data in, Data out, Clock  Master/Slave (can have multiple masters)  Very high speed (1.6Mbps)  Full speed simultaneous send and receive (Full duplex)  I2C = Inter IC  2 wire: Data and Clock  Master/Slave (Single master only; multiple masters clumsy)  Lots of cheap I2C chips available; typically < 100kbps Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 30. PIC Peripherals: Timers  Available in all PICs.  generate interrupts on timer overflow.  Some 8bits, some 16bits, some have prescalers and/or postscalers  Can use external pins as clock in/clock out (ie, for counting events or using a different Fosc) Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 31. Timer 0 Block Diagram Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 32. Special Function Register OPTION_REG Register Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 33. PIC16F877A Block Diagram Instructio n Data Memory Memor Instructi y Data on Bus must be Bus involved in all arithmeti c Most operation important s register in the PIC Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 34. PIC16F877A Block Diagram Brown-out: when the supplying Keep the voltage falls below a trip point Keep the in controller This ensures that the device does (BVDD). Resets the in controller reset state not continue program execution Resets the controller reset power until state outside the valid operation range controller Typically used in AC line or large after thean until a reaches of the device after battery application where large specified is oscillator acceptable detecting loads maybe switched in and cause time && started level Brown-Out the device voltage to temporarily stable steady condition fall below the specified operating minimum Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 35. PIC16F877A Instruction Set Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 36. Literal and Control Instructions Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 37. Byte-Oriented Instructions Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 38. Bit-Oriented Instructions Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 39. Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.
  • 40. For more details – www.pantechsolutions.net – http://www.slideshare.net/pantechsolutions – http://www.scribd.com/pantechsolutions – http://www.youtube.com/pantechsolutions Technology beyond the Dreams™ Copyright © 2006 Pantech Solutions Pvt Ltd.