Giao tiếp I2C

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • vakk
    Đệ tử 1 túi
    • Sep 2010
    • 17

    #1

    Giao tiếp I2C

    Chào các bạn. Tôi muốn hỏi về giao tiếp I2C viết bằng HTpic cho pic18f2550 Thạch anh 24MHz
    Chương trình cho master:

    Code:
    void I2Cinit(void)
    {
    	SSPSTAT|=0xC0;
    	SSPCON1=0x28;//master
    	SSPCON2=0x00;
    	SSPADD=59;//100KHz
    	
    }
    
    void I2Cwrite(int data,int addr)
    {
    	
    	SEN=1;
    	while(SEN){}
    	while(ACKSTAT){}//chờ ACK
    	SSPBUF=(addr<<1)|0;//addr=4
    	while(ACKSTAT||BF){}
    	SSPBUF=data;
    	while(ACKSTAT){}
    	PEN=1;
    	while(PEN){}
    	I2Cinit();
    }
    Chương trình cho slave:

    Code:
    void I2Cinit(void)
    {
    	SSPSTAT|=0xC0;
    	SSPCON1=0x36;//slave không ngắt startstop
    	SSPCON2=0x00;
    	SSPADD=(4<<1)|0;//addr=4
    	SSPIE=1;
    	SSPIF=0;
    	
    }
    Hiện tại tôi chưa biết viết hàm nhận dữ liệu như nào vì theo tôi biết sau khi nhận đúng địa chỉ nó sẽ ngắt hoặc sau khi nhận dữ liệu xong nó cũng ngắt, vậy là ta nhận dữ liệu từ lần ngắt thứ 2 trở đi là đúng hay sai?
    khi chạy thử mô phỏng thì proteus hiện ra như file đính kém, tại xung thứ 9 không có xung ack, vậy là tôi đã định sai địa chỉ hay do lỗi gì vì tối đọc thấy rằng phần cứng sẽ tự động gửi xung ack khi thấy đúng địa chỉ
    Thanks
    Attached Files
  • nguyenhuutien
    Đệ tử 2 túi
    • Feb 2012
    • 35

    #2
    mình cũng đang làm bài này, nhưng mà mình viết nó vẫn không chạy. bạn giúp mình được chứ
    Nhóm thiết kế Micro Design
    ĐT : 01662468406 ( A Tiến ) - 0948310230 ( A Hưng )
    Email : thietkemach2012@gmail.com
    Địa chỉ : 26/8 Đường Tú Xương, Khu phố 1, Phường Hiệp PHú, Quận 9,TP.HCM

    Comment

    • vakk
      Đệ tử 1 túi
      • Sep 2010
      • 17

      #3
      Nguyên văn bởi nguyenhuutien View Post
      mình cũng đang làm bài này, nhưng mà mình viết nó vẫn không chạy. bạn giúp mình được chứ
      Hic, mình viết nó cũng có chạy đâu, mình mò mẫm cũng khá lâu rồi nhưng mà vẫn chưa làm được, cái này lằng nhằng thật

      Comment

      • nguyenhuutien
        Đệ tử 2 túi
        • Feb 2012
        • 35

        #4
        uhm. bạn mô phỏng nó còn hiển thị chứ mình thì tịt luôn rồi. mình cũng làm cái này cả tháng nay rồi mà không chạy, trên diễn đàn chẳng có ai giúp hết. nếu bạn làm được thì share cho mình với nha. thanks
        Nhóm thiết kế Micro Design
        ĐT : 01662468406 ( A Tiến ) - 0948310230 ( A Hưng )
        Email : thietkemach2012@gmail.com
        Địa chỉ : 26/8 Đường Tú Xương, Khu phố 1, Phường Hiệp PHú, Quận 9,TP.HCM

        Comment

        • vakk
          Đệ tử 1 túi
          • Sep 2010
          • 17

          #5
          mình cũng mò lâu lắm rồi , tất nhiên nếu làm được mình sẽ post tất cả lên đây

          Comment

          • nguyenhuutien
            Đệ tử 2 túi
            • Feb 2012
            • 35

            #6
            uhm. thanks. chán thật những vấn đề mình gặp khó khăn mà trên diễn đàn chẳng có ai ra tay giúp đỡ hết
            Nhóm thiết kế Micro Design
            ĐT : 01662468406 ( A Tiến ) - 0948310230 ( A Hưng )
            Email : thietkemach2012@gmail.com
            Địa chỉ : 26/8 Đường Tú Xương, Khu phố 1, Phường Hiệp PHú, Quận 9,TP.HCM

            Comment

            • vakk
              Đệ tử 1 túi
              • Sep 2010
              • 17

              #7
              không có sư huynh nào vào chỉ dậy nhỉ, 2 thằng lính mới tự sướng với nhau thì bao giờ mới mò xong, haizzzz

              Comment

              • nguyenhuutien
                Đệ tử 2 túi
                • Feb 2012
                • 35

                #8
                uhm. chán quá, đề tài mình sắp nộp nữa rồi chứ
                Nhóm thiết kế Micro Design
                ĐT : 01662468406 ( A Tiến ) - 0948310230 ( A Hưng )
                Email : thietkemach2012@gmail.com
                Địa chỉ : 26/8 Đường Tú Xương, Khu phố 1, Phường Hiệp PHú, Quận 9,TP.HCM

                Comment

                • vakk
                  Đệ tử 1 túi
                  • Sep 2010
                  • 17

                  #9
                  http://www.mediafire.com/?u929wpsyy6y9691
                  Cho những người mới mò mẫm như mình. Khi mô phỏng nhớ sửa property của mấy con điện trở treo từ analog sang digiatal

                  Comment

                  Working...