アナログ出力

マイクロコントローラのピンはHighであるVcc値かのみ出力できる.その間の値を得るためには,マイクロコントローラはPWM(パルス幅変調)を使用する.

PWMは出力を各サンプリング区間のある割合だけHighに設定する変調方式である.この割合はPWM信号のデューティ比と呼ばれる.サンプリング区間が一定で十分に速い場合,結果はVccの割合と同じ値の信号となる.そのため,マイクロコントローラはPWMを行うために,オン-オフパルスの列を出力する.

2.gif

以下に示すようにLEDと抵抗のペアをArduino Unoのピン,およびに接続する.

6.gif

パッケージをロードする.
ピンに接続されているLEDを,最大輝度のでオンにする.

以下のサブオプションが使用できる:

"MaxValue"出力の最大値の絶対値 ymax
"Negative"負の出力値を示すピン
"Positive"正の出力値を示すピン
"Timer"出力パルスを生成するタイマ
"TimerMode"タイマの動作モード
"TimerTop"タイマのTOP値
"SamplingPeriod"出力タイマのサンプリング周期
"Complementary"コンプリメンタリ出力のピン

アナログ出力のサブオプション

出力値を y とすると,デューティ比はで計算される.ここで ymax は可能な最大出力値である.デューティ比は非負でなければならず,また,100より大きい値はすべて切り取られる.最大値の絶対値は{"pin", "Analog","MaxValue"->ymax}で明示的に指定できる.デフォルトでは,ymax は動作電圧である.

アナログピンは正の値のみ出力できる.出力が負の場合は,絶対値が出力される.2つ目のデジタルピンを使って,アナログピンの出力が負の値であることを示すことができる.

ピンが絶対値を出力し,ピンのLEDが出力値が負であることを示すように設定する.

正の値を示すようにピンを設定することもできる.

出力値が正であるかどうかをピンのLEDが示すように設定する.

2つのデジタルピンを使って,正と負を明示的に示す.

ピン4を正の値,ピンは5を負の値用に設定する.

サブオプション"Timer""TimerMode""TimerTop"は波形の生成に使われるタイマと,タイマのその他のさまざまなパラメータを指定する.タイマと波形の詳細情報は,マイクロコントローラのデータシートに記載されている.特性"PulseWidthWaveform"は波形の生成に使用されたパラメータの情報を返す.

マイクロコントローラには,コンプリメンタリ出力値を出力できるものもある."Complementary"はコンプリメンタリ値を出力するピンを指定するサブオプションである.

LEDと抵抗のペアをArduino Yunのピンに接続する.

15.gif

とコンプリメンタリ値がそれぞれピンに出力される: