TouchShield Slideliquidware で販売している抵抗式タッチ・パネル付きの 3インチ OLED (有機EL) ディスプレイ搭載の Arduino 用シールドです。解像度は 320 × 240 で Arduino にピッタリ重なるサイズです。

fig1-1.JPG
■TouchShield Slide は Arduino 互換機
 TouchSheild Slide は Arduino のシールドですが、実は AVR マイコン (ATmega2560, ROM 256K) とフラッシュ・メモリ(2Mバイト)が載っている Arduino 互換機になっています。Arduino の上に Touch Sheild Slide を載せるとニつの Arduino のスケッチが動くことになります。フラッシュ・メモリは、画像ファイルなどを記録することができます。

 Arduino と TouchShield Slide との間では、Arduino の 2, 3 ピン(ディジタル・ピン)を使ったソフトウェア・シリアルによる通信ができます。2, 3 ピン以外は Arduino に対して影響しません。TouchSheild Slide にメイン・プログラムを書いておき、アナログ入力やサーボ・モータの制御などを、Arduino にさせる役割分担をするとよいようです。

■Antipasto Arduino IDE
 TouchShield Slide にプログラムを書き込むには、Arduino のハードウェアと、Antipasto Arduino IDE が必要です。まず、Antipasto Arduino IDE をダウンロード(原稿執筆時では Arduino 0018-Antipasto-0042)して、展開します。arduino.exe を起動すると Arduino IDE の最新版をダウンロードするか尋ねるダイアログが出ますが、NO をクリックします。

■Antipasto Arduino IDE で Arduino に書き込む
 TouchShield Slide シールドを取り付ける前に、Antipasto Arduino IDE で  Arduino にスケッチを書き込みます。スケッチは何でもかまわない(たとえば LED を点滅させる Blink)のですが、Antipasto Arduino IDE で書き込んでおくことが必要です。これは、TouchSheild Slide にスケッチを書き込むときに、Arduino を経由する仕組みを書き込んでおく必要があるためです。

■TouchShield Slide を使ってみる
 これで、準備が整ったので TouchSheild Slide を使ってみます。TouchSheild Slide を先ほどスケッチを書き込んだ Arduino に取り付けます。そして Antipasto Arduino IDE の設定を TouchSheild Slide 用に変更します。Tools メニューの Serial Port は、Arduino のポートのままで OK です。Board を TouchSheild Slide に変更します。

fig1-2.png Examples → Touch EllipseAtTouch にある、スケッチを書き込んでみましょう。TouchSheild Slide の横にある、小さなスイッチを押してから、アップロード・ボタンを押します。スイッチを押し忘れると書き込みに失敗するので注意してください。

fig1-3.png 内容は次のようになっています。setup 関数で背景を黒く消して、描画色を設定しています。loop関数では、タッチを検出した位置に円を繰り返し描いています。専用のIDEを使うため、ライブラリの読み込みなども必要なく、とても簡単にスケッチが書けることがわかります。

/**
 * EllipseAtTouch
 * Example by Mike Gionfriddo
 *
 * This example draws an ellipe at
 * the point of touch on the TouchShield
 */
void setup() {
    background(0,0,0); //this paints the whole background black
    stroke(0,0,255);   //the outline of the next shape I draw will be blue
    fill(0,0,255);     //the inside fill of the next shape I draw will be blue
}

void loop() {
    gettouch(); //find out where a finger is touching
    ellipse(mouseX, mouseY, 3, 3); // draw an ellipse(x, y, width, height)
}





 動画を見ると、起動メッセージが出た後、スケッチが動作していることがわかります。タッチ・パネルの反応もよいと思います。

(光永 法明)


トラックバック(0)

このブログ記事を参照しているブログ一覧: TouchShield Slide を使ってみよう <1>

このブログ記事に対するトラックバックURL: http://www.eleki-jack.com/mt/mt-tb.cgi/5080







newハイパー・マイコンmbedでインターネット電子工作


マイコンと電子工作 No.6


マイコンと電子工作 No.4


マイコンと電子工作No.1
サポート・ページはこちら