There are two main reasons for Arduino’s success. The first is the complete processor board, which has significantly eased entry into the microcontroller hardware arena. Typical beginner problems, such as bad power supplies, problems with setting the configuration parameters (fuse bits) and crystals that won’t oscillate due to bad load capacitances are all foreign to the Arduino world. The board is simply connected to a PC’s USB port, and off we go. People young and old who’ve never been involved in electronics won’t have any difficulty.
The second success factor is the associated programming interface, which is provided as free-of-charge open source software. The second success factor is the associated programming interface, which is provided as free-of-charge open source software. In addition, installation is quick and easy, so the environment is usable immediately. Simple introductory examples encourage rapid progress. The selection of complicated parameters is not required, and the first example programs may be opened and run within minutes.
Furthermore, the Arduino is backed up with a wealth of software libraries, and the number of which grows daily, often presenting beginners with their first problem: after the introduction of simple examples, the way forward is not clear. This is often due to the lack of detailed descriptions and explanations. The number of projects on the internet, which are explained to a greater or lesser extent, is more likely to cause confusion. Because these applications are designed by a number of different people, each with their own goals in mind, there is no common thread connecting them.
That’s where this book comes in. Projects are introduced systematically, each introducing a different theme. A practical hands-on approach is employed alongside the necessary theoretical foundations and, in a similar vein, important concepts such as A/D conversion, timers and interrupts are presented using practical projects. There are running lights, fully-functional voltmeters, precise digital thermometers, clocks of all kinds, reaction timers and a mouse-controlled robot crane. Along the way, the reader will gain an understanding of the associated controller techniques and pick them up fully — in the truest sense of the word.
The practical projects presented herein will not be relegated to the status of mere ‘laboratory prototypes’. By means of appropriate hints and notes, other practical devi-ces will arise, which may be used for home, hobby and work. The projects are always implemented using easy-to-find and inexpensive components.
In the final chapter, an Arduino-based ‘Living Room Box’ is presented. It is designed modularly and may be adapted to individual requirements. The knowledge gleaned throughout the book is used practically to produce a very useful, yet unusual, device.