Microchip AVR-IoT WA開発ボードをArduino化して、Arduino IDEでプログラムを開発できるように構築します。開発環境の詳細な構築方法は「MegaCoreX」を参照してください。

AVR-IoT WA開発ボード開発環境の構築

Arduino IDEを使ったAVR-IoT WA開発ボード開発環境の構築の手順を次に示します。

  1. Arduino IDEを立ち上げて、メニューから「ファイル」→「環境設定」を開き、「追加のボードマネージャのURL」次のデータを設定し、「OK」をクリックします。
  2. https://mcudude.github.io/MegaCoreX/package_MCUdude_MegaCoreX_index.json

  3. 「ツール」→「ボード」→「ボードマネージャ」をクリックし、「megacore」と入力し、「MegaCoreX」をインストールします
  4. 「ツール」→「ボード」で、「MegaCoreX」→「Atmega4808」を選択します。
  5. 作成したプログラムをESP32 に書き込むために、「ツール」→「書き込み装置」で、「Atmel nEDBG(ATSAMD21E18)」を選択します。

AVR-IoT WA開発ボード開発環境の確認プログラムの作成

AVR-IoT WA開発ボード開発環境で確認用のプログラムを作成します。AVR-IoT WA開発ボードの各ピンの割り当ては次のようになっています。

誤りがあります。SW1はPF5です。

確認プログラム「AVR-IOTtest.ino」を次に示します。オンボード上の4個のLEDを点滅し、オンボード上のSW1を入力し、シリアル転送は「Serial2」を使用します。

AVR-IOTtest.ino

#define DSW_PIN (PIN_PF5)

#define DLED1_PIN (PIN_PD3)
#define DLED2_PIN (PIN_PD2)
#define DLED3_PIN (PIN_PD1)
#define DLED4_PIN (PIN_PD0)

void setup() {
  Serial2.begin(9600);
  Serial2.println("AVR-IOT WA test");
  
  pinMode( DSW_PIN, INPUT );
  pinMode(DLED1_PIN, OUTPUT);
  pinMode(DLED2_PIN, OUTPUT);
  pinMode(DLED3_PIN, OUTPUT);
  pinMode(DLED4_PIN, OUTPUT);
}

void loop() {
  int value;
    
  value = digitalRead( DSW_PIN );
  Serial2.println( value );

  digitalWrite(DLED1_PIN, value);
  digitalWrite(DLED2_PIN, HIGH);
  digitalWrite(DLED3_PIN, HIGH);
  digitalWrite(DLED4_PIN, HIGH);
  delay(1000);
  digitalWrite(DLED1_PIN, value);
  digitalWrite(DLED2_PIN, LOW);
  digitalWrite(DLED3_PIN, LOW);
  digitalWrite(DLED4_PIN, LOW);

  delay( 1000 );
}

AVR-IoT WA開発ボード開発環境の確認プログラムの実行

確認プログラム「AVR-IOTtest.ino」を実行します。オンボード上の4個のLEDは点滅し、オンボード上のSW1の入力は、次のように入力できました。