Thông báo

Collapse
No announcement yet.

Giao tiếp I2C giữa 2 chú Atmega 128

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

  • Giao tiếp I2C giữa 2 chú Atmega 128

    Gửi các bác xem giúp em với
    Tình hình là em đã giao tiếp được 2 con này bằng I2C, nhưng lại gặp vấn đề xảy ra
    + Khi em cắm điện cùng 1 lúc thì 2 con truyền nhận dữ liệu bình thường
    + Khi 2 con đang chạy bình thường, em reset con Slave, thì Slave không nhận được dữ liệu từ Master nữa. em dùng Oscillo đo 2 chân SCL, SDA không thấy xung đâu cả mà là 1 đường thẳng mức 0 hoặc 1 ( 2 chân này em đã treo lên 5V qua trở 4,7K)
    + Khi 2 con đang truyền nhận bình thường, em reset con Master, thì truyền nhận dữ liệu bình thường, thi thoảng gặp trường hợp con Slave không nhận được dữ liệu tức là không thấy xung xuất hiện trên SCL, SDA.

  • #2
    Nguyên văn bởi duongbo Xem bài viết
    Gửi các bác xem giúp em với
    Tình hình là em đã giao tiếp được 2 con này bằng I2C, nhưng lại gặp vấn đề xảy ra
    + Khi em cắm điện cùng 1 lúc thì 2 con truyền nhận dữ liệu bình thường
    + Khi 2 con đang chạy bình thường, em reset con Slave, thì Slave không nhận được dữ liệu từ Master nữa. em dùng Oscillo đo 2 chân SCL, SDA không thấy xung đâu cả mà là 1 đường thẳng mức 0 hoặc 1 ( 2 chân này em đã treo lên 5V qua trở 4,7K)
    + Khi 2 con đang truyền nhận bình thường, em reset con Master, thì truyền nhận dữ liệu bình thường, thi thoảng gặp trường hợp con Slave không nhận được dữ liệu tức là không thấy xung xuất hiện trên SCL, SDA.
    Bạn đến trang này tham khảo nha: http://www.hocavr.com/index.php/vi/lectures/i2c
    Chúc bạn thành công!

    Comment


    • #3
      Nguyên văn bởi duongbo Xem bài viết
      Gửi các bác xem giúp em với
      Tình hình là em đã giao tiếp được 2 con này bằng I2C, nhưng lại gặp vấn đề xảy ra
      + Khi em cắm điện cùng 1 lúc thì 2 con truyền nhận dữ liệu bình thường
      + Khi 2 con đang chạy bình thường, em reset con Slave, thì Slave không nhận được dữ liệu từ Master nữa. em dùng Oscillo đo 2 chân SCL, SDA không thấy xung đâu cả mà là 1 đường thẳng mức 0 hoặc 1 ( 2 chân này em đã treo lên 5V qua trở 4,7K)
      + Khi 2 con đang truyền nhận bình thường, em reset con Master, thì truyền nhận dữ liệu bình thường, thi thoảng gặp trường hợp con Slave không nhận được dữ liệu tức là không thấy xung xuất hiện trên SCL, SDA.
      Bạn vào đây xem project thứ 22 http://www.sangthai.com.vn/ste/goc-cong-nghe/avr, tác giả viết bằng codevision nên rất thân quen. Good luck.

      Comment


      • #4
        Cảm ơn bạn Robocon2011. Mình đã vào trang đó tham khảo và đã giao tiếp được I2C giữa 2 con avr. Em muốn hỏi các bác ở đây là hiện tượng khi 2 con đang giao tiếp với nhau thì 1 con nhấn reset, đo xung trên SCL, SDA thì không còn xung nữa. Các bác giúp em với.

        Comment


        • #5
          Nguyên văn bởi robocon2011 Xem bài viết
          Bạn đến trang này tham khảo nha: http://www.hocavr.com/index.php/vi/lectures/i2c
          Chúc bạn thành công!

          Chào bạn Robocon2011 Mình có vào trang web mà bạn gửi. Mình đã đọc và làm theo và đã truyền được theo I2C. Mình chỉ thắc mắc một điều trong trang web có phần code cho master, trong đó có câu lệnh while((TWCR&0x80)==0x00); // check anh wait for bit TWINT=1
          Khi vđk thực hiện câu lệnh này tức là chờ cho đến khi TWINT=1, chẳng may đường truyền I2C bị đứt hoặc không liên kết thì vi điều khiển cứ dừng ở câu lệnh này để chờ cho đến khi TWINT=1. lúc này chip sẽ không thực hiện việc khác.
          Có cách nào khắc phục không bạn
          Cám ơn

          Comment

          Về tác giả

          Collapse

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

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

          Collapse

          • Andrea14
            Vấn đề về tốc độ quay
            bởi Andrea14
            Chào mọi người,

            Tôi muốn mô phỏng sự thay đổi các mùa bằng cách từ từ nghiêng một quả địa cầu 16 inch bằng một động cơ bước nhỏ. Một động cơ bước khác sẽ quay quả địa cầu theo thời gian thực. Hệ thống truyền động...
            12-12-2025, 12:42
          • bqviet
            Trả lời cho Đấu tắt điện cho máy tính bảng
            bởi bqviet
            Bqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
            06-12-2025, 17:17
          • nguyendinhvan
            Trả lời cho Xin hỏi về mạch thu FM/AM trong catsette
            bởi nguyendinhvan
            Theo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
            05-12-2025, 19:59
          • afrendly
            Trả lời cho Đấu tắt điện cho máy tính bảng
            bởi afrendly
            Có vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
            04-12-2025, 01:27
          Đang tải...
          X