Hatena::ブログ(Diary)

Hacking My Way 〜 itogのhack日記 RSSフィード

2015-02-14

8pino使ってみた

f:id:itog:20150214211418j:image

8pinoはVITROが開発する世界最小クラスのArduino互換ボードです。

昨年末に手に入れていたので使ってみました。だいたいマニュアルに書いてある通りです。

開発環境をインストール

Arudinoの開発環境(IDE)Arduino Softwareをインストールします。Adruino Softwareには公式のもの以外に亜流のものがあって、8pinoの場合はAdafruit Arduinoを使います。

Adafruit Arduinoは以下からDLできます。

https://learn.adafruit.com/introducing-trinket/setting-up-with-arduino-ide

DLしたらzipを解凍してAdafruit Arduinoを実行します。

Macの場合、設定によってはSecurity & Privacy設定で許可する必要があります。

Arudino Softwareを起動したら、メニューから以下を設定します。

Tools->Board->Adafruit Gemma 8MHz
Tools->Programmer->USBtinyISP

接続

microUSBケーブルに8pinoを接続します。端子が接触する向きを確認して接続しましょう。

f:id:itog:20150214200549j:image

microUSBコネクタを上の辺が長い台形として見た場合にICが下にくる向きです。

f:id:itog:20150214200720j:image

書き込み

8pinoではIOポートがUSBと共用になっているので、書き込みは動作中にいきなり書き込むことは出来ません。以下の手順で書き込みを行います。

  • Arduino Softwareでスケッチを書く
  • Verifyでエラーがないことを確認
  • USBケーブルをPCから抜く ※micro端子から8pinoを抜くことは推奨されていない
  • USBケーブルをPCに挿す
  • Arduino Softwareでuploadしてスケッチを書き込む

スケッチ

公式サイトにあるLチカと、スイッチでのLED ON/OFFスケッチを実行してみました。以下スケッチで0番ピンをGNDにショートさせるとLEDが点灯します。

#define PIN_LED 1
#define PIN_SW 0

void setup() {
  pinMode(PIN_LED, OUTPUT);
  pinMode(PIN_SW, INPUT_PULLUP);
}

void loop() {
  if (digitalRead(PIN_SW) == LOW) {
    digitalWrite(PIN_LED, HIGH);
  } else {
    digitalWrite(PIN_LED, LOW);
  }
  delay(10);
}

digitalRead()/ digitalWrite()が期待通り動作することが確認出来ました。


注意点としては、8pinoのmicroUSBは挿抜耐久回数が少ないのでUSBの抜き差しを多様する用途には使えないのと、ヘッダピンでも付けない限りパーツをあれこれ試すというような用途にも向いていない。

開発にはAdafruit Trinket 8MHz (3.3v logic)を使い、見せる用にパッケージを小型化するために8pinoを使う、といった使い方が想定されます。

あわせて読みたいブログパーツ テクノラティのお気に入りに追加する