トップ «前の日記(2004年07月08日) 最新 次の日記(2004年07月10日)» 編集
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|10|12|
2009|02|03|06|07|10|11|12|
2010|01|02|03|04|07|09|10|11|12|
2011|01|03|04|05|06|07|08|10|
2012|01|06|08|09|10|12|
2013|01|02|03|04|07|09|11|12|
2014|01|03|04|05|06|09|
2015|04|
2016|01|08|
ここは旧えびめもです。えびめも2に移行します(2016/12/1)

2004年07月09日

工作

AVR TINY12の実験のために少々工作した。TINY12は8pinの小さなマイコンで発振器も内蔵していて便利なICだ。パワーダウン時に1uA以下になるし、ほとんどの面でPICを上回っているんじゃないかな。もうPICの腐ったアセンブラにはもう絶対戻れない体になってしまいました。今回の実験テーマは
・CPUパワーダウンモード時にINT0のエッジ割込みが効くか(マニュアルによると効かないような記述が
  してあるので確かめてみる。)
・振動センサーのチャタリング周波数と持続時間の測定
の実験がテーマである。AVRはパワーダウン時にクロック発振もとめてしまって低消費電流にすることができるが、そうなると入力の同期サンプリングも行われなくなるから、エッジ割込みが効かなくなるらしい。マニュアルにはそのように記述されている。パワーダウンモードからの復帰にはレベル割込みを使えばよいようなので、その辺の実験をしみる。
また、サブのテーマとしてLED一個で1bitエンターテイメントを作ってみたい。とも考えている。実はファームはエミュレータ上で既に作ってあるので

AVRにリード線を一旦半田付けしてISPのコネクタをつけてプログラミング書き込む。面倒だけど。ライターソケットとか持ってれば楽なんだけどね。ベリファイが取れたところでリード線は外す。

スーパーキャパシタの上にTINY12を実装し、電源とGndを配線したところまで

全部空中配線で部品を載せて行きます。チップ部品は小さくて逆に取り付け位置に悩まないから楽。LEDやダイオードはやたらでかいので取りまわしに悩む。実際にはこの後にチップ104コンデンサでパスコンも載せました。

振動センサーの動作確認。LED制御もokだ。

次にシリコン型を熱湯でやわらかくする。

一度オス型を作って型成型しメス型を作った写真。

これに樹脂を流し込んで電子部を埋没させる。これで1日放置。明日が楽しみだ。

ファームを作ってみて分かったが、AVR TINY12はパワーダウンモードから復帰するときに

・INT0エッジ割り込みは不可
・INT0レベル割り込みはok
・PCINT(ピンチェンジ割り込み)はok
であった。レベル割りこみは、レベルを取り除かないと割り込みルーチンから抜けられなくなる(retiの次にまた割り込みベクタに飛ぶ)ので注意だな。エッジで取りたいときはpcintで代替できるけどpcintはピン毎にマスクはかけられないので、そのままenableのままにしておくと出力ピンの状態変化でも割り込みが発生してしまって使いにくい。まぁ上記の事を覚えておけばよいのであとはソフトで工夫次第だとおもいます。