PC-6001先週基板ができたので、今日はジャンパを通しました。面倒ですが、全部手配線に比べたら圧倒的に楽です。ちなみにUEWを使って半田面に配線したので、部品面は未だにスッカスカです。ISP用に背の高いコネクタをつけたくらい。Tiny2313をROMとして動作させられるかどうか、ここのところ試行しているわけですが。20MHz動作でも必ずアクセスが成功するというわけではないようです。稀にですが、誤動作することがあります。先日のなんちゃってROMですが、Enable信号をモニタするのはスピード的に辛そうなので、バッファをつけてみました。こんなものを試作してみました。ATtiny2313をROM代わりに使おうというものです。アドレスバスのピン数の都合で、64バイトまでしかハンドルできません。あとは全部イメージになりますが、起動時だけなので問題ないでしょう。Matsutsukaカテゴリ:AVRAVRで音声を出すことができたので、今度は映像信号に挑戦中です。映像信号の詳細についてはこのへんに詳細な説明があるので、いろいろ調べながらトライしてますが、まだきちんと理解しているわけではありません。Matsutsukaカテゴリ:AVRATtiny2313でのステレオサウンド再生テストです。FT245RLモジュールと、ATtiny2313を使い、きわめて簡単な回路でやってみました。データは単に垂れ流しているだけです。これで少しだけBitBangモードの使い方がわかったような気がします。Matsutsukaカテゴリ:AVRCPLDも書けるようになったので、そちらはブレッドボードからユニバーサル基板へ実装を移したあといったん終了。秋月のFT245RLモジュールをテストしました。何をしたってわけでもないですが、秋月のサンプルプログラムを動かしてみました。Matsutsukaカテゴリ:AVRパラレルポートからXilinxのCPLDに書き込めるようにJTAG用の回路を作ったのですが、これがうまく動いてくれません。回路は次のようになっています。9.2iのiMPACTから通信させようとすると、デバイスIDがオール0またはオール1になってしまいます。Matsutsukaカテゴリ:AVRATtiny2313の実験回路を作ったので、ちょいと回路を変更してPWM出力をしてみました。変更はきわめて簡単で、実験回路のPB2/OC0A(14番ピン)をD2から外し、RCAコネクタの信号線(内側)に入れます。RCAコネクタのもう片方はGNDに接続します。PC-6001私の手元にはATmega88は一個しかなく、やたら使い回ししまくって壊すのも怖いので、先日買ってきたATtiny2313で実験を始めました。ラッチを使わずにデータをハンドルできるかどうかです。次のような試験回路を使いました。使っているORゲートはHC32です。PC-6001一応同時再生ができるようになったので、例によりニコニコ動画からムービーを適当に拾ってきて録画してみました。PC-6001現在、AVRは内蔵の8MHzクロックで動作させています。手持ちのものが古い(2世代目)ATmega8Lで、2.7V~5.5Vでの駆動が可能な代わりに8MHzまでの動作となっているためです。姉妹品のATmega8は最高16MHzですが、4.5V~5.5Vでないと動作しません。PC-6001SDカードインタフェースはほぼ期待通りに動作しています。ハードを設計して、作って、ソフトを設計して、作ってというのは結構長い道のりですが、動いたときはうれしいものですね。いつもはソフトしか作らないので、またこれも格別なものがあります。いっても、今回は西田さんにもかなり助けられていますが。PC-6001なかなか苦しんでいたAVR版SDカードインタフェースですが、ファイルのデータ読み込みまで動作させることに成功しました。PC-6001AVRでは、割り込み処理中にも割り込み"要求"自体が禁止されていなければ、外部からの割り込みに対して要求が発生するようです。コメントにもあるように、その割り込みは保留(pending)され、現在処理中の割り込み処理が終了した後で処理されるようなのです。このあたりが情報源です。PC-6001どうもうまく動いてくれないSDカードインタフェースですが、問題はクリアになりました。わかりにくいので、シーケンス図にします。bufferがそれぞれフリップフロップやラッチです。PC-6001SDカードインタフェースのハードウェアが出来上がったので、早速実際のSDカード入出力を作り始めています。試しにディレクトリ情報を読み出しています。PC-6001ROMレスシステムの回路を試しに描いてみました。複雑度の雰囲気を掴むだけなので、正しい保証はありません。40ピン系(ATmega164/324/644)。次に、28ピン系(ATmega8L/88/168/328)。PC-6001西田さんからのコメントがあったので、ROMレスシステムについて考えてみました。PC-6001前回の回路がまた間違ってました。これまでデータ線のみでアドレスのラッチを忘れていました。データのタイミングがAVRの割り込みからは間に合わないので、同然アドレスもラッチする必要があります。旅行記レビューニュースTinyCoreMovableTypePC-6001Aboutこのブログはクリエイティブ・コモンズでライセンスされています。