Chip123 科技應用創新平台

標題: 有關VGA實驗一問!!! [打印本頁]

作者: nic740917    時間: 2008-3-3 09:19 PM
標題: 有關VGA實驗一問!!!
我目前使用華亨數位的實驗平台,並且接上一塊VGA顯示器實驗版,5 R8 @. o# _$ P( p/ I& y8 C
現在已經將 方塊 球 算出來,顯示在螢幕上了!!
" O0 g5 ]# I7 e不過下一步我需要當球跟方塊碰撞時,方塊會消失,球會反彈,
1 A/ P/ X: V6 }0 W  ?; S& L' x9 k1 P' [因為這些程式是我硬兜出來的,網路上所有的資料都只有在講述水平垂直訊號而已,資料真的有限!
- M6 V1 L1 n; u/ T7 W所以想請問大大,假使我需要做到方塊會消失,球會反彈的話,
- {5 y# R0 V" h5 J, F那我該如何下手!!
作者: masonchung    時間: 2008-3-3 10:13 PM
請把你的code 貼上來0 k* A0 i6 h0 H
要不然華亨數位的實驗平台 可不像中華電信的小烏龜 人手一隻阿
作者: nic740917    時間: 2008-3-3 10:41 PM
附件中有整個PROJECT,其中的Pong Module是我要新增功能的Module!
; g6 ?* C" S- z! y0 X裡面目前功能是有顆球會動,以及下方有塊板子可左右移動,當碰觸到球會反彈,; y" X0 k. P8 `' o1 i6 K$ U! j
上方的方塊我已經加好了,不過修改過的程式放在實驗室電腦,% [. L0 U5 s1 G6 g- ^- A, A
目前最有困難的就是我不知道如何撰寫,當球碰到上方的方塊時,
4 {* p* T% ^' M* D方塊會消失!!PS.現在已經可以反彈了,卻不會寫消失的程式!!
作者: masonchung    時間: 2008-3-3 10:47 PM
消失 有兩種
: {( ]1 E7 z  N! J一是與背景顏色相同
# T- {8 T) u" X# Q2 l& w. l' F二是方塊VGA 訊號 disable  h( v3 c+ w; a. C
不知道那種比較好作?
作者: nic740917    時間: 2008-3-3 11:13 PM
照大大這麼說的話,應該是第2種方法會比較好做!!* r$ L1 _# o9 F! C7 V9 j  I( k
上方的方塊部分我是多做10個wire brick1  ~  brick10;
2 y1 @5 S5 s$ e2 K假如說現在球已經碰到我所做的這些brick,; X/ N! r% z7 R8 F) V
應該要怎麼樣去判斷他已經碰觸到?$ f3 U6 g$ [: ^" e3 F
還有要怎麼樣讓方塊VGA訊號不使用!??
作者: tommywgt    時間: 2008-3-11 11:53 AM
以前我在寫撞球的code時用的是球的直徑, 至於角度我是用atan算的
! Q" Y, A8 V2 ], Z1 l4 Y3 u# D$ A" ]* j7 I/ N6 p/ l4 k8 G
給你參考一下
作者: nic740917    時間: 2008-3-18 08:13 PM
你好..我現在碰到的問題是當球體跟磚塊碰到不會消失,  q* h2 x0 |% `' j; v
我的磚塊程式碼為
  Z+ T, {5 F  p- vwire brick1  = (CounterX >= BrickPosition + 8) &&      
( R. B) v7 @+ h. c, {- u5 o6 i7 ~' e                         (CounterX <= BrickPosition + 120) &&, q& i- j# t8 |( v  W8 l: K
                         (CounterY[8:4] == 1);) t( g' ]! G* g: Q3 H7 o
亦或是# b0 S# J- m$ I. l0 l) C, P
reg brick1;' _, Z9 l. i2 g) J" y
always @ (posedge clk). b: y/ e2 B. L4 i' j. F$ t' G
begin
7 n2 _! H" F& P, D9 i" A  brick1  = (CounterX >= BrickPosition + 8) &&      ! S2 `6 V1 v  _- ^( Q
                    (CounterX <= BrickPosition + 120) &&7 B1 p4 c! w: n+ I2 `0 j" l
                    (CounterY[8:4] == 1);' L1 P( h3 |: m& y
end3 f$ A: F: z- Y& W& k

* B$ A6 n& i5 \2 _! t0 Y; Z9 D此兩種方法都是呈現磚塊的CODE!!
+ b% O- {. b1 u+ f% x可是我想寫出消失的話~~我用下列的方法還是不行. u8 C# X1 D( u2 R9 \3 P$ [
always @ (posedge clk), v+ ~4 \* P6 N9 W
begin
1 F2 t3 s8 v( m$ g8 f# r) @    if( 條件 )
0 F+ Q8 B; L% R/ q      brick1 = 0;
1 u  W: Z: {9 }% x0 A! D. H2 j end
! a- H7 i/ {9 u7 s8 K
# {" ]& b& g8 T我的目的是想要當碰撞條件達到,brick1磚塊=0 ,不過依然失敗!!!$ E/ V0 B) z% x
是不是我想要讓磚塊這個VGA訊號不使用的方式寫錯了!!!
作者: nic740917    時間: 2008-3-18 09:12 PM
還有我上傳的程式..我始終找不到哪個可以當作判斷讓磚塊消失的條件,
, }5 _8 q  P# _0 ~! e: \- c請大大幫我看看是不是ResetCollision這個~
  }) _' x& m) f0 B/ w6 \1 q不過我套入還是一樣~~沒有效果!!!!!!!




歡迎光臨 Chip123 科技應用創新平台 (http://chip123.com/) Powered by Discuz! X3.2