From: Design and implementation of a simple and inexpensive respiratory synchronization control platform
Input and output: Each of the 14 digital pins on the Arduino UNO can be used as an input or output, using the pinMode(), digitalWrite(), and digitalRead() functions. These pins operate at 5Â V and each can supply or receive a maximum of 40Â mA. Each pin has an internal pull-up resistor, disconnected by default. In addition, some pins have specialized functions, as discussed below |
Serial: Pins 0 (RX) and 1 (TX). These are used to receive (RX) and transmit (TX) TTL level serial data. These pins are connected to the corresponding pins of the ATmega8U2 USB-to-TTL Serial chip |
External interrupts: Pins 2 and 3. These pins can be configured to trigger an interrupt on a low value, on a rising or falling edge, or on a change in value. See the attachInterrupt() function for details |
Pulse width modulation (PWM): Digital pins 3, 5, 6, 9, 10, and 11 can provide an 8-bit PWM output with the analogWrite() function. They are identified with a tilde (~) symbol |
SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support the SPI serial communication protocol using the SPI library |
LED: 13. There is a built-in LED connected to digital pin 13. When the pin is in the HIGH state, the LED is on, and when the pin is LOW, the LED is off |
Analog inputs: The UNO has 6 analog input lines, labeled A0 through A5, each providing 10-bit resolution (i.e., 1024 different values). By default, they measure from ground to 5Â V, though it is possible to change the upper end of their range using the AREF pin and the analogReference() function. Additionally, some pins have specialized functionality |
TWI: A4 or SDA pin and A5 or SCL pin. Support TWI communication using the wire library |
AREF: Reference voltage for the analog inputs. Used with analogReference() |
Reset: Bring this line LOW to reset the microcontroller. Typically used to add a reset button to shields which block the one on the board |