Table of contents
Thanks (17)
1. introduction (19)
- Unlimited possibilities (20)
- Popularity (24)
- Parts and accessories (24)
- Required software (25)
- Mac OS X (25)
- Windows XP and newer (29)
- Ubuntu Linux 9.04 and higher (33)
- Safety (36)
- What's next? (36)
2. a first look at the Arduino board and the IDE environment (37)
- Arduino tile (37)
- Introduction of the IDE (42)
- Command area (43)
- Text area (44)
- Message area (44)
- Creating a first sketch in an IDE environment (45)
- Comments (45)
- Setup function() (46)
- Control of equipment (46)
- Loop() function (47)
- Verification of the sketch (49)
- Sending and starting a sketch (50)
- Sketch modification (50)
- What's next? (50)
3 First steps (51)
- Project planning (52)
- A few words about electricity (53)
- Intensity (53)
- Voltage (53)
- Power (53)
- Electronic components (53)
- Resistor (54)
- LED (57)
- Multi-purpose tile (58)
- Project No. 1: creating a wave of flashing LEDs (61)
- Algorithm (61)
- Equipment (61)
- Sketch (61)
- Diagram (62)
- Sketch activation (63)
- Use of variables (64)
- Project No. 2: repetition of instructions by means of a loop for (65)
- Change LED brightness by pulse width modulation (66)
- Project No 3: example of the application of the PWM method (67)
- Additional electronic components (68)
- Transistor (68)
- Straightening diode (69)
- Relay (70)
- Circuits powered by higher voltage (71)
- What's next? (72)
4. circuit components (73)
- Application of circuit diagrams (74)
- Identification of components (75)
- Connections in the circuit diagram (77)
- Analysis of a sample scheme (77)
- Capacitor (78)
- Capacity measurement of capacitor (78)
- Reading capacitor values (79)
- Capacitor types (79)
- Digital input (80)
- Project No 4: example of the use of digital input (82)
- Algorithm (82)
- Equipment (83)
- Circuit diagram (83)
- Sketch (87)
- Sketch modification (87)
- Explanation of the sketch (87)
- Creating constants using the expression #define (88)
- Digital Pin State Reading (88)
- Decision-making by the expression if (88)
- Additional decision making by means of the expression if-then-else (89)
- Logical variables (90)
- Comparison operators (90)
- Combining multiple comparison operations (91)
- Project No. 5: Traffic control (92)
- Objective (92)
- Algorithm (93)
- Equipment (93)
- Diagram (93)
- Sketch (94)
- Sketch activation (97)
- Analogue versus digital signals (98)
- Project No. 6: battery tester (99)
- Objective (99)
- Algorithm (99)
- Equipment (100)
- Diagram (100)
- Sketch (100)
- Arithmetic operations in the Arduino system (102)
- Float variables (102)
- Number comparison operators (103)
- Improving the precision of analogue signal measurements with reference voltage (103)
- Use of external reference voltage (103)
- Application of the internal reference voltage (104)
- Adjustable resistor (105)
- Piezoelectric buzzers (106)
- Diagram of piezo element (107)
- Project No 7: practical use of the piezo buzzer (107)
- Project No. 8: construction of a high-speed thermometer (108)
- Objective (109)
- Equipment (109)
- Diagram (110)
- Sketch (110)
- Sketch improvement (112)
- What's next? (112)
5. working with functions (113)
- Project No 9: creation of a function that repeats a specific action (114)
- Project No. 10: Creating a function to set the number of diode switching cycles (115)
- Creating a value return function (116)
- Project No. 11: construction of a high-speed thermometer with flashing LEDs (117)
- Equipment (117)
- Diagram (118)
- Sketch (118)
- Displaying data received from the Arduino board in the serial port monitor window (120)
- Serial port monitor (120)
- Project 12: Temperature display in the serial port monitor window (122)
- Diagnosis of systems using the serial port monitor (123)
- Decision-making by means of the expression while (124)
- Do-while construction (125)
- Sending data from the serial port monitor to the Arduino system (125)
- Project No 13: multiplying the number by two (126)
- Variables of the long type (127)
- Project No 14: use of long type variables (128)
- What's next? (129)
6 Numbers, variables and arithmetic operations (131)
- Random number generation (132)
- Generation of random numbers based on free pin voltage (132)
- Project No 15: Creating an electronic dice (134)
- Equipment (134)
- Diagram (134)
- Sketch (134)
- Modification of the sketch (137)
- A short introduction to the world of binary numbers (137)
- Byte type variables (137)
- Increasing the number of available digital pins using shifting registers (138)
- Project No. 16: creating a binary number display consisting of LEDs (140)
- Equipment (140)
- Transfer Registry merging 74HC595 (140)
- Sketch (142)
- Project No. 17: implementation of a binary quiz (143)
- Algorithm (143)
- Sketch (143)
- Tables (146)
- Definition of table (146)
- Reference to values in table (147)
- Saving and reading data stored in tables (147)
- Seven-segment LED displays (148)
- LED display control (150)
- Project No. 18: creating a single-digit display (151)
- Equipment (151)
- Diagram (151)
- Sketch (151)
- Two-digit display (153)
- Project No. 19: control of two seven-segment LED display modules (154)
- Equipment (154)
- Diagram (154)
- Modulo (155)
- Project No 20: construction of a digital thermometer (156)
- Equipment (157)
- Sketch (157)
- LED matrix display modules (158)
- LED matrix display circuit diagram (159)
- Circuit-breaking (161)
- Bitumen arithmetic (161)
- Bitstream operator (162)
- Bitstream alternative operator (162)
- Bit Excluding Alternative Operator (163)
- Bit negation operator (163)
- Bit shift left and right operators (163)
- Project No. 21: Creating an LED matrix display (164)
- Project No. 22: displaying images on an LED matrix display (165)
- Project No. 23: Displaying the image on an LED matrix display (167)
- Project No. 24: presentation of animation on an LED matrix display (169)
- What's next? (170)
7 Liquid crystal displays (171)
- LCD Character modules (172)
- LCD character module support in sketch (173)
- Text display (174)
- Display of variables and numbers (175)
- Project No. 25: Definition of non-standard characters (176)
- Graphic LCD modules (178)
- Combination of graphic LCD module (179)
- Using the LCD module (179)
- Display control (180)
- Project No. 26: text-based functions in practice (180)
- Creating complex visual effects (181)
- Project No. 27: construction of a high-speed thermometer with displayed history (183)
- Algorithm (183)
- Equipment (183)
- Sketch (184)
- Result (185)
- Modifying a sketch (186)
- What's next? (186)
8. extending the capabilities of the Arduino platform (187)
- Modules (188)
- ProtoShield prototype plate (190)
- Project No. 28: creating a custom module with eight LEDs (191)
- Equipment (192)
- Diagram (192)
- ProtoShield prototype plate layout (192)
- Project (193)
- Soldering of components (194)
- Modification of a non-standard module (195)
- Expanding sketches with libraries (196)
- Importing libraries for modules (196)
- MicroSD memory cards (201)
- Testing the microSD card (201)
- Project No. 29: saving data on a memory card (202)
- Project No 30: construction of a temperature recorder (205)
- Equipment (205)
- Sketch (205)
- Application execution time management with millis() and micros() (208)
- Project No 31: construction of a stopwatch (210)
- Equipment (210)
- Circuit diagram (210)
- Sketch (210)
- Interruptions (213)
- Break modes (213)
- Interruption configuration (214)
- Activation and deactivation of interruptions (214)
- Project No 32: use of interruptions (214)
- What's next? (216)
9. numeric keypads (217)
- Use of numeric keypad (217)
- Numeric keypad switching (218)
- Programming of numeric keypad operation (219)
- Sketch testing (220)
- Decision making with switch-case design (220)
- Project No. 33: creating a numeric keypad-controlled lock (221)
- Sketch (221)
- Sketch operation (223)
- Sketch testing (223)
- What's next? (224)
10. read user input via touchscreens (225)
- Touchscreens (226)
- Touchscreen connection (226)
- Project 34: Addressing areas on the touch screen (227)
- Equipment (227)
- Sketch (227)
- Sketch testing (229)
- Mapping of the touch points of the screen (229)
- Project no. 35: construction of a two-state touch switch (230)
- Sketch (231)
- Sketch operation (232)
- Sketch testing (233)
- Project No. 36: construction of a touch switch divided into three areas (233)
- Touch screen map (233)
- Sketch (234)
- Sketch operation (235)
- What's next? (236)
11. the Arduino product family (237)
- Project No. 37: construction of Arduino's own platform on a universal board (238)
- Equipment (238)
- Circuit diagram (241)
- Activation of the test sketch (244)
- Rich Arduino tiles family (247)
- Arduino Uno tile (249)
- Freetronics Eleven board (249)
- Freeduino tile (250)
- Boarduino plate (250)
- Arduino Nano tile (251)
- Arduino LilyPad (251)
- Arduino Mega 2560 (252)
- Freetronics EtherMega board (253)
- Arduino Due (253)
- What's next? (254)
12 Engines and motion (255)
- Operation of equipment with executive motors (256)
- Executive motor selection (256)
- Executive engine coupling (257)
- Starting the executive motor (257)
- Project No 38: construction of an analogue thermometer (259)
- Equipment (259)
- Diagram (259)
- Sketch (260)
- Use of electric motors (261)
- Darlington Transistor TIP120 (262)
- Project No. 39: motor control (262)
- Equipment (262)
- Diagram (263)
- Sketch (264)
- Project 40: construction and control of a tracked robot (265)
- Equipment (265)
- Diagram (267)
- Sketch (270)
- Collision detection (272)
- Project No. 41: robot collision detection with a microswitch (272)
- Diagram (273)
- Sketch (273)
- Infrared distance sensors (276)
- Circuit-breaking (276)
- Infrared distance sensor testing (276)
- Project No. 42: robot collision detection with infrared distance sensor (279)
- Ultrasonic distance sensors (281)
- Connecting the ultrasonic sensor (282)
- Use of ultrasonic sensor (282)
- Ultrasonic distance sensor testing (282)
- Project No. 43: robot collision detection with ultrasonic distance sensor (284)
- What's next? (287)
13. use of GPS on the Arduino platform (289)
- What is GPS? (290)
- Testing the GPS module (291)
- Project No. 44: construction of a simple GPS receiver (293)
- Equipment (293)
- Sketch (294)
- LCD position display (295)
- Project No 45: construction of a precision clock using GPS (296)
- Equipment (296)
- Sketch (296)
- Project No. 46: recording the moving position of an object in time (298)
- Equipment (298)
- Sketch (298)
- Display of registered locations on the map (300)
- What's next? (302)
14. wireless data transmission (303)
- Using low-cost wireless communication modules (304)
- Project No. 47: remote, wireless control (305)
- Equipment comprising the transmitter circuit (305)
- Transmitter diagram (306)
- Equipment making up the receiver circuit (306)
- Diagram of the receiver (306)
- Sketch of the transmitter (308)
- Sketch of the receiver (309)
- XBee wireless data modules - longer range and faster transmission (310)
- Project No 48: data transmission via XBee modules (312)
- Sketch (312)
- Configure your computer to receive data (313)
- Project 49: construction of a remote-controlled thermometer (314)
- Equipment (314)
- Equipment layout (315)
- Sketch (315)
- Operation of the device (317)
- What's next? (317)
15 Infrared remote control (319)
- What is infrared? (319)
- Preparation for infrared use (320)
- Infrared receiver (320)
- Pilot (321)
- Test sketch (321)
- System testing (322)
- Project No. 50: Arduino infrared remote control system (323)
- Equipment (323)
- Sketch (323)
- Sketch extension (325)
- Project No. 51: construction of a remote-controlled robot (325)
- Equipment (325)
- Sketch (326)
- What's next? (328)
16. reading of RFID tags (329)
- Internal design of RFID devices (330)
- Equipment testing (331)
- Diagram (331)
- Scheme testing (331)
- Project No. 52: construction of a simple access control system based on RFID technology (333)
- Sketch (333)
- Sketch operation (335)
- Saving data to the built-in Arduino EEPROM (336)
- Reading and storing data in EEPROM (337)
- Project No 53: construction of an RFID access control system with "last action" memory (338)
- Sketch (338)
- Sketch operation (341)
- What's next? (341)
17. data magistrals (343)
- I2C bus (344)
- Project No 54: use of external EEPROM (346)
- Equipment (346)
- Diagram (346)
- Sketch (347)
- Result (349)
- Project No 55: use of port expander system (350)
- Equipment (350)
- Diagram (350)
- Sketch (352)
- SPI bus (353)
- Pin blending (353)
- Implementation of SPI bus service (354)
- Sending data to SPI device (355)
- Project No. 56: use of digital adjustable resistor (356)
- Equipment (356)
- Diagram (357)
- Sketch (357)
- What's next? (359)
18 Real time clocks (361)
- Combination of RTC module (362)
- Project No. 57: displaying date and time based on a real time clock (362)
- Equipment (363)
- Sketch (363)
- Sketch operation (365)
- Project No 58: creating a simple digital clock (367)
- Equipment (368)
- Sketch (368)
- Sketch operation and generated results (371)
- Project No 59: construction of a working time control system based on RFID technology (371)
- Equipment (372)
- Sketch (373)
- Sketch operation (377)
- What's next? (377)
19. Internet (379)
- What do we need? (379)
- Project No. 60: construction of a remote monitoring station (381)
- Equipment (381)
- Sketch (381)
- Problem solving (384)
- Sketch operation (385)
- Project No 61: Arduino quarters (386)
- Equipment (386)
- Sketch (386)
- Control of the Arduino system via the website (388)
- Project No. 62: configuration of Teleduino service and remote control of Arduino system (389)
- Equipment (389)
- Sketch (389)
- Arduino remote control (391)
- What's next? (392)
20. communication in the mobile phone network (393)
- Equipment (394)
- Power module preparation (395)
- Setting up and testing equipment (396)
- Change of operating frequency (398)
- Project No. 63: construction of the Arduino caller (400)
- Equipment (400)
- Diagram (401)
- Sketch (401)
- Sketch operation (402)
- Project No 64: construction of the Arduino system for sending SMS (403)
- Sketch (403)
- Sketch operation (404)
- Project No. 65: SMS-controlled system configuration (405)
- Equipment (405)
- Diagram (405)
- Sketch (405)
- Sketch operation (408)
- What's next? (408)
Scorch (411)
|