Thông báo

Collapse
No announcement yet.

AVR giao tiếp với card PCI.

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

  • AVR giao tiếp với card PCI.

    Tôi có ý tưởng giao tiếp AVR với card PCI, bác nào có thể chỉ giúp mình cần phải làm gì không?
    cố lên anh em.

  • #2
    Giúp

    sao không có bác nào giúp thế?
    cố lên anh em.

    Comment


    • #3
      Ý tưởng thì dễ nói chứ bác bảo thế ai mà giúp được.
      Giờ bác về kiếm cái khe PCI đi đã, tìm hiểu bus của nó tiếp đi, rồi xem ghép nối thế nào, rồi xem nó truyền theo chuẩn gì vv..v.. Nói chung là thế đi đã.

      Chứ giờ bảo tôi có ý tưởng ghép nối AVR qua bluetooth nghe cũng hay, cơ mà làm thì vỡ mặt.
      Mồm chó vó ngựa

      Comment


      • #4
        mình đã có card PCI, dang tìm hiểu nó? còn chú AVR thì đã tìm hiểu và viết chương trình điều khiển động cơ, ổn định tốc độ. Bạn có lời khuyên naồch mình không? cám ơn vì đã giúp.(yankazaz).
        cố lên anh em.

        Comment


        • #5
          Không thể giao tiếp trực tiếp AVR với PCI, bắt buộc thông qua FPGA hoặc 1 con PLX. PCI chạy 3,3V kô hợp với uP 5V, mà làm hardware kô tốt, gây conflic bus thì có thể toi cả bus luôn (đại ca MH chỉ giáo như vậy). Thông thường chỉ dùng với bus ISA thôi, nhất là dùng với MT công nghiệp.
          Nếu bạn để máy tính làm trực tiếp công việc đ khiển thì rất nguy hiểm vì nếu máy treo, ngắt quá lâu .... có thể động cơ bị mất đ khiển. Thêm vào đó mtinh là cái rất hay hỏng, nguồn mtinh cũng hay tòe nhất.
          Nếu bạn muốn điều khiển theo mô hình đơn giản thì con AVR đủ dùng, nhưng nếu đòi hỏi có thuật toán phức tạp (như sách của thày Phùng Quang chẳng hạn) thì cần con dsPIC mới đủ. dsPIC chọn con có QuardEncorder để có thể giao tiếp trực tiếp với encorder.
          ! ! you can win if you want ! !

          Comment


          • #6
            có phải khi dùng matlab lập trình cho card PCI nếu làm việc ở tần số lớn hơn 12kHz thì bị treo?
            cố lên anh em.

            Comment


            • #7
              Thật hết nói

              Comment


              • #8
                Không biết bác làm giao tiếp với PCI làm gì nhưng theo em không nên làm mà tìm cách khác hay hơn. Bởi vì cái chuẩn PCI nó sắp thành "dĩ vãng" rồi, hơn nữa thiếu gì kiểu giao tiếp đơn giản mà bác không làm: I2C, SPI... hay chơi luôn USB đi cho nó ... hip hop?
                Nỏ biết chữ mần răng ký được??!! Thôi nhé.

                Comment


                • #9
                  Xin lỗi vì lâu không động vào, giờ lại up topic này lên

                  Không biết bác làm giao tiếp với PCI làm gì nhưng theo em không nên làm mà tìm cách khác hay hơn. Bởi vì cái chuẩn PCI nó sắp thành "dĩ vãng" rồi, hơn nữa thiếu gì kiểu giao tiếp đơn giản mà bác không làm: I2C, SPI... hay chơi luôn USB đi cho nó ... hip hop?
                  PCI trở thành dĩ vãng? Thế bác thử nghĩ xem cái gì thay PCI? PCI không thể die, ít nhất là vài năm nữa, PCI giờ đã up lên 64bit, tốc độ bus lên đến vài Gb/s. Tôi tự hỏi, bây giờ đại đa số Main board đều ít nhiều có ít nhất 2 cái PCI. Nó thu gọn từ 4(xưa) xuống 2 là vì LAN tích hợp, Sound tích hợp, VGA tích hợp nốt... Nhưng không thể die được vì còn có nhiều modun không thể tích hợp trên bo như CAM, TV...

                  Không thể giao tiếp trực tiếp AVR với PCI, bắt buộc thông qua FPGA hoặc 1 con PLX. PCI chạy 3,3V kô hợp với uP 5V, mà làm hardware kô tốt, gây conflic bus thì có thể toi cả bus luôn (đại ca MH chỉ giáo như vậy). Thông thường chỉ dùng với bus ISA thôi, nhất là dùng với MT công nghiệp.
                  Nếu bạn để máy tính làm trực tiếp công việc đ khiển thì rất nguy hiểm vì nếu máy treo, ngắt quá lâu .... có thể động cơ bị mất đ khiển. Thêm vào đó mtinh là cái rất hay hỏng, nguồn mtinh cũng hay tòe nhất.
                  Nếu bạn muốn điều khiển theo mô hình đơn giản thì con AVR đủ dùng, nhưng nếu đòi hỏi có thuật toán phức tạp (như sách của thày Phùng Quang chẳng hạn) thì cần con dsPIC mới đủ. dsPIC chọn con có QuardEncorder để có thể giao tiếp trực tiếp với encorder.
                  Tại sao lại không chơi AVR với PCI được? Bác thử nêu 1 nguyên nhân để không chơi với nhau được đi chứ? PCI xét cho cùng cũng là 1 protocol, cũng như kiểu người việt học tiếng Colombia. Khó học nhưng không phải là không.

                  PCI có 2 loại: 3.3V và 3.3V&5V. Card PCI loại 5V có 1 rãnh (như kiểu DDRAM) còn 3.3V có 2 rãnh (như kiểu SDRAM). Với lại, nếu tôi sử dụng AVR loại low như Atmega128L, chạy cả 3.3V với 5V thì có vấn đề gì chăng?

                  Conflict bus khi nào? Khi có vài chú Master và vài chú Slave trên bus mới có conflict. Giờ chỉ có 1 AVR và 1 PCI thì conflict với ai?
                  Còn về máy tính công nghiệp, tôi không có và không đủ tiền mua (dù chỉ là cái PW) của nó nên không dám nói. Nhưng chỗ tôi có con máy chủ IBM 30 triệu, chạy 1 tháng restart 1 lần là bình thường. Thử bỏ 10 triệu mua cái PW xem nó ngon cỡ nào?

                  Nói là nói vậy, chứ AVR + PCI thì đúng là khó nhai và chưa thấy ai nhai cái này bao giờ. Thường người ta sử dụng FPGA có support PCI. Nhưng cũng như ngày xưa chưa có RS232 support thì người ta phải sử dụng software mà làm giả như RS232. Và xét cho cùng, nếu làm được thì tốc độ của nó cũng không cao như FPGA. Vì vậy ứng dụng thực tế là không có hoặc rất ít.

                  Tuy thế, tôi thấy vài cái project AVR + CRT, AVR + etc... rất thú vị. Thay vì dùng AVR hiển thị vài cái led kiếm tiền, sao không làm một cái gì đó vui vui với nó?
                  Mồm chó vó ngựa

                  Comment


                  • #10
                    mình đã có card PCI, dang tìm hiểu nó? còn chú AVR thì đã tìm hiểu và viết chương trình điều khiển động cơ, ổn định tốc độ. Bạn có lời khuyên naồch mình không? cám ơn vì đã giúp.(yankazaz).
                    Card PCI của bạn có chức năng gì? Sử dụng con IC gì trên đó, bạn có datasheet của nó chưa? flowchart của nó có kiếm được không? Tóm lại, nguyên tắc hoạt động của cái card đó bạn có tìm được không? Giả như tìm được, và ví dụ bạn dùng máy tính mà điều khiển, ắt phải có phần mềm driver, bạn có viết được driver cho cái PCI card đó không? Giả như viết được, thì thế là xong, bạn chỉ việc viết nốt phần mềm giao tiếp thông qua cái driver đó, vài cái form, vài cái abcd. (nhưng mình nghĩ là để làm ngần đấy thứ, thì đọc bao nhiêu cho nó vừa?)

                    Thế còn ví dụ bạn dùng AVR, PCI sử dụng 32 đường bus data + address, 13 đường control, AVR của bạn buộc phải dùng loại atmega64 hoặc 128. Bạn đã tìm hiểu về command của PCI chưa? vv..v.

                    Còn nếu để điều khiển động cơ không, thì đúng là rất nhiều kiểu. Động cơ loại bố có loại AVR bố, loại con có AVR con. Ngoài AVR thì cũng có đủ cả: PIC, FPGA, PsoC, uC của TI, ST, Philips, Freescale... Mỗi loại một kiểu. Nhưng chỉ có 1 nguyên tắc trong điều khiển động cơ. Và khi bạn biết điều khiển như thế nào, kích chân nào ra, nhận cái gì vào thì tự khắc làm với đủ thể loại thôi.
                    Mồm chó vó ngựa

                    Comment


                    • #11
                      Card PCI tự làm, tham khảo tài liệu sau:

                      http://elm-chan.org/works/pci/report_e.html
                      More friends more foods

                      Comment


                      • #12
                        Hmm, có vẻ như tôi đã hiểu tại sao người ta không dùng AVR hay PIC... cho PCI bus. Với thời gian timing max của nó là 11nS thì chả có con vi đk nào chạy tần số 20Mhz đáp ứng được cái đó cả.

                        Túm lại PCI không dành cho AVR
                        Cheer all!
                        Mồm chó vó ngựa

                        Comment


                        • #13
                          sau khi đọc nhiều tài liệu mới biết.
                          cố lên anh em.

                          Comment

                          Về tác giả

                          Collapse

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

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

                          Collapse

                          Đang tải...
                          X