Summary of PIC Microcontroller Project Book By John Iovine E-Book
The PIC Microcontroller Project Book (2nd ed.) by John Iovine is a comprehensive, updated guide (292 pages) covering PIC microcontrollers, PICBasic/PICBasic Pro compilers, EPIC programmer, hardware, software installation, coding, interfacing, and many projects (LCDs, motors, sensors, A/D, speech, serial comms). It includes parts lists, step-by-step examples, troubleshooting, and reference material for hobbyists and professionals.
Parts used in the PIC Microcontroller Project Book:
- PIC 16F84 microcontroller
- EPIC programmer
- ZIF adapter sockets
- AC adapter
- CodeDesigner software
- Solderless breadboard
- PIC Experimenter's Board and LCD
- X-Board LCD
- Speech chip SPO256
- TLC549 serial A/D converter
- Transistors (for motor control)
- UCN5804 stepper motor driver ICs
- Servomotors
- Diodes
- Various resistive sensors
- Toxic gas sensor (example project)
- Miscellaneous consumables (wiring, connectors)
Book Introduction:
The PIC microcontroller is enormously popular both in the U.S. and abroad. The first edition of this book was a tremendous success because of that. However, in the 4 years that have passed since the book was first published, the electronics hobbyist market has become more sophisticated. Many users of the PIC are now comfortable shelling out the $250 for the price of the Professional version of the PIC Basic (the regular version sells for $100). This new edition is fully updated and revised to include detailed directions on using both versions of the microcontroller, with no-nonsense recommendations on which is better served in different situations.
Audience: Professional
Format: Paperback
Language: English
Number Of Pages: 292
Published: 29th March 2004
Dimensions (cm): 23.2 x 18.6 x 2.2
Weight (kg): 0.621
Table of Contents:
| Microcontrollers | p. 1 |
| What Is a Microcontroller? | p. 1 |
| Why Use a Microcontroller? | p. 1 |
| Microcontrollers Are the Future of Electronics | p. 1 |
| Designer Computers–So Many Microcontrollers | p. 2 |
| The PIC Chip | p. 2 |
| Better Than Any Stamp | p. 2 |
| PIC Programming Overview | p. 4 |
| PICBasic and PICBasic Pro Compilers | p. 5 |
| EPIC Programmer | p. 6 |
| Firmware | p. 7 |
| Consumables | p. 7 |
| 16F84 PIC Microcontroller | p. 7 |
| Writing Code (The Basic Program) | p. 8 |
| Using the Compiler | p. 8 |
| Installing the Firmware, or Programming the PIC Chip | p. 9 |
| Ready, Steady, Go | p. 9 |
| Hardware and Software | p. 10 |
| Parts List | p. 10 |
| Installing the Compiler | p. 13 |
| Installing the PICBasic Compiler Software | p. 13 |
| Installing PICBasic Pro Compiler | p. 14 |
| Installing the EPIC Software | p. 23 |
| Installing the EPIC Software in Windows | p. 23 |
| Installing the EPIC Software from DOS | p. 24 |
| Applications Directory | p. 26 |
| ZIF Adapter Sockets | p. 26 |
| AC Adapter | p. 27 |
| CodeDesigner | p. 29 |
| CodeDesigner Features | p. 29 |
| Software Installation | p. 31 |
| Setting CodeDesigner Options | p. 31 |
| First Program | p. 36 |
| The EPIC Programming Board Software | p. 40 |
| Parts List | p. 41 |
| How to Use DOS Instead of Windows to Code, Compile, and Program | p. 43 |
| Compile | p. 47 |
| Programming the PIC Microcontroller Chip | p. 48 |
| The EPIC Programming Board Software | p. 51 |
| Using the EPIC DOS Version | p. 51 |
| Continuing with the WINK.BAS Program | p. 51 |
| Testing the PIC Microcontroller | p. 55 |
| The Solderless Breadboard | p. 55 |
| Three Schematics, One Circuit | p. 57 |
| Wink | p. 60 |
| Troubleshooting the Circuit | p. 60 |
| PIC Experimenter’s Board and LCD | p. 60 |
| PIC Experimenter’s Board | p. 62 |
| Using the X-Board’s LCD: PICBasic and PICBasic Pro Examples | p. 68 |
| PIC 16F84 Microcontroller | p. 71 |
| Advanced PIC Microcontrollers | p. 71 |
| Back to the 16F84 Microcontroller | p. 72 |
| Clock Oscillators | p. 72 |
| Reset | p. 73 |
| PIC Harvard Architecture | p. 74 |
| Register Map | p. 76 |
| Memory Mapped I/O | p. 76 |
| Binary Fundamentals | p. 77 |
| Registers and Ports | p. 79 |
| Using the TRIS and Port Registers | p. 81 |
| Writing to a Register Using PICBasic Compiler | p. 82 |
| Writing to a Register Using PICBasic Pro Compiler | p. 83 |
| Accessing the Ports for Output | p. 83 |
| Electrical Binary, TTL, and CMOS | p. 84 |
| Counting Program | p. 85 |
| Counting in Binary by One | p. 85 |
| Variable Space | p. 87 |
| Schematic for Program | p. 89 |
| Counting Binary Progression | p. 89 |
| Basic High and Low Commands | p. 91 |
| Programming Review | p. 92 |
| Next Chapter–Reading Input Signals | p. 94 |
| Parts List | p. 94 |
| Optional Parts | p. 94 |
| Reading I/O Lines | p. 95 |
| Placing Electrical Signals on a Pin | p. 95 |
| Reading a Port | p. 96 |
| PICBasic Compiler and Variables B0 and B1 (Bit0 to Bit15) | p. 98 |
| Dynamic Changes | p. 99 |
| Delay Variable | p. 101 |
| Basic Input and Output Commands | p. 102 |
| Basic Input and Output Commands (Pro Version) | p. 102 |
| The Button Command | p. 103 |
| Debouncing a Switch | p. 103 |
| Auto-Repeat | p. 104 |
| The Variable Used in the Button Command | p. 105 |
| Multiple Statements–Single Line | p. 105 |
| PICBasic Language Reference | p. 107 |
| Branch | p. 107 |
| Button | p. 108 |
| Call | p. 110 |
| Eeprom | p. 110 |
| End | p. 110 |
| For … Next | p. 110 |
| Gosub | p. 111 |
| Goto | p. 111 |
| High | p. 112 |
| 12CIN | p. 112 |
| 12cout | p. 113 |
| If … Then | p. 114 |
| Input | p. 115 |
| Let | p. 115 |
| Lookdown | p. 117 |
| Lookup | p. 117 |
| Low | p. 118 |
| Nap | p. 118 |
| Output | p. 118 |
| Pause | p. 119 |
| Peek | p. 119 |
| Poke | p. 120 |
| Pot | p. 120 |
| Pulsin | p. 121 |
| Pulsout | p. 121 |
| PWM | p. 122 |
| Random | p. 123 |
| Read | p. 123 |
| Return | p. 123 |
| Reverse | p. 124 |
| Serin | p. 124 |
| Serout | p. 125 |
| Sleep | p. 127 |
| Sound | p. 127 |
| Toggle | p. 128 |
| Write | p. 129 |
| Additional Command Reference for PICBasic Pro | p. 131 |
| Adcin | p. 134 |
| Asm … EndAsm | p. 134 |
| Branchl | p. 135 |
| Clear | p. 135 |
| Clearwdt | p. 135 |
| Count | p. 135 |
| Data | p. 135 |
| Debug | p. 136 |
| Debugin | p. 136 |
| Disable | p. 137 |
| Disable Debug | p. 137 |
| Disable Interrupt | p. 137 |
| DTMFout | p. 137 |
| Enable | p. 137 |
| Enable Debug | p. 138 |
| Enable Interrput | p. 138 |
| Freqout | p. 138 |
| Hserin | p. 138 |
| Hserout | p. 138 |
| 12cread | p. 139 |
| 12cwrite | p. 139 |
| If … Then | p. 139 |
| Lcdin | p. 140 |
| Lcdout | p. 140 |
| Lookdown2 | p. 141 |
| Lookup2 | p. 142 |
| On Debug | p. 142 |
| On Interrupt | p. 142 |
| Pauseus | p. 144 |
| Peek | p. 145 |
| Poke | p. 145 |
| Pulsin | p. 145 |
| Pulsout | p. 146 |
| RCtime | p. 146 |
| Readcode | p. 147 |
| Resume | p. 147 |
| Serin2 | p. 147 |
| Serout2 | p. 147 |
| Shiftin | p. 148 |
| Shiftout | p. 148 |
| Swap | p. 148 |
| While…Wend | p. 148 |
| Writecode | p. 148 |
| Xin | p. 149 |
| Xout | p. 149 |
| Speech Synthesizer | p. 151 |
| Speech Chip SPO256 | p. 151 |
| A Little on Linguistics | p. 154 |
| Interfacing to the SPO256 | p. 154 |
| Mode Select | p. 154 |
| The Circuit | p. 155 |
| Program Differences | p. 159 |
| Program Functions | p. 159 |
| Peek PortA, b0 | p. 159 |
| Parts List | p. 160 |
| Creating a New I/O Port | p. 163 |
| Serial Communication | p. 163 |
| Output First | p. 163 |
| Basic Serial | p. 164 |
| Clear Pin | p. 166 |
| First Program | p. 166 |
| Bit Shift Correcting | p. 169 |
| Input I/O | p. 172 |
| Compatibility Issues | p. 176 |
| Parts List | p. 177 |
| Liquid Crystal Display (LCD) | p. 179 |
| Serout Command’s RS-232 Serial Communication | p. 179 |
| Error-Detection Algorithms | p. 181 |
| Parity | p. 181 |
| Serial Format: Mode and Baud Rate | p. 181 |
| XTAL Clock, Please | p. 181 |
| 4.0 MHz Clock Limitations | p. 182 |
| Three-Wire Connection | p. 182 |
| Positioning the Cursor | p. 185 |
| Off-Screen Memory | p. 185 |
| PICBasic Pro Project: LCD Module | p. 186 |
| Using the LCD Module for Display | p. 188 |
| Parts List | p. 188 |
| Reading Resistive Sensors | p. 189 |
| R/C Values | p. 190 |
| Scale | p. 190 |
| PIN Exceptions | p. 191 |
| Resistive Sensors | p. 191 |
| Test Program | p. 191 |
| Fuzzy Logic and Neural Sensors | p. 194 |
| Fuzzy First | p. 194 |
| Fuzzy Logic Light Tracker | p. 196 |
| DC Motor Control | p. 198 |
| Diodes | p. 201 |
| Operation | p. 202 |
| Fuzzy Output | p. 202 |
| Neural Sensors (Logic) | p. 203 |
| Multivalue Threshold | p. 203 |
| Parts List | p. 206 |
| Analog-to-Digital (A/D) Converters | p. 209 |
| Analog Signal | p. 209 |
| Digital Equivalents | p. 209 |
| A/D Converters | p. 210 |
| Setting the Reference Voltage(s) | p. 212 |
| Voltage Range and Resolution | p. 212 |
| Interpreting the Results | p. 212 |
| Serial A/D Converter Chip Control | p. 213 |
| TLC549 Serial Sequence | p. 213 |
| Toxic Gas Sensor | p. 215 |
| Parts List | p. 217 |
| DC Motor Control | p. 219 |
| The Transistor | p. 219 |
| First Method | p. 219 |
| Bidirectional | p. 220 |
| Diodes | p. 222 |
| Parts List | p. 223 |
| Stepper Motors | p. 225 |
| Stepper Motor Construction and Operation | p. 225 |
| Resolution | p. 226 |
| Half-Step | p. 227 |
| Other Types of Stepper Motors | p. 227 |
| Real World | p. 227 |
| First Stepper Circuit | p. 228 |
| Electrical Equivalent of a Stepper Motor | p. 229 |
| Test Circuit Program | p. 231 |
| One Rotation | p. 232 |
| Second Basic Program | p. 232 |
| Half-Stepping | p. 234 |
| The “ti” Delay Variable | p. 234 |
| Troubleshooting | p. 236 |
| UCN 5804 Dedicated Stepper Motor ICs | p. 236 |
| Parts List | p. 240 |
| Servomotors | p. 241 |
| Extending Servo Motor Range | p. 244 |
| Manual Servo Control | p. 245 |
| Multiple Servomotors | p. 247 |
| Timing and Servomotors | p. 250 |
| PICBasic Pro Compiler Project: Five-Servomotor Controller | p. 250 |
| Parts List | p. 254 |
| Controlling AC Appliances | p. 255 |
| Inductive and Resistive Loads | p. 255 |
| Circuit Construction | p. 256 |
| Test Circuit | p. 260 |
| Smart Control | p. 260 |
| Electronic Nose | p. 261 |
| Parts List | p. 261 |
| A Few More Projects | p. 263 |
| Binary Clock | p. 263 |
| Setting the Clock | p. 265 |
| Digital Geiger Counter | p. 266 |
| Frequency Generator | p. 268 |
| In Closing | p. 269 |
| Suppliers Index | p. 271 |
| Hexadecimal Numbers | p. 273 |
| Index | p. 275 |
| Table of Contents provided by Ingram. All Rights Reserved. |
Link to Purchase E-Book:
PIC Microcontroller Project Book By John Iovine E-Book
- What compilers are covered in the book?
The book covers PICBasic and PICBasic Pro compilers. - Does the book include programming hardware instructions?
Yes, it includes instructions for the EPIC programmer and programming the PIC chip. - How does the book help with installing software?
It provides step-by-step installation for PICBasic, PICBasic Pro, and EPIC software in Windows and DOS. - Can I find parts lists for projects in the book?
Yes, many chapters and projects include parts lists and optional parts. - Does the book teach interfacing LCDs with PICs?
Yes, it includes chapters on LCD modules, Serout serial communication, and PICBasic Pro LCD projects. - Are motor control projects included?
Yes, it covers DC motor control, stepper motors, UCN5804 ICs, and servomotor control projects. - Is there material on analog-to-digital conversion?
Yes, there is a chapter on A/D converters, reference voltages, and the TLC549 serial A/D sequence. - Does the book include troubleshooting guidance?
Yes, it provides troubleshooting for circuits, testing the PIC, and debugging examples. - Are advanced PIC topics covered?
Yes, it discusses PIC Harvard architecture, registers, memory-mapped I/O, and advanced microcontrollers.
