Easy Microcontrol’n
A Beginner’s Guide to Using
PIC ® Microcontrollers
by David Benson

  • Home

  • Code

  • Sources

  • Order
    Info 


  • Go Direct
    to
    Secure Order Form 


  • Contact Us


  • “EASY MICROCONTROL’n” is intended to ease the beginner toward understanding and application of the PIC  ® line of microcontrollers from Microchip Technology, Inc. Examples of assembly language programs range from a simple one to turn on LED’s to more complex ones for timing and for event-counting. Writing programs is covered in-depth and the use of flow charts, as an aid to visualizing what a program does, is emphasized. The approach is hands-on with many examples, all of which may be demonstrated using a very simple demo board (a project) in the beginning of the book. By David Benson (8-1/2 x 11 format, 179 pages, $34.95).


    TABLE OF CONTENTS
    
    
    PRODUCT OVERVIEW
    PIC16F84
         Pins and Functions
         Package
         Clock Oscillator
         Reset
         Ports
         Special Features
            Watchdog Timer
            Power-up Timer
            Sleep Mode
         PIC Microcontroller Architecture
            Program Memory
            Weird Hex Notation
            File Registers
            Working Register (W)
            Option Register
            Stac
            Reset Vector
            Interrupt Vector
         Option Register
         Program Counter
         Status Register
         Configuration bits
    Circuit For Experiments
         Circuit For Experimenting With The PIC16F84
         Circuit Module For Experiments - 18P Board
            (AKA '84 On A Board)
    CHOOSING DEVELOPMENT TOOLS
         MPLAB
         Choosing A Device Programmer
         - PICSTART Plus
         - 3rd Party Programmer
    USING AN ASSEMBLER
         Source Code For The Assembler
            Semicolon (;)
            Tabs
         Style
         Headers
         Labels
         Equates
         Literals
         Origin
         End
         Program Format
         Files Used By Assembler
         Files Created By Assembler
         Preventing Some Gotchas
         Configuration Bits
    MPLAB OVERVIEW - GETTING STARTED
         Using MPLAB - Getting Started
            Toolbars
            Select Development Mode And Device Type
            Project
            Text Editor
            Edit Project
            Assembler
         More MPLAB Operations
    PROGRAMMING A DEVICE
    WRITING PROGRAMS
         Programming Concepts
         Instruction Set
         Weird Move Instruction
         Instruction Format For The Assembler
            Byte-Oriented Instructions
            Bit-Oriented Instructions
            Literal Instructions
            Control Instructions (CALL and GOTO)
            Destination Designator (d)
         Hexadecimal Numbers vs. MPASM Assembler
         Binary And Decimal Numbers vs. MPASM Assembler
         ASCII Characters vs. MPASM Assembler
         Addressing Modes
            Immediate addressing
            Direct Addressing
            Indirect Addressin
            Relative Addressing
            Use Of The RETLW Instruction For Accessing
               Tables of Data Via Relative Addressing
         Using The Ports
            Data Direction
            Port Read/Write
         Flags
         Simple Data Transfers
         Loop - Endless
         Loop With a Counter
         Loop Until
         Comparisons
         Bit Manipulation Using Bit Manipul
            Instructions
         Bit Manipulation Using Logic Instructions
         Using Bit Manipulation
         Sequencing
         Subroutines
         Time Delay Loop
         Lookup Tables
         Programming Style
    INTERRUPTS
         Interrupt Control Register
         Interrupt Sources
             External
             Timer/Counter
             Port B Interrupt On Change - Bits 7,6,5,4
         Global Interrupt Enable Flag
         Saving Status During An Interrupt (Context Saving)
         Where To Put The Interrupt Service Routine
         Interrupt Latency
         Multiple Interrupt Sources
         Example - External Interrupt
    TIMING AND COUNTING
         Digital Output Waveforms
         Timing And Counting Using The PIC16F84's TMR0
                 On-Board Timer/Counter
             Prescaler
             Changing Prescaler Assignment
             Using The Timer/Counter
             Timer/Counter Experiments
                 Digital Output Using TMR0 - Internal Clock
                 Single Time Interval - Internal Clock
                 Single Time Interval - External Clock
                 Free Running Mode - Internal Clock
                 Free Running Mode - External Clock
                 Counting Events (Pulses)
    FILE REGISTER BANK SWITCHING
         File Register Bank Switching
         Bank Switching Demo
         Interrupts And Bank Switching
    PROGRAM MEMORY PAGING
         14-Bit Core Mid-Range Parts
         Interrupts And Program Memory Paging
         Summary
    LOCATING TABLES IN PROGRAM MEMORY
    Include Files
    PIC16F84 DATA EEPROM MEMORY
         EEADR Register
         EEDATA Register
         EECON1 Register
         EECON2 "Register"
         Read Cycle
         Write Cycle
         Programming The Data EEPROM
         Code Protection
    MORE ABOUT CONFIGURATION BITS
    I/O CONVERSION
         Input Conversion
         Output Conversion
    MULTIPLEXED 7-SEGMENT LED DISPLAY
    MORE PIC MICROCONTROLLER BOOKS
    APPENDICES
         Appendix A - Sources
         Appendix B - Hexadecimal Numbers
         Appendix C - Program Listings vs. Page Number
    
    
    
    

      [TOP OF PAGE]

     [Home]      [ Go Direct to Secure Order Form  ]