アナログ出力
マイクロコントローラのピンはHighであるVcc値かのみ出力できる.その間の値を得るためには,マイクロコントローラはPWM(パルス幅変調)を使用する.
PWMは出力を各サンプリング区間のある割合だけHighに設定する変調方式である.この割合はPWM信号のデューティ比と呼ばれる.サンプリング区間が一定で十分に速い場合,結果はVccの割合と同じ値の信号となる.そのため,マイクロコントローラはPWMを行うために,オン-オフパルスの列を出力する.
以下に示すようにLEDと抵抗のペアをArduino Unoのピン,,およびに接続する.
"MaxValue" | 出力の最大値の絶対値 ymax |
"Negative" | 負の出力値を示すピン |
"Positive" | 正の出力値を示すピン |
"Timer" | 出力パルスを生成するタイマ |
"TimerMode" | タイマの動作モード |
"TimerTop" | タイマのTOP値 |
"SamplingPeriod" | 出力タイマのサンプリング周期 |
"Complementary" | コンプリメンタリ出力のピン |
出力値を y とすると,デューティ比はで計算される.ここで ymax は可能な最大出力値である.デューティ比は非負でなければならず,また,100より大きい値はすべて切り取られる.最大値の絶対値は{"pin", "Analog","MaxValue"->ymax}で明示的に指定できる.デフォルトでは,ymax は動作電圧である.
アナログピンは正の値のみ出力できる.出力が負の場合は,絶対値が出力される.2つ目のデジタルピンを使って,アナログピンの出力が負の値であることを示すことができる.
サブオプション"Timer","TimerMode","TimerTop"は波形の生成に使われるタイマと,タイマのその他のさまざまなパラメータを指定する.タイマと波形の詳細情報は,マイクロコントローラのデータシートに記載されている.特性"PulseWidthWaveform"は波形の生成に使用されたパラメータの情報を返す.
マイクロコントローラには,コンプリメンタリ出力値を出力できるものもある."Complementary"はコンプリメンタリ値を出力するピンを指定するサブオプションである.
LEDと抵抗のペアをArduino Yunのピンとに接続する.