🦠
XIAO ESP32C3で始めるnanoFramework ~ADC~
Seeed Studio XIAO ESP32C3で.NET nanoFrameworkを動かす記事というか雑記。
今回は、ADC。可変抵抗の回し具合を取得して表示します。
ハードウェア
可変抵抗をXIAO ESP32C3に繋ぎます。
- XIAO ESP32C3 GND - 可変抵抗の右端ピン
- XIAO ESP32C3 3V3 - 可変抵抗の左端ピン
- XIAO ESP32C3 A0 - 可変抵抗の中央ピン
NuGetパッケージ
ADCするためのnanoFramework.System.Device.Adcを追加します。
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="nanoFramework.CoreLibrary" version="1.14.2" targetFramework="netnano1.0" />
<package id="nanoFramework.System.Device.Adc" version="1.1.6" targetFramework="netnano1.0" />
</packages>
C#コード
1秒周期に可変抵抗の回し具合をA/Dコンバートして取得、出力ウィンドウに表示します。
実行したところ、MinValue,MaxValue=0,4095でした。
なお、Configuration.SetPinFunction()は不要でした。
using System.Device.Adc;
using System.Diagnostics;
using System.Threading;
var controller = new AdcController();
Debug.WriteLine($"MinValue,MaxValue={controller.MinValue},{controller.MaxValue}");
var channel = controller.OpenChannel(2); // ADC1_CH2 ... GPIO2
while (true)
{
Debug.WriteLine($"Value,Ratio={channel.ReadValue()},{channel.ReadRatio()}");
Thread.Sleep(1000);
}
Discussion