đây là hai đoạn chương trình con ghi và đọc giữ liệu với ds1307. Các bạn xem mình viết có đúng ko mà sao khi mô phỏng trên protues thì mình chi ghi được một byte thôi. Sau lệnh câu lệnh write đầu tiên thì các câu lệnh read hoặc write khác không có tác dụng.
//////////////////////////////////////////////////////////
void write(int8 value, int8 add)
{
i2c_start();
i2c_write(0xD0);
i2c_write(add);
i2c_write(value);
i2c_stop();
}
int8 read(int8 add)
{
int8 value_re;
i2c_start();
i2c_write(0xD0);
i2c_write(add);
i2c_start();
i2c_write(0xD1);
value_re = i2c_read();
i2c_stop();
i2c_stop();
return(value_re);
}
////////////////////////////////////////////////////////
|