posted by rerofumi
2007/5/2 水曜日 3:40:25
プレイができるところまでできた。
–> Flash video
上のビデオは撮影用に右側のパドルを玉と同じ高さになるオートモードにしてある。それゆえ挙動がおかしいのは気にしない方向で。
ボールはパドルで打ち返す度に速度を増していく、8往復でスタート時の倍くらいの速度。パドルの中央で返すとボールは鋭角で(相手に向かって)飛んでいき、パドルの端で返すと鈍角(上下の壁に向かって)飛んでいく感じになるので、対人間戦だとわりとボールが散らばるはず。
ソースコード(CY8C29466用プロジェクト)
ntsc_pong.zip
テスト回路はこんな感じで作成。
回路図。
今回どうしてもボリュームでダイアル式のパドルコントロールにしたかったので、入力に ADコンバータを使ったのだけれども、PSoC の ADC モジュールはカウンターと割り込みを組み合わせて計測するためその割り込みタイミングでソフトウェア CRTC が乱される罠。
上のほうで歪んでいるのはそのため。
まあ、そのへんあきらめて取り敢えず完成させてみようかといった方針なので放置の方向で。
右のパドルが左側によっていて、都合ゲームフィールドが狭くなっているのも色々と苦しいところがありまして。
取り敢えずできたので良しとしようか。
PSoC は色々とラクチンで便利なんだけれども、問題点があることも今回見えたかなー。
タイミングクリティカルな処理にはどうも弱いというか。そういったところは、デジタルモジュールで簡潔させて、プロセッサコアを持ち出さない様にするしかない感じかな。
5月 20th, 2007 at 16:06:59
はじめまして、VSoCを使わずにできるんですね、すごい。
5月 22nd, 2007 at 2:03:11
ビデオ信号生成原理のところを自分で作ってみたかったので