Thông báo

Collapse
No announcement yet.

Kết nối AT89C2051 với máy tính

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

  • Kết nối AT89C2051 với máy tính

    Em đang nhận cái bài tập thiết kế giao tiếp nối tiếp PC với VĐk để Đk động cơ DC.Không biết dùng con AT89C2051 có đảm nhiệm nổi không??(Em sẽ viết kênh PWM riêng cho nó).Nếu dùng AVR thì PWM đơn giản quá nhưng em mắc ở chỗ giao tiếp AVR với cổng nối tiếp.Bác nào làm rồi thì cho em xin ý kiến với???Có tài liệu về giao tiếp AVR với com thì share cho em xin.Thanks!


    Add: 97 Quán Nam - Lê Chân - Hải Phòng.
    Tel: 031 518648 Phone: 0904 283 505

  • #2
    Bạn về tìm hiểu về cổng truyền thông RS232 nhé.Đây là cổng giao tiếp giữa vi điều khiển với máy tính.Có 9 chân,kể cả bạn dùng 89C51 hay Atmega đều ok hết

    Comment


    • #3
      Bạn hoangdai làm đk động cơ DC àh, mình có chút ý kiến:
      Dùng mạch cầu H tự làm thì tốn khoảng 3 pin của VDK, Encoder 2 pin, nút nhấn tăng giảm đảo chiều dừng thêm 4 pin nữa, giao tiếp COM 2 pin, nếu có mạch hiển thị LED 7 đoạn thêm 8 pin nữa, tổng cộng là ... nhiều quá đếm không hết, bạn tham khảo nha.

      Comment


      • #4
        Nguyên văn bởi designer Xem bài viết
        Bạn hoangdai làm đk động cơ DC àh, mình có chút ý kiến:
        Dùng mạch cầu H tự làm thì tốn khoảng 3 pin của VDK, Encoder 2 pin, nút nhấn tăng giảm đảo chiều dừng thêm 4 pin nữa, giao tiếp COM 2 pin, nếu có mạch hiển thị LED 7 đoạn thêm 8 pin nữa, tổng cộng là ... nhiều quá đếm không hết, bạn tham khảo nha.
        Vậy thì giao tiếp với Led 7 đoạn bằng 4 pin

        Comment


        • #5
          Cái này tôi có mạch và tà liệu hướng dẫn nếu bạn thik.nhưng tôi chỉ có dùng con 89c51 thôi.file PDF nặng quá không post lên được nếu bạn cần có thể liên hệ với mail:congdatquan@gmail.com
          NBHVDNTG_C5!no trace

          Comment


          • #6
            Thưa các pác nếu giao tiếp với PC thì có cần phải hiển thị nên led 7 thanh không.co phần mềm mà không càn dùng led 7 thanh hiển thị tốc độ đâu tôi đã làm cái đó rồi cũng khá công phu và mất thời gian
            NBHVDNTG_C5!no trace

            Comment


            • #7
              hi, ta chỉ cần giao tiếp led 7 đoạn có 1 pin thôi. Từ xưa người ta đã làm thế rồi
              hưng 0903858411

              Comment


              • #8
                Nguyên văn bởi designer Xem bài viết
                Bạn hoangdai làm đk động cơ DC àh, mình có chút ý kiến:
                Dùng mạch cầu H tự làm thì tốn khoảng 3 pin của VDK, Encoder 2 pin, nút nhấn tăng giảm đảo chiều dừng thêm 4 pin nữa, giao tiếp COM 2 pin, nếu có mạch hiển thị LED 7 đoạn thêm 8 pin nữa, tổng cộng là ... nhiều quá đếm không hết, bạn tham khảo nha.
                Cầu H dùng 2 PIN là đủ rồi(kể cả đảo chiều), Encoder 1 PIN thôi,Nút ấn tăng giảm tốc độ thì chơi bằng phần mềm trên PC,RXD và TXD thì họ 8051 con nào mà chẳng có,Không cần hiển thị led 7 đoạn, màn hình máy tính để làm gì hả bác???Hiển thị trên đó không tốt hơn à??Cộng thêm cả vẽ đồ thị luôn,Khoản vẽ vời này cần tham khảo bác "hoanglongu", giao tiếp tham khảo của bác "Ngohaibac".Rất mong sự giúp đỡ từ anh em.Xin cám ơn!


                Add: 97 Quán Nam - Lê Chân - Hải Phòng.
                Tel: 031 518648 Phone: 0904 283 505

                Comment


                • #9
                  Uhm,cậu hoangdainói đúng lắm Khoản vẽ vời này cần tham khảo bác "hoanglongu", giao tiếp tham khảo của bác "Ngohaibac"tối thấy các pác ấy rất pro,vì vậy chúng ta cần phải học hỏi nhiều
                  NBHVDNTG_C5!no trace

                  Comment


                  • #10
                    Chết dở vì cái ưu tiên ngắt trong C51.Mình đưa thêm chương trình tạo PWM vào timer thì con AT89C2051 của mình tịt nhận dữ liệu từ máy tính luôn.Đó là do ngắt truyền thông đó đc ưu tiên sau ngắt định thời timer 0.mình đã sửa lại thứ tự ưu tiên ngắt(cho PS=1;PT0=0 nhưng không đc.Bác nào có cao kiến cứu mình với.Không giao tiếp đc với PC thì hỏng an hết tất cả.Xin Cám ơn!


                    Add: 97 Quán Nam - Lê Chân - Hải Phòng.
                    Tel: 031 518648 Phone: 0904 283 505

                    Comment


                    • #11
                      Bây giờ em nhập giá trị số từ bàn phím máy tính và muốn truyền xuống VDK để thay đổi tốc độ nháy led thì phải chuyển đổi mã như thế nào khi truyền.Em viết bằng keilC.
                      m la giá trị nhận từ máy tính:
                      void main()
                      {
                      while(1)
                      {
                      x++;
                      if(x<=m)
                      {
                      P1_0=1;
                      }
                      else if((x>m)&&(x<=2*m))
                      {
                      P1_0=0;
                      }
                      else
                      {
                      x=0;
                      }
                      }
                      Em đã thực hiện truyền nhận đc với VDK nhưng đoạn code trên ko thay đổi đc tốc độ nháy led


                      Add: 97 Quán Nam - Lê Chân - Hải Phòng.
                      Tel: 031 518648 Phone: 0904 283 505

                      Comment


                      • #12
                        Nguyên văn bởi Multi System Xem bài viết
                        Vậy thì giao tiếp với Led 7 đoạn bằng 4 pin
                        Mình dùng 1 board gồm 4 led 7 đoạn bên ngoài (có 74247 để chuyển đổi rồi) kết nối với board VDK nên sẽ dùng 4 pin để điều khiển thứ tự led hiển thị, 4 pin còn lại là dữ liệu dạng nhị phân bạn àh.
                        Vì mình làm "hộp điều khiển" có thể chạy độc lập khi không có PC nên dùng thêm LED 7 đoạn, nút nhấn thôi.
                        Về phần Encoder đúng là có thể dùng 1 pin thôi nhưng với 2 pin từ Encoder bạn có thể xác định chiều quay động cơ luôn.
                        Dữ liệu từ VDK đưa về PC mình đưa ở dạng 2 byte, khi nhận đủ 2 byte phần mềm trên PC thực hiện vệc ghép lại và đưa ra giá trị để so sanh hay vẽ đồ thị, khi gửi xuống VDK thì cũng gửi 3 byte nhưng có thể thêm mã kết thúc nữa rồi dùng chương trình con để xử lý.
                        Về mạch cầu H thì có nhiều lựa chọn lắm, có thể dùng IC tích hợp, mình dùng mạch rời vì có sẵn linh kiện.
                        Mình viết bằng ASM thôi, không biết C đâu.

                        Comment


                        • #13
                          em đang làm đồ án về mạch chuông báo tiết học dùng 89c52 mong các bác giúp đỡ. thanks

                          Comment


                          • #14
                            Nguyên văn bởi quocdatl Xem bài viết
                            em đang làm đồ án về mạch chuông báo tiết học dùng 89c52 mong các bác giúp đỡ. thanks
                            Tham khảo tại đây bạn nhé
                            http://www.dientuvietnam.net/forums/...t=13594&page=3

                            Comment

                            Về tác giả

                            Collapse

                            hoangdai Hoàng Đình Đại-Điện tự động công nghiệp Tìm hiểu thêm về hoangdai

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

                            Collapse

                            Đang tải...
                            X