PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Giao tiếp USB, CAN, I2C, SPI, USART... (http://www.picvietnam.com/forum/forumdisplay.php?f=45)
-   -   Hỏi về EEPROM 24c256 (http://www.picvietnam.com/forum/showthread.php?t=9065)

tomato2711 28-04-2011 08:07 PM

Hỏi về EEPROM 24c256
 
Em đang làm giao tiếp pic16f877a với eeprom 24c256 bằng I2C, nhưng khi đọc datasheet cua con 24c256 thì thấy nó không cho biết dãy địa chỉ của eeprom, vậy mình muốn lưu mỗi lần 10byte (ví dụ 10 số) thì khi đọc lại thì sao nó biết mà trả data về cho con pic? Nhờ các bác tư vấn giúp em!

hawking1122 06-05-2011 03:55 PM

Tớ đọc trong datasheet của nó phần 8.3 có nói đấy chứ, 24c256 có 256 Kbits = 32KBytes = 2^15 bytes, vậy địa chỉ của một word (8bit) dài 15 bit tử 0000 đến 7FFF.
Trong CCS có lệnh read_eeprom(address) đấy thôi.

dong08101991 11-12-2011 09:48 PM

giao tiep pic6f877a voi epprom 24c256 mo phong tren protues ko dc??
 
em dang lam giao tiep giua 16f877a voi 24c256 ghi va doc xuat ra cong com.nhung sao moi lan xuat ra thi no hien tren mang hinh la ff chu ko hien ra du lieu em ghi vao epprom.xim cac anh giup do?day la code em ghi
#include <16f877a.h>
#include <2402.c>
#fuses nowdt, noprotect, nolvp, xt, put
#use delay(clock = 4000000)
#use fast_io(b)
#use rs232 (baud=9600 , parity=n , xmit=pin_C6 , rcv=pin_C7 )
#byte portb = 0x06
#bit b0 = portb.0
#bit b1 = portb.1
int8 x,b;
void ghi ();
void doc ();
void main()
{
set_tris_b(0b00000011);
init_ext_eeprom();
while (1) {
if (b0 == 0) {
ghi ();
}
else {
if (b1==0) {
doc ();}
else {}}
}}
void ghi()
{
loop:
if (b0 == 1) {
write_ext_eeprom(0x0a, 2);}
else {
goto loop;}
}
void doc()
{
loop1:
if (b1 == 1){
x = read_ext_eeprom(0x0a);
printf("data ghi: %x \r ",x );
}
else {
goto loop1;}
}

eunix 16-12-2011 06:50 PM

Bạn tham khảo code cho 24256 tại đây.
24256 dùng địa chỉ 16bit, bạn nên dọc kỹ datasheet. khi kết nối eeprom vào bus i2c bạn cũng cần chú ý là 24256 sử dụng nhiều địa chỉ trong bus i2c, không chú ý có thể bị trùng địa chỉ gây ra lỗi.

http://www.ccsinfo.com/forum/viewtopic.php?t=17787


Múi giờ GMT. Hiện tại là 11:16 PM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam