PIC Microcontroller Projects in C - Basic to Advanced

PIC Microcontroller Projects in C - Basic to Advanced

von: Dogan Ibrahim

Elsevier Reference Monographs, 2014

ISBN: 9780080999678 , 660 Seiten

2. Auflage

Format: PDF, ePUB, OL

Kopierschutz: DRM

Windows PC,Mac OSX geeignet für alle DRM-fähigen eReader Apple iPad, Android Tablet PC's Apple iPod touch, iPhone und Android Smartphones Online-Lesen für: Windows PC,Mac OSX,Linux

Preis: 38,95 EUR

Mehr zum Inhalt

PIC Microcontroller Projects in C - Basic to Advanced


 

Front Cover

1

PIC Microcontroller Projects in C: Basic to Advanced

4

Copyright

5

Contents

6

Preface

18

Acknowledgments

20

Chapter 1 - Microcomputer Systems

22

1.1 Introduction

22

1.2 Microcontroller Systems

22

1.3 Summary

27

1.4 Exercises

27

Chapter 2 - mikroC Pro for PIC Programming Language

30

2.1 Structure of a mikroC Pro for PIC Program

31

2.2 Arrays

33

2.3 Pointers

34

2.4 Structures

35

2.5 Operators in C

36

2.6 Modifying the Flow of Control

36

2.7 mikroC Pro for PIC Functions

41

2.8 mikroC Pro for PIC Library Functions

41

2.9 Summary

41

2.10 Exercises

43

Chapter 3 - MPLAB X IDE and MPLAB XC8 C Programming Language

46

3.1 The PICDEM PIC18 Explorer Development Board

47

3.2 MPLAB X IDE

50

3.3 MPLAB XC8 Compiler

50

3.4 Summary

71

3.5 Exercises

71

Chapter 4 - Microcontroller Program Development

72

4.1 Using the PDL and Flow Charts

73

4.2 Examples

78

4.3 Representing for Loops in Flow Charts

84

4.4 Summary

85

4.5 Exercises

86

Chapter 5 - Simple PIC18 Projects

88

Project 5.1—Chasing LEDs

91

Project 5.2—Complex Flashing LED

97

Project 5.3—Random Flashing LEDs

99

Project 5.4—Logic Probe

102

Project 5.5—LED Dice

106

Project 5.6—Two-Dice Project

115

Project 5.7—Two-Dice Project Using Fewer I/O Pins

119

Project 5.8—7-Segment LED Counter

130

Project 5.9—Two-Digit Multiplexed 7-Segment LED

141

Project 5.10—Four-Digit Multiplexed 7-Segment LED

146

Project 5.11—LED Voltmeter

150

Project 5.12—LCD Voltmeter

161

Project 5.13—Generating Sound

177

Project 5.14—Generating Custom LCD Fonts

181

Project 5.15—Digital Thermometer

189

Chapter 6 - Intermediate PIC18 Projects

194

Project 6.1—Four-Digit Multiplexed Seven-Segment Light Emitting Diode Event Counter Using an External Interrupt

196

Project 6.2—Calculator with a Keypad and Liquid Crystal Display

211

Project 6.3—The High/Low Game

227

Project 6.4—Generating Waveforms

235

Project 6.5—Ultrasonic Human Height Measurement

269

Project 6.6—Minielectronic Organ

279

Project 6.7—Frequency Counter with an LCD Display

283

Project 6.8—Reaction Timer

289

Project 6.9—Temperature and Relative Humidity Measurement

298

Project 6.10—Thermometer with an RS232 Serial Output

311

Project 6.11—Microcontroller and a PC-Based Calculator

325

Project 6.12—GPS with an LCD Output

327

Project 6.13—ON–OFF Temperature Control

338

Chapter 7 - Advanced PIC18 Projects

348

Project 7.1—Bluetooth Serial Communication—Slave Mode

354

Project 7.2—Bluetooth Serial Communication—Master Mode

382

Project 7.3—Using the RFID

390

Project 7.4—RFID Lock

408

Project 7.5—Complex SPI Bus Project

410

Project 7.6—Real-Time Clock Using an RTC Chip

435

Project 7.7—Real-Time Alarm Clock

457

Project 7.8—SD Card Projects—Write Text To a File

460

Project 7.9—SD Card-Based Temperature Data Logger

487

Project 7.10—Using Graphics LCD—Displaying Various Shapes

498

Project 7.11—Barometer, Thermometer and Altimeter Display on a GLCD

511

Project 7.12—Plotting the Temperature Variation on the GLCD

522

Project 7.13—Using the Ethernet—Web Browser-Based Control

529

Project 7.14—Using the Ethernet—UDP-Based Control

542

Project 7.15—Digital Signal Processing—Low Pass FIR Digital Filter Project

543

Project 7.16—Automotive Project—Local Interconnect Network Bus Project

556

Project 7.17—Automotive Project—Can Bus Project

571

Project 7.18 Multitasking

599

Project 1—Using Cooperative Multitasking

602

Project 2—Using Round-Robin Multitasking With Variable CPU Time Allocation

611

Project 7.19—Stepper Motor Control Projects—Simple Unipolar Motor Drive

619

Project 7.20—Stepper Motor Control Projects—Complex Control Of A Unipolar Motor

625

Project 7.21—Stepper Motor Control Project—Simple Bipolar Motor Drive

629

Project 7.22—DC Motor Control Projects—Simple Motor Drive

634

Project 7.23—A Homemade Optical Encoder For Motor Speed Measurement

640

Project 7.24—Closed-Loop DC Motor Speed Control—On/Off Control

645

Index

652