2012/02/12

ATMEGA328Pで自作Arduino Pro 3.3V 8MHz スケッチ書き込めない問題

表面実装のATMEGA328PにArduino Pro 3.3V 8MHzのブートローダー入れて、
スケッチを書きこもうとすると
avrdude: stk500_recv(): programmer is not responding
というエラーが出て全く書き込めない。
(自作Arduinoは内蔵クロック使用)

Arduinoアプリ内のboards.txt内のフューズ設定は
Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328
pro328.bootloader.low_fuses=0xFF
pro328.bootloader.high_fuses=0xDA
pro328.bootloader.extended_fuses=0x05

なのでこれが原因か?と思い色々調べた結果、
どうやら上の設定は水晶発振器を使用する場合らしい。
内蔵を使う場合は
low_fusesを0xE2にする必要があるらしい。
フューズ設定からやり直したらエラーなく書き込めました〜

2012/02/11

自作Arduino フューズ設定:atmega328P(16MHz & 8MHz)

ATMEGA328Pの自作Arduinoのブートローダ焼くときに、フューズの設定が必要
各Arduinoのフューズ設定をメモでまとめとく

Duemilanove ATMEGA328
・lfuse FF
・hfuse DA
・efuse 05
・lock 0F
Arduino Pro 8MHz
・lfuse C6
・hfuse DD
・efuse 00
・lock 0F

その他はboards.txtを見るとよろし

2012/01/02

新年!javascriptイライラ棒ゲーム

あけましておめでとうございます。
年賀状代わりにjavaでイライラ棒ゲームつくりました。
下のソースコードをメモ帳に貼りつけて、拡張子htmlで保存すると遊べます。
<body onKeyDown="K=event.keyCode-37"><script>K=2;var x,y,t,o;t=0;x=1;y=1;o=0;var a=new Array(4294967295,3252805635,2563557169,4241287161,3251431299,2681005887,2682644287,2147746560,4294967295);function Y(){X=new Array(9);s=new String();t++;if(K==1)y--;if(K==2)x++;if(K==3)y++;if(K==0)x--;for(i=0;i<X.length;i++) {X[i]=new Array(32);for(j=0;j<X[i].length; j++){X[i][j]=a[i].toString(2).charAt(j);if(i==y&&j==x){if(X[i][j]==1){o=1;}else if(i==7&&j==31){o=2;}X[i][j]="★";}else{if(X[i][j]==0)X[i][j]="□";if(X[i][j]==1)X[i][j]="■";}s=s.concat(X[i][j]);}s=s.concat("<BR>");}s=s.concat("速度. "+t+"        あけましておめでとうございます!jun1chi");document.body.innerHTML=s;if(o==1){alert("Over");}else if(o==2){alert("Clear!");}else{setTimeout(Y,400-t*4);}}Y();</script>
実行するとすぐに動き始めます!
十字キーで★の進行方向を変えます。■にぶつかるとゲームオーバーです。
右端のゴールを目指して下さい。見難いですがコースは'2012'になってます。
今年も良いお年を!

2011/11/27

NeonDough webサイト

今進めている研究,NeonDoughのサイトを作りました.
展示での様子や子供たちの作品例,面白い使い方などを載せていく予定です.
http://web.sfc.keio.ac.jp/~yamajun/neondough/