Directory of Arduino technical insider

Chapter 1 Hardware 1

1.1 What is Arduino 1

1.2 Arduino uno2

1.2.1 Processor 3

1.2.2 Serial port 4

1.2.3 Power supply 5

1.2.4 Expansion socket 6

. 12

1.4.1 arduino serial 12

1.4.2 arduino USB 13

1.4.3 arduino extreme 14

1.4.4 arduino nuova generazione (new generation) 14

1.4.5 arduino diecimil. 6 Arduino duemilanove 15

1.4.7 Arduino Mega 15

1.5 Who is making the officially licensed products of Arduino 15

1.5.2 Others 17

1.6 Make Arduino 17

1.6. Arduino 18

1.7 Summary 19

Chapter 2 Software 21

2.1 Host and target machine 21

2.2 Step by step 21

2.2.1 Step 1: Write code 22

2.2 Step 2: Compile code 27

2.2. 29

2.3 Semi-automation 29

2.4 Further 33

2.5 Summary 33

Chapter 3 atmel avr 34

3.1 Origin 34

3.2avr Chip Family 34

3.3 If in doubt: Chip Device Manual 35

3.4 Chip Packaging 35 < Component (smd) 36

3.4.3 Extra Pin 37

3.5 Pin Definition 37

3.6avr Kernel 43

3.6.1 Clock Source 45

3.6.2 Address Space 46

3.6.3 Instruction Set 49

. O) 55

3.7.2 External Interrupt 55

3.7.3 Timer/Counter 56

3.7.4usart 57

3.7.5 Two-wire serial interface (twi), That is, i2c 57

3.7.6 Analog Input 58

3.8 Summary 58

Chapter 4 Supporting Hardware 59

4.1 Circuit Diagram 59

4.1.1 Component Type 6

4.1.2 Component Number 6

4.1.3 Component Value 61 < > 4.2 power supply for circuit board 63

4.2.1 post power socket 63

4.2.2 input power regulation 63

4.2.3 voltage regulator 65

4.2.4 evolution of power supply circuit 65

4.3 serial port 67

4.4 processor 69

O driving capability 7

4.4.3-reset signal 7

4.4.4 time reference 7

4.4.5 decoupling capacitor 71

4.4.6 flashing light 71

4.5 expansion space 71

4.6 structure shape 72

4.7.

5.1 Open source software 76

5.2 Multi-platform support 76

5.3 Inheritance and development of Arduino 76

5.4 Software installation 77

5.5 Practice 77

5.6 User interface 78

5.6.1file menu 79

5. (Program) Menu 8

5.6.4tools Menu 81

5.6.5help Menu 82

5.7 Summary 82

Chapter 6 Optimization 83

6.1 Feasibility 83

6.2 Compression Flash Program 83

6. Code analysis 84

6.2.4 life without pinmode () 85

6.2.5 abbreviations and abbreviations 86

6.2.6 binary writing 87

6.2.7 in-depth analysis 87

6.2.8 easy flip 88

6. What did you do 91

6.3.2 Write configuration register 91

6.3.3 Send data 93

6.3.4 A string of characters 94

6.3.5 Output number 95

6.4 Save sram 96

6.4.1 Measure SRAM 96 <

6.4.5 Use the appropriate data type 1

6.4.6. Re-explore whether the string 11

6.5 is low power consumption or high speed? 12

6.6 Electronic measurement 13

6.6.1 Using arduino as the test instrument 13

6.6.2 As soon as possible 15

6.6.3 Let it slow down 18

6.6.4 Further reduce power consumption 11

6.7 Summary 112. 13

7.1.2 Universal digital input and output 119

7.1.3 Timer and counter 121

7.1.4 Pulse width modulation (pwm) output 124

7.1.5 Analog input 129

7.1.6 External interrupt 133

7. Ed: Start simple. 139

8.1.1 is slow enough. 142

8.1.2 The optimized six-channel dimmer is basically completed. 144

8.1.3 is dimmed. 147

8.2 Other uses of flashing led 154

8.2.1 Infrared remote control 154

An example of direct drive 157

8.3.2 Direct drive with led driver 159

8.3.3 Multiplexing technology 16

8.4 Digital clock 174

8.4.1 Accuracy 179

8.4.2 User interface 18

8.4.1. P>9.1.1 source code comment 183

9.1.2 space 184

9.1.3 programming according to your meaning, Explain according to your code 185

9.1.4 Automatic documentation 186

9.1.5 Write to your "readers" 186

9.1.6 Hardware documentation 187

9.1.7 Further 188

9.2 Teamwork and collaborative development 189

. Revision control system 191

9.2.5 Description of revision number and version number 192

9.2.6 Website with works 192

9.3 Selection of licensing method 195

9.3.1 Patent and trademark 195

9.3.2 Copyright 196

9. Domain 198

9.4 Summary 199

Chapter 1 Hardware Design 2

1.1 Understand what hardware 2

1.1.1 must have 21

1.1.2 What you want 22

1.2 Infrared proximity sensor 23

1. 3 printed circuit board 21

1.2.4pcb layout technology 211

1.2.5 is the first attempt to connect 212

1.2.6 smaller version 214

1.2.7 with 215

1.3 arduino 216

13. 219

1.4 Design Software 219

1.4.1 Cadsoft Eagle 22

1.4.2 Eagle Tips 22

1.5 Summary 221

Chapter 11 Software Design 222

11.1arduino Advanced Topics 222

122. Kernel 229

11.2 Explore bare metal 239

11.2.2 Other Development Environments 242

11.3 Summary 245

Chapter 12 Networking 246

12.1 Peer-to-Peer Networking 246

12 248

12.2midi: Musical instrument digital interface 26

12.3 Internet 264

12.4 Summary 268

Chapter 13 More sample works 269

13.1 An automatic robot 269

13.2 Power supply 27

13.3 Motion control 27

. 13.4.2 contact sensor 277

13.4.3 non-contact sensor 278

13.4.4 sound sensor 279

13.4.5 indicator, Controller and other forms of communication 279

13.5 Control system 281

13.5.1 Open-loop system 281

13.5.2 Closed-loop system 282

13.6 Example robot works 283

13.6.1 A practice robot 284

13.6.