Arduino Software Internals: A Complete Guide to How Your Arduino Language and Hardware Work Together


Price:
Sale price$44.99

Description

1. Introduction1.1. Arduino Installation Paths1.2. Coding Style1.3. The Arduino Language1.4. Coming UpPart 1 - Arduino Compilation2. Preferences.txt2.1. Using an ICSP For All Uploads2.2. Change the Action of Home and End Keys2.3. Setting Tab Stops3. Globally Defined Paths4. Boards.Txt4.1. Arduino Uno Example5. Platform.txt5.1. Build Recipes5.2. Pre and Post Build Hooks6. Programmers.txt7. Compiling a Sketch7.1. Arduino Sketch (*.ino) Preprocessing7.2. Arduino Sketch (*.ino) Build8. The Arduino main() Function9. Header File Arduino.h9.1. Header File avr\pgmspace.h9.2. Header File avr\io.h9.3. Header File avr\interrupt.h9.4. Header File binary.h9.5. Header File WCharacter.h9.6. Header File WString.h9.7. Header File HardwareSerial.h9.8. Header File USBAPI.h9.9. Header File pins_arduino.h10. The init() Function10.1. Enabling the Global Interrupt Flag10.2. Enabling Timer 010.3. Timer 0 Overflow Interrupt10.4. Enabling Timer 1 and Timer 210.5. Initialising the Analogue to Digital Converter10.6. Disabling the USARTPart 2 - Arduino Language Reference11. Digital Input/Output11.1. Function pinMode()11.2. Function digitalRead()11.3. Function digitalWrite()12. Analogue Input/Output12.1. Function analogReference()12.2. Function analogRead()12.3. Function analogWrite()13. Advanced Input/Output13.1. Function tone()13.2. Function noTone()13.3. Function pulseIn()13.4. Function pulseInLong()13.5. Function shiftIn()13.6. Function shiftOut()14. Time14.1. Function delay()14.2. Function delayMicroseconds()14.3. Function micros()14.4. Function millis()15. Interrupts15.1. Function interrupts()15.2. Function noInterrupts()15.3. Function attachInterrupt()15.4. Function detachInterrupt()16. Bits and Bobs16.1. Function bit()16.2. Function bitClear()16.3. Function bitRead()16.4. Function bitSet()16.5. Function bitWrite()16.6. Function highByte()16.7. Function lowByte()16.8. Function sbi()16.9. Function cbi()17. Arduino Classes17.1. The Print Class17.2. The Printable Class17.3. The Stream Class17.4. The HardwareSerial Class17.5. The String ClassPart 3 - Converting to the AVR Language18. Introduction19. Numbering Systems.19.1. Decimal Numbering19.2. Binary Numbering19.3. Hexadecimal Numbering20. Binary Logical Operations20.1. NOT20.2. AND20.3. OR20.4. XOR21. Using the Arduino IDE21.1. Replacing pinMode()21.2. Replacing digitalWrite()21.3. Replacing digitalRead()Part 4 - Alternatives to the Arduino IDE22. PlatformIO22.1. Installing PlatformIO Core22.2. Testing PlatformIO Core22.3. PlatformIO in an IDE22.4. PlatformIO Home23. Arduino Command Line23.1. Obtaining the Arduino-CLI23.2. Installing23.3. Installing Platforms23.4. Configuring the CLI23.5. Creating Sketches23.6. Selecting a Board23.7. Compiling Sketches23.8. Uploading Sketches23.9. Getting Help23.10. Serial Usage23.11. FinallyPart

Author: Norman Dunbar
Publisher: Apress
Published: 04/26/2020
Pages: 617
Binding Type: Paperback
Weight: 1.95lbs
Size: 9.21h x 6.14w x 1.29d
ISBN13: 9781484257890
ISBN10: 1484257898
BISAC Categories:
- Computers | Hardware | General
- Computers | Languages | General
- Computers | Operating Systems | General

About the Author
Norman Dunbar is an Oracle Database Administrator. Norman has had a long running relationship with Electronics since childhood and computers since the late 1970s, and the Arduino was a perfect marriage of the two interests. With a love of learning new things, examining and explaining the Arduino Language and the hardware became a bit of a hobby, and as piles of notes expanded, Norman has now decided to publish his work.