Book Introduction:
Microchip continually updates its product line with more capable and lower cost products. They also provide excellent development tools. Few books take advantage of all the work done by Microchip. 123 PIC Microcontroller Experiments for the Evil Genius uses the best parts, and does not become dependent on one tool type or version, to accommodate the widest audience possible. Building on the success of 123 Robotics Experiments for the Evil Genius, as well as the unbelievable sales history of Programming and Customizing the PIC Microcontroller, this book will combine the format of the evil genius title with the following of the microcontroller audience for a sure-fire hit.
Audience: Professional
Format: Paperback
Language: English
Number Of Pages: 384
Published: 21st June 2005
Dimensions (cm): 27.9 x 21.6 x 1.8
Weight (kg): 0.726
Table of Contents:
Acknowledgments | p. ix |
About the Author | p. x |
Introduction | p. 1 |
Under the Covers of the PIC16F684 | p. 13 |
I/O Pins | p. 14 |
Configuration Word | p. 16 |
PIC MCU Variable Memory, Registers, and Program Memory | p. 18 |
Simulating cFlash.c in MPLAB IDE | p. 20 |
Introductory C Programming | p. 27 |
Variable Declaration Statements | p. 28 |
C Data Types | p. 29 |
Constant Formatting | p. 31 |
Assignment Statements | p. 32 |
Expressions | p. 33 |
Bitwise Operators | p. 35 |
Logical Expressions | p. 37 |
Conditional Execution Using the If Statement | p. 39 |
Nested Conditional Statements | p. 41 |
The Switch Decision Statement | p. 43 |
Conditional Looping | p. 45 |
The For Statement | p. 46 |
Simple PIC MCU Applications | p. 51 |
Basic Delays | p. 53 |
Sequencing PICkit 1 Starter Kit LEDs | p. 55 |
Binary Number Output Using PICkit 1 Starter Kit LEDs | p. 56 |
Basic Button Inputs | p. 58 |
Debouncing Button Inputs | p. 59 |
MCLR Operation | p. 61 |
Ending Applications | p. 63 |
C Language Features | p. 67 |
Functions and Subroutines | p. 69 |
Global and Local Variables | p. 70 |
Defines and Macros | p. 71 |
Variable Arrays | p. 73 |
Structures and Unions | p. 75 |
Pointers and Lists | p. 76 |
Character Strings | p. 79 |
Library Functions | p. 81 |
PIC16F684 Microcontroller Built-in Functions | p. 89 |
Brownout Reset | p. 91 |
ADC Operation | p. 93 |
Comparator Operation | p. 96 |
Watchdog Timer | p. 99 |
Short Timer Delays Using TMR0 | p. 101 |
Using the TMR0 Prescaler | p. 102 |
Long Timer Delays Using TMR1 | p. 104 |
Comparing Clock Oscillators | p. 106 |
Pin Resistance Measurements | p. 109 |
Generating PWM Signals | p. 111 |
Storing and Retrieving Data | p. 114 |
Interfacing Projects for the PIC Microcontroller | p. 117 |
Driving a Seven-Segment LED Display Directly from the PIC16F684 | p. 119 |
Multiple Seven-Segment LED Displays | p. 121 |
LED Matrix Displays | p. 124 |
LCD Display | p. 126 |
Producing Random Numbers | p. 128 |
Two-Bit LCD Display | p. 129 |
Switch Matrix Keypad Mapping | p. 131 |
Sample C Microcontroller Applications | p. 137 |
Pumpkin LED Display | p. 138 |
Reaction-Time Tester | p. 140 |
Rokenbok Monorail/Traffic Lights | p. 143 |
Seven-Segment LED Thermometer | p. 146 |
PIC MCU “Piano” | p. 151 |
Model Railway Switch Control | p. 153 |
PC Operating Status Display | p. 156 |
Introduction to PIC MCU Assembly Language Programming | p. 159 |
The asmTemplate.asm File and Basic Directives | p. 160 |
Specifying Program Memory Addresses | p. 161 |
Loading the WREG and Saving Its Contents | p. 164 |
Defining Variables | p. 165 |
Bitwise Instructions | p. 167 |
Addition Instructions | p. 168 |
AddLibs: Strange Simulator Results | p. 170 |
Subtraction Instructions | p. 171 |
Bank Addressing | p. 173 |
Bit Instructions | p. 175 |
Bit Skip Instructions | p. 177 |
Conditional Execution | p. 178 |
decfsz Looping | p. 180 |
Subroutines | p. 181 |
Defining and Implementing Arrays | p. 182 |
PIC Microcontroller Assembly Language Resource Routines | p. 187 |
Logic Simulation Using the PIC16F684 | p. 188 |
The C “Switch” Statement | p. 191 |
Defines | p. 194 |
Conditional Assembly | p. 197 |
Macros | p. 199 |
16-Bit Values/Variables | p. 201 |
Universal Delay Macro | p. 203 |
High-Level Programming | p. 205 |
Implementing Read-Only Arrays | p. 208 |
Data Stacks | p. 210 |
Circular Buffers | p. 212 |
Reading and Writing the EEPROM Data Memory | p. 214 |
Sensors | p. 221 |
PIC MCU BS2 User Interface | p. 224 |
PIC MCU BS2 Keypad Interface | p. 230 |
PIC MCU Instrument Interface | p. 231 |
Sound Detection | p. 235 |
Multiple Microswitch Debouncing | p. 237 |
Light Sensors | p. 238 |
Infrared (IR) Surface Sensor | p. 239 |
Interfacing to Sharp GP2D120 Ranging Object Sensors | p. 242 |
Do-It-Yourself IR Object Sensor | p. 243 |
IR Object-Ranging Sensor | p. 247 |
Ultrasonic Distance-Range Sensor | p. 249 |
Robot IR Tag | p. 251 |
Motor Control | p. 255 |
DC Motor Driven Using the CCP PWM and Using a Potentiometer Control | p. 257 |
DC Motor Control with Simple TMR0 PWM | p. 261 |
Controlling Multiple Motors with PWM and BS2 Interface | p. 264 |
Bipolar Stepper Motor Control | p. 265 |
Unipolar Stepper Motor Control | p. 269 |
Radio-Control Model Servo Control | p. 272 |
Multiple Servo Control Software Structure | p. 274 |
Two-Servo Robot Base with BS2 Interface | p. 277 |
Solving Programming Problems in PIC Microcontroller Assembly Language | p. 279 |
Eight-Bit Multiplication with a 16-Bit Product | p. 280 |
Division of a 16-Bit Value by an Eight-Bit Value | p. 282 |
Squaring a Number Using Finite Difference Theory | p. 284 |
Find the Square Root of a 16-Bit Number | p. 286 |
Converting a Byte into Three Decimal, Two Hex, or Eight Binary ASCII Bytes | p. 289 |
Produce the Even Parity Values for a Byte | p. 291 |
Sort a List of 10 Eight-Bit Values Using the Bubble-Sort Algorithm | p. 292 |
Encrypt and Decrypt an ASCIIZ String Using a Simple Substitution Algorithm | p. 294 |
Generate a Fibonacci Number Sequence | p. 297 |
Find the Largest Common Factor of Two Eight-Bit Numbers | p. 298 |
ZipZaps Robot | p. 301 |
Characterizing the ZipZaps | p. 303 |
PIC MCU Power Supply | p. 305 |
PIC MCU Electronics PCB | p. 307 |
IR TV Remote Control | p. 310 |
Motor and Steering Control | p. 311 |
Basic Task-Control Software | p. 313 |
IR Remote Control | p. 316 |
Light Sensors and Following | p. 317 |
IR Object-Detection Sensors | p. 318 |
IR Line-Following Sensors | p. 320 |
Index | p. 327 |
Table of Contents provided by Ingram. All Rights Reserved. |
Link to Purchase E-Book:
123 PIC Microcontroller Experiments for the Evil Genius By Myke Predko E-book