Go Down

Topic: Useful links - check here for reference posts / tutorials (Read 22463 times) previous topic - next topic

Nick Gammon

Mar 05, 2016, 11:33 pm Last Edit: Apr 14, 2017, 08:59 am by Nick Gammon Reason: Added another stepper motors tutorial
How to ask a good question

General design

  • I2C *
    Information about the I2C hardware and protocol, widely used to communicate with various peripheral chips.
  • PC to Arduino comms
    Discussions about sending text or binary data from an Arduino to a PC, or vice-versa, using Python.
  • Radio/Wireless Transceivers Interfacing *
    How to interface using RF24L01 2.4GHz transceivers, by Terry King.
  • Serial Input Basics
    An introduction to using the serial ports on your Arduino, including sending and receiving multiple bytes.
  • Serial data - how to process without blocking *
    Suggested techniques for receiving incoming serial data, without "blocking" (waiting).
  • SPI *
    Information about the SPI hardware, widely used to communicate with other chips, shift registers, LCD displays, etc.

C++ programming
  • Arduino functions reference
    The official reference page for commonly-used functions, like digitalWrite.
  • AVR Libc Home Page *
    Standard library functions supplied with the IDE, such as CRC checks, EEPROM handling, watchdog timer, sleep management, and much more.
  • Function variables *
    A discussion about how to store function addresses in variables, and how to make "callback" functions, so that one function can call another one, from a variable.
  • millis() overflow ... a bad thing? *
    A discussion of how to manage when millis() and micros() overflow.
  • Tips, traps and style guide *
    A list of common problems encountered by beginners, such as confusing comparison with assignment.
    Also describes how to disassemble your code, where libraries are located, and other information.
  • What is Scope?
    A discussion of the use of variables in C++ programs, focussing on their scope and lifetime. Discussions include local and global variables, and the use of the extern keyword.
  • Using PROGMEM *
    A discussion about putting strings and other data types into Program Memory (PROGMEM), to save RAM.

  • Arduino Basic Connections *
    Very useful site listing different ways of connecting hardware to your Arduino (schematics).
  • De-coupling capacitors *
    Why the use of de-coupling capacitors is essential.
  • Interrupts *
    A discussion about the use of interrupts on the Arduino, including hints and pitfalls.
  • LDRs and IR LEDs (PDF: 862.7 KB)
    Tutorial on sending and receiving information using light (IR LEDs and LDRs)
  • LEDs *
    Why you need current-limiting resistors when driving LEDs
  • Pin-outs - assorted *
    Pin-outs for various boards done by PighiXXX (of Arduino Basic Connections fame) (JavaScript required)
  • Pin-outs - Uno
    Pin-outs for the Uno board (SPI / I2C etc.)
  • Pin-outs - Mega2560
    Pin-outs for the Mega2560 board (SPI / I2C etc.)
  • Power saving *
    A discussion about running in low-power mode using sleep modes, the watchdog timer, and general tips for reducing power consumption.
  • Rotary encoders tutorial
    Some suggested methods of handling rotary encoders.
  • Stepper motors tutorial *
    A tutorial covering the basic principles of stepping motors and stepping motor control systems.
  • Stepper motor basics
    An introduction to using stepper motors.
  • Switches *
    Tips for wiring up switches, including debouncing and detecting status changes.
  • Timers *
    An introduction to the hardware counters/timers.


* Links to off-site information. That is, not on the Arduino Forum.

Discussion: Call for a list of useful programming threads
Please post technical questions on the forum, not by personal message. Thanks!

More info:

Go Up

Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

via Egeo 16
Torino, 10131