PIC Microcontroller Projects in C

PIC Microcontroller Projects in C

Basic to Advanced

2nd Edition - April 8, 2014

Write a review

  • Author: Dogan Ibrahim
  • eBook ISBN: 9780080999678
  • Paperback ISBN: 9780080999241

Purchase options

Purchase options
DRM-free (EPub, PDF, Mobi)
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order


Extensively revised and updated to encompass the latest developments in the PIC 18FXXX series, this book demonstrates how to develop a range of microcontroller applications through a project-based approach. After giving an introduction to programming in C using the popular mikroC Pro for PIC and MPLAB XC8 languages, this book describes the project development cycle in full. The book walks you through fully tried and tested hands-on projects, including many new, advanced topics such as Ethernet programming, digital signal processing, and RFid technology. This book is ideal for engineers, technicians, hobbyists and students who have knowledge of the basic principles of PIC microcontrollers and want to develop more advanced applications using the PIC18F series. This book Includes over fifty projects which are divided into three categories: Basic, Intermediate, and Advanced. New projects in this edition: Logic probeCustom LCD font designHi/Lo gameGenerating various waveforms in real-timeUltrasonic height measurementFrequency counterReaction timerGPS projectsClosed-loop ON/OFF temperature controlBluetooth projects (master and slave)RFid projectsClock using Real-time-clock (RTC) chipRTC alarm projectGraphics LCD (GLCD) projectsBarometer+thermometer+altimeter projectPlotting temperature on GLCDEthernet web browser based controlEthernet UDP based controlDigital signal processing (Low Pass Filter design)Automotive LIN bus projectAutomotive CAN bus projectMultitasking projects (using both cooperative and Round-robin scheduling)Unipolar stepper motor projectsBipolar stepper motor projectsClosed-loop ON/OFF DC motor control

Key Features

  • A clear introduction to the PIC 18FXXX microcontroller's architecture
  • Covers developing wireless and sensor network applications, SD card projects, and multi-tasking; all demonstrated with the block and circuit diagram, program description in PDL, program listing, and program description
  • Includes more than 50 basic, intermediate, and advanced projects


Embedded systems engineers working in industry, technicians, electronic hobbyists, undergraduate and graduate students developing embedded systems projects.

Table of Contents

    • Preface
    • Acknowledgments
    • Chapter 1. Microcomputer Systems
      • 1.1. Introduction
      • 1.2. Microcontroller Systems
      • 1.3. Summary
      • 1.4. Exercises
    • Chapter 2. mikroC Pro for PIC Programming Language
      • 2.1. Structure of a mikroC Pro for PIC Program
      • 2.2. Arrays
      • 2.3. Pointers
      • 2.4. Structures
      • 2.5. Operators in C
      • 2.6. Modifying the Flow of Control
      • 2.7. mikroC Pro for PIC Functions
      • 2.8. mikroC Pro for PIC Library Functions
      • 2.9. Summary
      • 2.10. Exercises
    • Chapter 3. MPLAB X IDE and MPLAB XC8 C Programming Language
      • 3.1. The PICDEM PIC18 Explorer Development Board
      • 3.2. MPLAB X IDE
      • 3.3. MPLAB XC8 Compiler
      • 3.4. Summary
      • 3.5. Exercises
    • Chapter 4. Microcontroller Program Development
      • 4.1. Using the PDL and Flow Charts
      • 4.2. Examples
      • 4.3. Representing for Loops in Flow Charts
      • 4.4. Summary
      • 4.5. Exercises
    • Chapter 5. Simple PIC18 Projects
      • Project 5.1—Chasing LEDs
      • Project 5.2—Complex Flashing LED
      • Project 5.3—Random Flashing LEDs
      • Project 5.4—Logic Probe
      • Project 5.5—LED Dice
      • Project 5.6—Two-Dice Project
      • Project 5.7—Two-Dice Project Using Fewer I/O Pins
      • Project 5.8—7-Segment LED Counter
      • Project 5.9—Two-Digit Multiplexed 7-Segment LED
      • Project 5.10—Four-Digit Multiplexed 7-Segment LED
      • Project 5.11—LED Voltmeter
      • Project 5.12—LCD Voltmeter
      • Project 5.13—Generating Sound
      • Project 5.14—Generating Custom LCD Fonts
      • Project 5.15—Digital Thermometer
    • Chapter 6. Intermediate PIC18 Projects
      • Project 6.1—Four-Digit Multiplexed Seven-Segment Light Emitting Diode Event Counter Using an External Interrupt
      • Project 6.2—Calculator with a Keypad and Liquid Crystal Display
      • Project 6.3—The High/Low Game
      • Project 6.4—Generating Waveforms
      • Project 6.5—Ultrasonic Human Height Measurement
      • Project 6.6—Minielectronic Organ
      • Project 6.7—Frequency Counter with an LCD Display
      • Project 6.8—Reaction Timer
      • Project 6.9—Temperature and Relative Humidity Measurement
      • Project 6.10—Thermometer with an RS232 Serial Output
      • Project 6.11—Microcontroller and a PC-Based Calculator
      • Project 6.12—GPS with an LCD Output
      • Project 6.13—ON–OFF Temperature Control
    • Chapter 7. Advanced PIC18 Projects
      • Project 7.1—Bluetooth Serial Communication—Slave Mode
      • Project 7.2—Bluetooth Serial Communication—Master Mode
      • Project 7.3—Using the RFID
      • Project 7.4—RFID Lock
      • Project 7.5—Complex SPI Bus Project
      • Project 7.6—Real-Time Clock Using an RTC Chip
      • Project 7.7—Real-Time Alarm Clock
      • Project 7.8—SD Card Projects—Write Text To a File
      • Project 7.9—SD Card-Based Temperature Data Logger
      • Project 7.10—Using Graphics LCD—Displaying Various Shapes
      • Project 7.11—Barometer, Thermometer and Altimeter Display on a GLCD
      • Project 7.12—Plotting the Temperature Variation on the GLCD
      • Project 7.13—Using the Ethernet—Web Browser-Based Control
      • Project 7.14—Using the Ethernet—UDP-Based Control
      • Project 7.15—Digital Signal Processing—Low Pass FIR Digital Filter Project
      • Project 7.16—Automotive Project—Local Interconnect Network Bus Project
      • Project 7.17—Automotive Project—Can Bus Project
      • Project 7.18 Multitasking
      • Project 1—Using Cooperative Multitasking
      • Project 2—Using Round-Robin Multitasking With Variable CPU Time Allocation
      • Project 7.19—Stepper Motor Control Projects—Simple Unipolar Motor Drive
      • Project 7.20—Stepper Motor Control Projects—Complex Control Of A Unipolar Motor
      • Project 7.21—Stepper Motor Control Project—Simple Bipolar Motor Drive
      • Project 7.22—DC Motor Control Projects—Simple Motor Drive
      • Project 7.23—A Homemade Optical Encoder For Motor Speed Measurement
      • Project 7.24—Closed-Loop DC Motor Speed Control—On/Off Control
    • Index

Product details

  • No. of pages: 660
  • Language: English
  • Copyright: © Newnes 2014
  • Published: April 8, 2014
  • Imprint: Newnes
  • eBook ISBN: 9780080999678
  • Paperback ISBN: 9780080999241

About the Author

Dogan Ibrahim

Dogan Ibrahim
Prof Dogan Ibrahim graduated from the University of Salford with First Class Honours in Electronic Engineering. He then completed an MSc course in Automatic Control Engineering at the University of Manchester, and PhD in Digital Signal Processing at the City University in London. Prof Ibrahim worked at several companies before returning to the academic life. He is currently a lecturer at the Department of Computer Information Systems at the Near East University. Prof Ibrahim is a Fellow of the IET, and a Chartered Electrical Engineer. His interests are in the fields of microcontroller based automatic control, digital signal processing, and computer aided design.Dogan Ibrahim has been Associate Professor and Head of Department at the Near East University, Cyprus, lecturer at South Bank University, London, Principal Research Engineer at GEC Hirst Research Centre, and is now a hardware and software systems consultant to London's Traffic Control Systems Unit.

Affiliations and Expertise

Traffic Control Systems Unit, South Bank University, UK, and lecturer at the Department of Computer Information Systems, Near East University, Lefkosa, Cyprus

Ratings and Reviews

Write a review

Latest reviews

(Total rating for all reviews)

  • JoakimNyberg Tue Jan 28 2020


    Very comprehensive and detailed projects


    Excellent book

    It is a very helpful book easy to follow and full of compact knowledge. Happy for my purchase.