HARO Max Time-stamp: <02/06/06 01:26:55 kawasan>

HARO Max

HARO

発案のもとになったこと

バンダイのHARO(そうあのガンダムに出て来るあのハロです)というおもちゃを購入したがなかなか育たない。 元々、話し掛けていないのが悪いともいうが。(^^;)
そこで強制的に話し掛けることで育成を促す事にした。 問題の解決方法がずれているとは言わないでくださいね。

実現方法

マイク入力回路部に割り込んで信号を定期的に入れて音声入力が あったとHAROに思い込ませることで実現させました (同時に通常の音声入力ももちろん可能とする)。 今回はこの疑似音声入力の追加回路をPIC16F84を使用して実現しました。 さらにそのプログラム開発はLinux環境(できればDebianで)を妄想しました。

追加回路について

以下の様な感じの回路です。

回路図
回路図

部品表
ItemQuantityReferencePartPart-Comment
11C11040.1uF セラミックコンデンサ
21C21uF/35V(TS)1uF タンタルコンデンサ
31C3101100pF セラミックコンデンサ
41IC1PIC16F84PICマイコン(Microchip社)
51P1MIC_SIGテストピン(省略可)
61R14.7K4.7K 抵抗

HAROとの接続は、3箇所のみです。

  1. MIC_SIGは、HAROのコンデンサマイクの端子に接続します。
    2極ありますが、その内の1極に接続します。選別方法は通常動作時にGNDへ一瞬接続した際にMIC入力の反応を示す方です。(^^;;;
  2. Batは、HAROの電池ホルダの+極に接続します。
  3. GNDは、HAROの電池ホルダの−極に接続します。
以下の写真が接続した際のものです。
接続写真-1
※写真をクリックすると倍寸写真になります。

ケースを閉めたとこの写真。
接続写真-2
後は電池カバーにPICを入れて蓋締めれば完成というところです。 写真右下のICがPICです。コンデンサや抵抗関係はICソケットに直接半田付けしてます。

PICマイコンのアセンブラ・プログラムについて

Debianパッケージのpicasmパッケージを今回は使用しました。 何種類かあるようですが、MPASMと互換のツールなのでこれを採用。 以下がInstllの際の手順です。
# apt-get install picasm

アセンブルのコマンドは以下の感じでできます。

$ picasm -pic16f84 -l haro_max.asm

今回のharo_max.asmのソースは、 こちら です。 詳しい内容はソースをみてください。(^^;
※Fileの文字コードはSJISコードです。

Makefileを用意しましたので、makeコマンド一発でHEX-fileを作成出来ます (あまり大したことはしてません)。

$ make

PICマイコンのプログラム書き込みについて

ライタ自体の回路は、 http://www.picfun.com/game01.html の物を利用しました。 もともと、PICEEというMS-DOS環境からの書き込みを以前は使用していたのです。(^^;

秋月のキットを使用&拡張して使ってます。
PIC Writer omote PIC Writer ura

そこで新規一転、 Linux環境でもプログラム書き込みがしたいと思いDebianのパッケージを検索しましたが、 どうも、Debian(potato)ではサポートされていないみたいです。 じゃ。Linuxではあるかなぁー。と、さがしたら http://www2.osk.3web.ne.jp/~nkon/3web/elec/pic/picwriter-1.1/ に、ありました。なんと日本人(語)でのものが。ラッキー。(^^)v
PICEEは、パラレルポートのBUSYを使用するタイプなので、Makefileを一箇所修正する 必要がありましたが、あっさり、コンパイルできました。以下はその時の操作の様子です。

$ vi Makefile
  #CFLAGS=-Wall -O2 -g -DUSE_BUSY
  CFLAGS=-Wall -O2 -g
  ↓
  CFLAGS=-Wall -O2 -g -DUSE_BUSY
  #CFLAGS=-Wall -O2 -g
$ make
$ su
# cp picwriter /usr/local/bin/
# chmod a+s /usr/local/bin/picwriter

書き込む時は、以下の様にして操作しました。

$ picwriter -t pic16f84 haro_max.hex

注意事項

もし、この改造をする際には、以下の事に注意してください。