Thông báo

Collapse
No announcement yet.

chương trình vẽ hình trên FPGA ?

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • chương trình vẽ hình trên FPGA ?

    mình đang làm đề tài giao tiếp ps2 và vga trên De2 để vẽ một số hình . . phần ps2 đang bí quá , mong anh chị em share giúp mình ít kinh nghiệm về giao tiếp PS2 ! thanks all!

  • #2
    ui không có đồng chí nào chia sẻ giúp em ah

    Comment


    • #3
      Ực ... :-s bạn làm vậy để làm gì?

      Comment


      • #4
        Nguyên văn bởi jefflieu Xem bài viết
        Ực ... :-s bạn làm vậy để làm gì?
        mình không hiểu ý bạn ?

        Comment


        • #5
          khi giao tiếp PS2 . thì 2 khối transmit và receive hoạt động thế nào khi device là chuột còn host là FPGA ? mình không hiểu khối transmit cần để làm gì , nếu nhận data từ chuột thì cần khối receive là được rồi chứ , khối transmit có chức năng gì ta ?

          Comment


          • #6
            Trong trường hợp chuột thì có lẽ host ko cần Tx. Trong trường hợp keyboard thì cần vì các LEDs trên keyboard là do host điều khiển. Máy tính mà treo thì bấm mấy phím như numlock, capslock ... sẽ ko có tác dụng
            Trong trường hợp chuột mình nghĩ chuột sẽ tx độ dời + các phím ... bạn thử search protocol của chuột, cái này không hiếm đâu.
            Nhưng chưa hiểu là bạn vẽ vậy để làm gì.

            Comment


            • #7
              cám ơn bạn ! mình làm theo hướng dẫn của thày thôi , chủ yếu để thực hành được verilog và kit DE2 . sau đó sẽ phát triển viết thêm mấy game đó mà. hy vọng nếu khó khăn bạn có thể giúp đỡ , thanks you !

              Comment


              • #8
                Nguyên văn bởi gunner Xem bài viết
                cám ơn bạn ! mình làm theo hướng dẫn của thày thôi , chủ yếu để thực hành được verilog và kit DE2 . sau đó sẽ phát triển viết thêm mấy game đó mà. hy vọng nếu khó khăn bạn có thể giúp đỡ , thanks you !
                Ừ, mình nghĩ bạn có thể làm PS2 receiver trước đi. Board DE2 có cái màn hình LCD, bạn có thể in toạ độ chuột ra đó, hoặc dễ hơn là truyền qua RS232, máy tính nhận và xuất ra hyperterminal.
                Bạn viết code, rồi post lên đây cả phần thiết kế và phần code, mình sẽ review giúp bạn. Code Review Cũng là 1 bước trong việc thiết kế chuyên nghiệp, các đồng nghiệp sẽ review code và đưa ra các bình luận/góp ý.

                Comment


                • #9
                  mình có giải thuật đường thẳng như sau :
                  khi click chuột trái sẽ lấy tọa độ vị trí thứ 1 . khi click chuột phải tại vị trí khác thì sẽ lấy tọa độ 2. sau đó lấy hiệu khoảng cách 2 tọa độ , chia đều khoảng cách này thành bao nhiêu khoảng tùy mình . sau đó sẽ tô đen những vị trí cách điểm 1 + tăng dần giá trị chia ở trên , tô đến điểm 2 là ta được đường thẳng .
                  ........ tuy nhiên cách này code sẽ rất dài và khi 2 điểm cách nhau xa thì đườn thẳng sẽ bị đứt đoạn ...
                  ... có bạn nào biết giải thuật khác không ?

                  Comment


                  • #10
                    cho mình hỏi khi muốn vẽ tứ giác như sau :
                    -click chuột trái tại 3 điểm đầu tiên .
                    -điểm cuối cùng sẽ click chuột phải .
                    - khi click chuột phải thì mới enable việc nối các điểm đó lại
                    ???? làm sao để phát hiện các lần click chuột trái khác nhau để lưu tọa độ của mỗi lần đó . ??
                    ... mình làm như sau và gặp phải một số lỗi :
                    ////////////////////////////////////////////////
                    begin
                    if( btnm[0]&&a==2'b00) // first click left mouse . save point 1
                    begin
                    #10000;
                    p_reg1 <= p_reg;
                    l_reg1 <= l_reg;
                    en=0;
                    LEDR=4'b0001;
                    a=2'b01;

                    end
                    else if(btnm[0]&&a==2'b01) // second click left mouse . save point 2.
                    begin
                    #10000;
                    p_reg2 <= p_reg;
                    l_reg2 <= l_reg;
                    LEDR=4'b0010;
                    en=0;
                    a=2'b10;
                    end
                    else if(btnm[0]&&a==2'b10) // click chuot trai lan 3 va luu vao diem 3
                    begin
                    #10000;
                    p_reg3 <= p_reg;
                    l_reg3 <= l_reg;
                    LEDR=4'b0100;
                    en=0;
                    end
                    else if(btnm[1]) // click right mouse . save point 4.
                    begin
                    #10000;
                    p_reg4 = p_reg;
                    l_reg4 = l_reg;
                    LEDR=4'b1000;
                    en=1;
                    end
                    ///////////////////////////////////////////////////

                    1. khi click chuột trái lần 1 thì nó lưu tọa độ vào p_reg1 và l_reg1 như mong muốn , nhưng khi click lần 2 thì nó lại lưu vào p_reg3 và l_reg3 , đồng thời các giá trị "en và LEDR " của 2 lần click này đều là giá trị mong muốn khi click lần 3 .
                    >>>> như vậy là nếu dùng biến "a " để xác định lần click như trên thì do biến a thay đổi nhanh quá nên nó sẽ thực hiện cả 3 lần "else if" đầu tiên . các bạn có cách nào khắc phục lỗi này không ? ( hoặc có cách khác để xác định lần click chuột trái 1,2,3 ko )????

                    Comment

                    Về tác giả

                    Collapse

                    gunner Tìm hiểu thêm về gunner

                    Bài viết mới nhất

                    Collapse

                    Đang tải...
                    X