基本ライブラリ
デジタルIO
アナログIO
拡張IO
時間
数学
三角関数
乱数
ビットバイト操作
割り込み
シリアル通信
標準ライブラリ
サーボモーター
キャラクタ液晶表示
SPI通信
I2C通信(Wire)
メモリカード
メモリカード(File操作)
周期処理(MsTimer2)
時計(RTC)
アナログ I/O
アナログ信号の入力や出力をするためのライブラリです。
analogReference
- 概要
- アナログ入力で使われる基準電圧を設定します。analogRead関数は入力が基準電圧と同じとき1023を返します。 例えば、DEFAULT設定ではArduino互換の基準電圧5.0Vとして設定されるため、3.3Vを入力した場合は675が返されます。 ただし、5Vは入力できませんので注意してください。
なお、RAW12BIT(12ビットA/D変換)設定時は基準電圧と同じとき、4095を返します。 - 文法
- analogReference(uint8_t mode)
- パラメータ
- mode:
DEFAULT:5.0V (Arduino互換)
INTERNAL:1.1V (内蔵電圧)
EXTERNAL:AVREFピン供給電圧
RAW12BIT:3.3V (12ビットA/D変換そのままの値) - 戻り値
- なし
analogRead
- 概要
- アナログ値を読み込みます。
- 文法
- int analogRead(uint8_t analog_pin)
- パラメータ
- analog_pin: アナログピン番号 A0(14)~A3(17)
- 戻り値
- 0~1023、12ビットA/D変換時は、0~4095
analogWrite
- 概要
- アナログ値(PWM波)を出力します。LEDの明るさを変えたいときや、モータの回転スピードを調整したいときに使えます。PWM信号の周波数は約490Hzです。
- 文法
- analogWrite(uint8_t pin, int value);
- パラメータ
- pin: ピン番号(最大20chまで設定可能)
value: 出力するPWMのデューティ(0~255) - 戻り値
- なし
サンプルプログラム
CITRUS上のLEDを蛍のように光らせます。
#include <Arduino.h>
void setup(){
}
void loop(){
for(int i = 0; i < 256; i++){
analogWrite(PIN_LED0, i);
delay(3);
}
for(int i = 0; i < 256; i++){
analogWrite(PIN_LED0, 256 - i - 1);
delay(3);
}
}