I2C adalah singkatan bagi Inter-Integrated Circuit. I2C menggunakan Master Synchronous Serial Port (MSSP) Module. Address yang terlibat dalam operasi I2C adalah SSPCON, SSPCON2, SSPSTAT, SSPBUF, SSPSR dan SSPAD.
Isyarat I2C menghantar dan menerima data melalui tiga wayar iaitu SDA, SCL dan GND. Antara chip yang menggunakan I2C adalah Real Time Clock (RTC) DS1307. Sambungan DS1307 RTC menggunakan pin SDA dan SCL seperti di bawah.
Setiap lima saat, backlight LCD di offkan. Walaupun bekalan kuasa ditutup, kiraan masa masih berjalan kerana DS1307 menggunakan bateri 3V.
Berikut adalah videonya.
Video I2C dengan LCD HD44780
Video I2C dengan LCD Nokia 3310
PIC Source Code
Sertai Telegram Group bagi dapatkan source code
20 responses to “PIC Lesson: I2C Module”
Salam. Blog yg sangat bagus. Btw boleh cadangkan tak compiler yg memudahkan programming. Hitech lite? Hitech Pro? atau CCS? TQ
ws, syahrin. saya guna Hi-Tech Pro. CCS tak pernah guna, tak tahu bagus ke tak.
Saya try compile i2c program ni guna hitech lite. tapi ada error. RW dalam i2c wait function undefined. so kalau nak define macammana ya? harap dapat bantu.
Gantikan RW kpd R_W. RW untuk compiler version lama, R_W untuk compiler version terbaru.
salam, kenapa kena set RTC_ADDRESS 0b01101000??
ws, wanirham. Baca dlm datasheet DS1307 memang menggunakan address tu. Tak boleh ubah.
salam,
bila saya running program ni pakai HTC lite,
ada error
ANSEL program not defined
mcm mana na selesaikan…
ws, murli. Kena gunakan PIC16F887, bukannya PIC16F877A.
salam..sya ada terbca ttg post awk dr (http://forum.cytron.com.my/viewtopic.php?f=21&t=11149&hilit=DS1307+RTC+interface+with+PIC16F877A) so nk tanya..,coding ni leh gna tok program thread kat link sya post tu x?
w/salam tekiding. Boleh guna.
Hi,
mengapa I guna MCP79410 dan sudah reset add. ke 0b01010111, tapi lcd display >> Time = 45:85:85 tak boleh jalan mia?
By the following scheme, it is possible to have a code to use it for any PIC (16Fxx in particular)?
Although the scheme is good for any PIC?
Vito, see the comment. Currently I only use with PIC16F877A, PIC16F887 and PIC18F4550. With other PIC, I’m not use yet, it’s maybe working maybe not.
Hi, I didn’t find the code anymore on your website, I used your website for a lot of information, but last time, i didn’t found anything? Will there be files online later? or not? Thx
No free source code anymore. I’m tired to prepare that.
Salam En.Shahrul, sy sudah berjaya buat coding RTC untuk set dan display time n date,
sepatutnya jika sy off PIC sy, RTC masih lg function (disebabkan bateri 3V)
Masalahnya kenapa bila sy on balik PIC, sy kena seting blik masa n tarikh dalam RTC sedangkan data masa n tarikh sepatutnya dah ada dlm RTC.
w/salam Khairul. Saya tak tahu, kena check hardware depan mata.
Please,
publish LibraryMaxim.h …………
salam. saya nak code untuk buat projek jam guna barang berikut:
rtc ds3231 dari cytron
pic16f887 dari astanadigital sb40t
7 segmen display x6 utk jam minit dan saat
push button untuk set masa
berapa harga untuk code sahaja
w/salam, fauzan. Coding PIC sahaja RM350.