ユーザ用ツール

サイト用ツール


ja-jp_commands:reference:ianalogwritef

IanalogWritef()

IanalogWritef()はユーザーの実数値をアナログ出力範囲に変換して出力します。

IanalogWritef コマンドの動作フロー

void IanalogWritef(uint8_t ch, float min, float max, float value)

コマンド

コマンド 引数 戻り値 動作
IanalogWritef(ch, min, max, value) uint8_t ch — 出力するアナログ出力ピンまたはチャネル
float min — ユーザー入力範囲の最小値
float max — ユーザー入力範囲の最大値
float value — 出力するユーザー入力値
void ユーザーの実数値をアナログ出力範囲に変換して出力します。

使用例

const uint8_t DEMAND_INPUT = A0;
const uint8_t OUTPUT_CHANNEL = 0;
 
void setup() {
  Serial.begin(115200);
}
 
void loop() {
  const float demandVolts = IanalogReadf(DEMAND_INPUT, 0.0F, 10.0F);  // アナログ入力値を指定した浮動小数点範囲に変換します。
  IanalogWritef(OUTPUT_CHANNEL, 0.0F, 10.0F, demandVolts);  // ユーザーの浮動小数点値をアナログ出力範囲に変換して出力します。
 
  Serial.print(F("demand="));
  Serial.print(demandVolts, 2);
  Serial.println(F("V"));
  delay(250);
}

注意事項

  • 引数の順序は必ずch, min, max, valueです。
  • minmaxは電気的出力範囲を直接設定する値ではなく、valueを解釈するユーザー入力範囲です。
  • valuemin~maxの範囲外の場合、内部のIscalef()により近い方の端点に制限されます。
  • minmaxより大きくすると出力方向が反転します。
  • minmaxが同じ場合、出力値は0になります。
  • analogWriteInit()analogWriteFreq()でTimer TOPを変えると実際のanalogWrite()出力範囲も変わります。16ビット0~65535の分解能を維持するには既定のTOP 65535を使用します。
  • 出力モジュールのDIPスイッチ、外部電源、配線と、接続機器の入力仕様を一致させてください。
  • 同じタイマを使用するPWM、パルス出力、カウンタコマンドと同時使用しません。

同じカテゴリの内蔵コマンド

ja-jp_commands/reference/ianalogwritef.txt · 最終更新: by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki