PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : ارتباط با ds1307 از طریق i2c



amin_digit
17-09-2011, 22:46
کسی میتونه تور راه اندازیه rtc-ds1307 از طریق i2c کمک کنه،
نحوه خوندن و نوشتن روی i2c و تنظیماتش,مثلا اگه بخوایم روی آدرس 0x00 ds1307 چیزی بنوسییم یا بخونیم دستوراتمون چطوری میشن.
دوستمون یه هدر واسه i2c نوشته اما کمکی نکرد و گیج تر شدم
آدرس هدر i2c:
You can see links before reply

cmuiran
17-09-2011, 22:51
سلام دوست عزیز
قبل از مصرف شما باید یس1307 را فعال کنین
البته زمان ما از این کارا انجام میشد ولی الان نمیدونم فعال میکنن یا نه
با دستور زیر قبل از اینکه وارد do بزشین این کار را انجام بدین

I2cstart
I2cwbyte &HD0
I2cwbyte 0
I2cstart
I2cwbyte &HD1
I2crbyte Bsec , Nack
I2cstop

Bsec = Bsec And &B01111111

I2cstart
I2cwbyte &HD0
I2cwbyte 0
I2cwbyte Bsec
I2cstop

I2cstart
I2cwbyte &HD0
I2cwbyte 7
I2cwbyte &B00010011
I2cstop

cmuiran
17-09-2011, 22:54
برای خواندن شما میتونین از دستورات زیر استفاده کنین

I2cstart
I2cwbyte &HD0
I2cwbyte 0
I2cstart
I2cwbyte &HD1
I2crbyte Bsec , Ack
I2crbyte Bmin , Ack
I2crbyte Bhur , Nack
I2cstop

Return


Seting:
Secc = 0
Minn = 0
Hurr = 17
Bsec = Makebcd(secc)
Bmin = Makebcd(minn)
Bhur = Makebcd(hurr)

Bsec = Bsec And &B01111111

I2cstart
I2cwbyte &HD0
I2cwbyte 0
I2cwbyte Bsec
I2cwbyte Bmin
I2cwbyte Bhur
I2cstop

در اول حلقه قرار بدین تا هر دفعه خوانده شود
ودر پایین دستور زیر استفاده کنین

Secc = Makedec(bsec)
Minn = Makedec(bmin)
Hurr = Makedec(bhur
)

و secc , minn , hurr میشه خروجی شما