d

8.1 INFRARED OBJECT DETECTION. 153. 8.2 ULTRASONIC SENSOR. 156. 8.3 PEOPLE SENSOR. 162. 8.4 TILT SENSOR. 167. 9 SOUND. 172. 9.1 BEEP.
111KB taille 4 téléchargements 441 vues
Content

INTRODUCTION

8

1 WHAT IS A PICTM MICROCONTROLLER?

9

2 WHAT YOU WILL NEED 2.1 NECESSARY ITEMS 2.2 OPTIONAL ITEMS (NICE TO HAVE)

3 TUTORIAL PROJECT 3.1 THE HARDWARE 3.2 THE SOFTWARE 3.3 COMPILING AND DOWNLOADING 3.4 DEBUGGING 3.5 DONE! 3.6 OTHER RESULTS

11 11 20

25 25 32 36 37 39 39

4 SWITCHES

42

4.1 TIMER 4.2 TWO-WAY SWITCH 4.3 DICE 4.4 SECRET DOORBELL

42 50 53 57

5 A/D CONVERSION 5.1 VARIABLE SPEED FLASHING LED 5.2 DARK ACTIVATED SWITCH 5.3 VOLTMETER 5.4 PHOTOMETER WITH LCD DISPLAY 5.5 SAMPLING

73 74 78 80 83 91

6 RS232 COMMUNICATION

97

6.1 SERIAL COUNTER 6.2 SILENT ALARM 6.3 IN-CIRCUIT DEBUGGING 6.4 SERIAL HARDWARE

98 101 105 114

7 ELECTRIC MOTOR 7.1 ELECTRIC MOTOR CONTROL 7.2 PULSE WIDTH MODULATION CONTROL OF AN ELECTRIC MOTOR 7.3 CONSTANT MOTOR SPEED THROUGH FEEDBACK 7.4 TACHOMETER

120 120 126 136 146

8 SENSORS 8.1 INFRARED OBJECT DETECTION 8.2 ULTRASONIC SENSOR 8.3 PEOPLE SENSOR 8.4 TILT SENSOR

9 SOUND 9.1 BEEP 9.2 NIGHT BUZZER 9.3 FREQUENCY GENERATOR 9.4 A SIMPLE MELODY 9.5 RECORDING SOUNDS 9.6 SOUND SUPER-COMPRESSION

10 MEMORY 10.1 FLASH PROGRAM MEMORY 10.2 RAM 10.3 EEPROM 10.4 EXTERNAL EEPROM WITH I2C

11 MULTIPLE PIC™ MICROCONTROLLERS 11.1 TWO RS232 CONNECTIONS 11.2 SERIAL SYNCHRONIZATION 11.3 A SERIAL NETWORK

12 MISCELLANEOUS PROJECTS

152 153 156 162 167

172 173 177 179 184 189 203

222 222 228 232 241

250 251 255 260

267

12.1 TIMER0 INTERRUPT 12.2 PORT B INTERRUPT 12.3 PICTURES OF LIGHT 12.4 DIGITAL CLOCK 12.5 SCROLLING DISPLAY WITH ANIMATION 12.6 ULTRASONIC RADAR 12.7 HANDLING LARGER CURRENTS

268 284 290 297 303 312 322

12.7.1 Transistor 12.7.2 TC4427A MOSFET driver 12.7.3 Relay

323 326 328

12.8 THE POETRY BOX 12.9 BOOTLOADER

329 333

13 OTHER PIC™ MICROCONTROLLERS

341

13.1 THE 12F675

342

13.1.2 12F675_bert library 13.1.3 Demo program

343 348

13.1.4 Railroad crossing 13.1.5 RGB fader

351 354

13.2 THE 16F628

359

13.2.2 16F628_bert library 13.2.3 Demo program 13.2.4 Electric candle 13.2.5 Adjustable clock frequency 13.2.6 Upgrade using HEXview

362 363 366 369 373

13.3 THE 16F876A

374

13.3.2 16F876A_bert library 13.3.3 Demo program 13.3.4 VU meter 13.3.5 Infrared RS232

376 377 380 382

13.4 PORTABILITY

388

14 APPENDIX

391

14.1 JAL

391

14.1.1 General 14.1.2 Syntax

391 392

14.2 16F877_BERT LIBRARY 14.3 OTHER LIBRARIES 14.4 PROGRAMMER PASS-THROUGH

407 417 420

14.4.1 MICterm communication program 14.4.2 DIY software in Visual Basic 14.4.3 Terminal program using a batch file

421 422 426

14.5 TRANSISTOR DATA 14.6 CONTENTS OF THE DOWNLOAD PACKAGE 14.7 HEX FILES 14.8 TIPS AND TRICKS

428 432 437 439

Index

442