M5 Stack 電圧をアナログ値として取得し、任意の区間の値を傾きとして計算し、画面に表示させたい

実現したいこと

①電圧をアナログ値としてM5 Stackに入力する。
②取得したアナログ値をある一定の区間を切り出し、切り出した区間をV/secという風に傾きとして計算させたい。
③計算で出した傾きを画面に表示させる。

発生している問題・分からないこと

取得したアナログ値の傾きの出し方が分からないです。

説明が足りず、すみません。
電圧の取得までのコードです。
取得してから取得した電圧値をどう格納して、取り出すかが分かりません。
例えば、0.5V~2.5V間の電圧値を取り出したいとなった時

milis関数などを使用してうまくできるのでしょうか?
あまり使い方も分かっていないので、そこも教えていただけると幸いです。

該当のソースコード

#include <M5Stack.h> float value1 = 0;//アナログ値1を格納 float value2 = 0;//アナログ値2を格納 float voltage1 = 0;//電圧値CH1を格納 float voltage2 = 0;//電圧値CH2を格納 const int CH1_PIN = 35; const int CH2_PIN = 36; const float MAX_VOLTAGE = 3.3; // 3.3Vを電源とした場合 const float ANALOG_MAX = 4095; // ESP32の場合 void setup() { M5.begin(); // 初期化処理 } void loop() { // CH1, CH2(35, 36pin)のアナログ入力を取得し電圧に変換 value1 = analogRead(CH1_PIN); value2 = analogRead(CH2_PIN); voltage1 = value1 * MAX_VOLTAGE / ANALOG_MAX; voltage2 = value2 * MAX_VOLTAGE / ANALOG_MAX; float stroke[] = {voltage1}; // CH1, CH2(35, 36pin)の電圧とアナログ入力値を表示 M5.Lcd.begin(); M5.Lcd.fillScreen(BLACK); M5.Lcd.setTextSize(4); M5.Lcd.drawString("CH1=" + String(stroke[0] = voltage1) + "V", 0, 0);  delay(1);

試したこと・調べたこと

上記の詳細・結果

同様の質問が見つかりませんでした。

補足

特になし

コメントを投稿

0 コメント