ラジオ少年の楽しい電子工作、その他

AVRを使った簡単な回路の実験、そして日々のちょっとした出来事を書きます。

T-SH7706LAN CPU ボード

2010年10月29日 | 日記
久しぶりに引っぱり出して来て電源を入れてみました。
2年ほど前に作ったSH7706CPUを使った基板です。MES2とLINUXを切り替えて使うことが出来ます。
基本はSDカードですが、10GのHDDをつないでいます。
インターフェースはRS232CとLANを持っています。
しばらく触っていなかったので、すっかり忘れてしまいました。
OSはMESver2.5r17とVMLINUXの二つです。
詳細はhttp://mes.sourceforge.jp/mes2/index.htmlを参照して下さい。
左がグラフィックLCDでその右がHDDです。その下に7706を搭載した基板が有ります。


コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

AVRのパラレルプログラミング

2010年10月28日 | 日記
AVRパラレルプログラミングを色々実験?してきましたが、私なりの結論(オーバーかな)を書きます。

パラレルプログラミングモードに入る条件は

① VCCを0V、RESETピンを0V、Prog_enableピンを全てLow(0)に設定。
② VCCとGND間に4.5~5.5Vを印加。
③ 20μs以内にVCCが最低1.8Vに達することを保証。
④ 20~60μs待ち、RESETに11.5~12.5Vを印加。
⑤ Prog_enable識別がラッチされてしまうのを確実にするため、高電圧が印加されてしまった後、最低10μs、Prog_enableピンを無変化に保つ。並列プログラミング指令を与えるのにも先立って少なくとも300μs間待つ。
となっています。

上記は条件のみでAVRの中でどのような状況になるのかは解説がなく詳細は分かりません。
並列プログラムモードに入ったかどうかは、シグネチャーバイト読み出しで正しくデータが出てくれば並列プログラムモードに入っていることが分かります。

ここで、ターゲットのAVRの状態を考えてみます。私の実験したAVRはATtiny2313です。

1,RSTDISB=1(非プログラム)、FROMにプログラムが書きこまれている。
2, RSTDISB=1(非プログラム)、FROMは消去されている。
3,RSTDISB=0(プログラム)、FROMにプログラムが書きこまれている。
4, RSTDISB=0(プログラム)、FROMは消去されている。

1,2については問題なく並列プログラムモードに入ることが出来Fuse bitの書き換えが出来ます。

3,ですがこれが以外とうまく行かずシグネチャーバイトが読み出せたりなかったり、AVRによって出来たり出来なかったりの状態です。
4,についてはどうやらうまく読み出せているようです。

さて、3ですが、RESETがプログラムでディセーブルされていることが関係するのかどうも並列モードに入ることにばらつき出ている様な感じです。つまり、このモードに入れないとVccが供給されているときは、AVRの中に書き込まれたプログラムが動作状態になり、これがシグネチャーバイト読みだしを邪魔して読み出し不能となるようです。
ロジアナで読み出しのタイミングを見てみますと、OEはちゃんとLOWに落ちますがWRがLOWになりっぱなしです。
うまく読み出せる時はWRはずっとHighになっています。

このWRのHighはターゲットのAVRのプログラムでHighになってしまう様です。
書き込まれたプログラムに依ってはうまく読み出せる場合も有ります。

私の作ったハード(HVRescue_Shield12)及び、プログラムが原因している可能性は大きいと思います。
ATtiny2313のエラッタに並列プログラムで不具合があることも記載されています。

SPIENのみの書き換えは問題なく出来ます。問題は”RSTDISB”の書き換えです。
1~4の条件に関係なく、この書き換えが出来てこその並列プログラマですから。


並列書き込み器は以外と難しいのかな?と言うのが今の感触です。例えば+5Vの立ち上がり、この電圧は普通5Vレギュレータで作り、TRでON/OFFをします。
この立ち上がりがあまりシビアですと、簡単な電源では駄目と言うことになります。
並列プログラム状態のAVRの中の説明があればもっと作りやすいかも知れません。

ATMELの純正書き込み器では実際はどうなのか知りたいものです。きっとうまく行くのでしょうね。

MR.Chanの並列プログラマでの書き込みは全く問題なく出来てます。

どういう所を注意して作ったらいいのか、ググッても私の知りたい事は無さそうですね。







































コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

秋桜ー2

2010年10月25日 | 日記
違う種類のコスモスです。
上の写真がディープレッド キャンパス、下がイエローコスモスです。
花びらの形と色がが少し普通のコスモスと異なります。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

秋桜

2010年10月25日 | 日記
近くの国立公園のコスモスを見てきました。丁度今が満開状態でした。
今年は猛暑の影響で開花が遅れたようです。
コスモスも香りがあるのですね、去年も来たのですが、花の香りは感じません
でした。秋空の下に咲く満開の秋桜、いいですね。
写真はコスモスの丘と言われる所の花で、一般的な何処でも見ることができる
種類です。
違う場所には、違う種類のコスモスも沢山咲いていました。10月31日(日)は
入場料が無料になるとか、でも、花は盛りを過ぎてしまうかも知れません。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

出た!BUSY

2010年10月24日 | 日記
回路を変更したりやっていました。しかし、よく考えると私の理解不足、オリジナルの回路でうまく動くはずとの結論に達しました。
プログラムを多少いじくり、RDY/BUSYがLOW、つまりBUSYになりました。
2個のATtiny2313のFuse(LOW BYTE)を書き換えることが出来ました。
条件を変えてHigh byteの書き換えが出来ればめでたしめでたしです。
ロジアナの波形を添付します。
ばっちりBUSYになっています。

でも、問題が有ります。ターゲットのVccの制御はやっていません。12Vは制御しています。
スタンドアローンでfuseのhigh byteを書き換えることが出来ると便利のいいtoolになるのですが
bit0(RSTDISB)をプログラムすると、その直後からRSTとして機能しなくなります。Vccはon状態ですので、ターゲットのAVRに何かプログラムが入っているとバテッィングして書き込みプログラムが影響を受けてしまいます。
当然の事ながら、元に戻そうにもRSTが死んでいますので、もうパラレルプログラミングモードには入れません。
fuse low byte, high byte(RSTDISBを除く)の書き込みはstand aloneで書き込みは出来るようです。
RSTDISBの不具合を解決するにはVccのcontrolをしないと駄目です。ATtiny2313でPORTが足りずちょっと厳しいです。
まー取りあえずstand aloneでfuse の書き込みは出来たと言う所でしょうか。

コメント (3)
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする