Basic Library
Digital I/O
Analog I/O
Advanced I/O
Time
Math
Trigonometry
Random Numbers
Bits and Bytes
Interrupts
Serial Comm.
Standard Library
Servo Motor
Stepping Motor
Liquid Crystal
EEPROM
SPI
I2C (Wire)
SD Card
SD (File Operations)
Ethernet
Ethernet (Server)
Ethernet (Client)
Firmata
Periodic Operation
Power Save
Clock (RTC)
SoftwareSerial
Utility
Analog I/O
This library is used to input/output an analog signal.
analogReference
Description
Configures the reference voltage used for an analog input. When the input is the same as the reference voltage, 1023 will be returned.
Syntax
analogReference(mode)
Parameters
mode: DEFAULT(VCC voltage), INTERNAL(Internal Voltage 1.45V), EXTERNAL(VCC Voltage)
Returns
None
analogRead
Description
Reads the value from the specified analog pin.
Syntax
int analogRead(analog_pin)
Parameters
analog_pin: The number of the analog input pin to read from A0 to A7 (or 14 to 21)
Returns
0 to 1023
Notes
Use A0 to A5 pins from the smaller pin as much as possible. When you set digital IO with pinMode(), the larger pin also becomes digital IO. For example, if you set A2 to digital IO, then A3, A4 and A5 will become digital IO, even if you use those pins as analog input.
Remark
If you use setPowerManagementMode() for SNOOZE mode and then call anlogRead(), the program stops until data is received from lower to upper.
analogWrite
Description
Writes an analog value (PWM wave) to a pin. Can be used to light an LED at varying brightnesses or drive a motor at various speeds. After a call to analogWrite(), the pin will generate a steady square wave of the specified duty cycle until the next call to analogWrite() (or a call to digitalRead() or digitalWrite() on the same pin). The frequency of the PWM signal is approximately 490Hz.(Some pins are 125Hz. Refer to the remark.) The frequency can be changed by analogWriteFrequency.
Syntax
analogWrite(int pin, int value);
Parameters
pin: The pin to write to (3, 5, 6, 9, 10, 11, 22, 23, and 24)
value: The duty cycle: Between 0 (always LOW) and 255 (always HIGH)Returns
None
Remark
Pins 11, 22, 23, and 24 are implemented by software. The frequency is 125Hz.
analogWriteFrequency
Description
Writes a frequency value to the analog pin (PWM).
Syntax
analogWriteFrequency(int Hz)
Returns
Hz: Frequency
Returns
None
Remark
This function should be called during all PWM stops. Pins that can be changed are 3, 5, 6, 9, and 10.
Example
The green LED on the GR-KURUMI board is lit slowly.
#include <Arduino.h>
void setup() {
pinMode(23, OUTPUT); //Green LED
}
void loop() {
for(int i = 0; i<250; i+=5){
analogWrite(23, i);
delay(30);
}
for(int i = 0; i<250; i+=5){
analogWrite(23, 255-i);
delay(30);
}
}