対象: Teensy 4.x を使った開発のために、GCCとSEGGERのセットアップを行います。 arm-none-eabi-gccとボードのライブラリを準備する。

✅ 必要な準備 (GCC)

  1. 🔌 必要なもの
    • 🖥 Teensy 4.x 本体
    • 🛠 ARMコンパイラ:
    • GNU Tools for ARM Embedded Processors から gcc をダウンロードして展開します。
      • https://developer.arm.com/open-source/gnu-toolchain
      • https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
dnf install arm-none-eabi-gcc
dnf install arm-none-eabi-newlib

pushd bin
cp -aus /usr/bin/arm-none-eabi* .
popd
  1. 📂 必要なボードライブラリ
    • それぞれのボードのライブラリ。
  2. 📜 開発の簡略化
    • makeで開発できるテンプレートを使用すると楽。ここからダウンロード。
    • tools フォルダにダウンロードした gcc を配置します。
    • src フォルダに main.cpp を作成します。サンプルは以下の通り。
// ©2017 Yuichiro Nakada

#include "WProgram.h"

void setup()
{
	pinMode(13, OUTPUT);
	analogWriteResolution(8);	// 8bit/Resolution
}

void loop()
{
	if (usb_audio_receive_buffer[0]<0x7fff) digitalWriteFast(13, LOW);
	else digitalWriteFast(13, HIGH);
	analogWrite(9, 50);
}

extern "C" int main()
{
	setup();
	while (1) {
		loop();
		yield();
	}
}

✅ 必要な準備 (SEGGER)

  1. 🔌 必要なもの
    • 🖥 Teensy 4.x 本体
    • 🛠 Embedded Studio for ARM
  2. 📜 開発の簡略化
    • makeで開発できるテンプレートを準備。ここからダウンロード。
      • 展開した /bin/segger-cc/tools/arm-segger/bin にコピーします。
      • 展開した /include/tools/arm-segger/include にコピーします。
    • teensy4.mini以下にmain.cを書く。サンプルは以下の通り。
    • make uploadを実行。
// ©2020 Yuichiro Nakada

#include "WProgram.h"

int main()
{
	pinMode(13, OUTPUT);
	digitalWriteFast(13, HIGH);

	while (1) {
		//Serial.println("Hello World...");
//		usb_seremu_write("Hello World...\n\r", 16);
		digitalWriteFast(13, HIGH);
		delay(500);
		digitalWriteFast(13, LOW);
		delay(500);
	}
}

🐳 Docker を使った環境構築

簡単なステップでセットアップ!

  1. 🛠 Docker イメージを準備する
    $ docker pull berry0/teensy-dev:latest
    $ docker run --net=host -it -d --name teensy-dev berry0/teensy-dev:latest
    $ docker exec -it teensy-dev /bin/bash
    
  2. 📂 必要な作業を実行
    # cd /arduino-sdk/teensy/tools/
    # echo "yes" | sh setup_segger.sh
    # cd /arduino-sdk/teensy/teensy4
    # make
    # make upload
    # make clean
    # cd /arduino-sdk/teensy/teensy4.mini
    # make
    # make upload
    # make clean
    
  3. 📖 詳細情報はこちら

🎉 これで、Teensy 4.x を使った開発準備は完了です! Happy Coding! 😊