PIC Vietnam

Go Back   PIC Vietnam > Truyền thông > Giao tiếp USB, CAN, I2C, SPI, USART...

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Giao tiếp USB, CAN, I2C, SPI, USART... Những giao tiếp được tích hợp trên PIC

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 09-07-2009, 01:53 PM   #2
kaka_pato
Đệ tử 1 túi
 
Tham gia ngày: Apr 2009
Bài gửi: 12
:
không ai giúp đỡ em sao,em có sửa lại code một chút nhưng nó vẫn chưa đúng,khi e thêm hàm delay giữa các lần write và read thì có xung ACK chứ không phải NACK như bài trên,có ai biết tại sao không?,và khi em thay đổi thời gian delay thì cái em nhân được từ Rom nó cũng thay đổi theo thời gian delay lun,tại sao vậy??có ai chỉ dùm em với.

#include <16F877A.h>
#include <def_877a.h>
#fuses HS,NOWDT,NOPROTECT,BROWNOUT,NOLVP
#use delay(clock=20M)
#use i2c(master,sda=PIN_C4, scl=PIN_C3)
#use rs232(baud=9600, parity=N,xmit=PIN_C6, rcv=PIN_C7,bits=9)
/////////////////////////////////////////////////////////////////


//khai bao cac ham su dung
int read(int address); //Lay du lieu tu ROM
void write(int address,int data); // Ghi du lieu vao ROM
//chuong trinh chinh
void main()

{
int tam;
trisc=0b00011000;
write(0x05,0x42);
delay_ms(10);
write(0x07,0x15);
delay_ms(10);
tam=read(0x05);
putc(tam+0x30);


}
//cac chuong trinh con
int read(int address)
{
int data;
i2c_start();
i2c_write(0XA0);

i2c_write(address);
i2c_start();
i2c_write(0XA1);
data=i2c_read(0);
i2c_stop();
return data ;
}

void write(int8 address, int8 data)
{
i2c_start();
i2c_write(0XA0);
i2c_write(address);
i2c_write(data);
i2c_stop();

}



em gởi số 0x42 vào dia chỉ 0x05 mà lại nhận được 0x05 từ địa chỉ 0x05,có ai biết chỉ dùm e với
Hình Kèm Theo
File Type: jpg weqe.JPG (20.9 KB, 0 lần tải)
kaka_pato vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 08:33 AM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam