Selamat datang di ForSa! Forum diskusi seputar sains, teknologi dan pendidikan Indonesia.

Selamat datang, Pengunjung. Silahkan masuk atau mendaftar. Apakah anda lupa aktivasi email?

Desember 09, 2021, 04:02:20 AM

Masuk dengan nama pengguna, kata sandi dan lama sesi

Topik Baru

Artikel Sains

Anggota
Stats
  • Total Tulisan: 139668
  • Total Topik: 10408
  • Online Today: 32
  • Online Ever: 441
  • (Desember 18, 2011, 12:48:51 AM)
Pengguna Online
Users: 0
Guests: 26
Total: 26

Ikuti ForSa

ForSa on FB ForSa on Twitter

Penulis Topik: protokol I2C  (Dibaca 15428 kali)

0 Anggota dan 1 Pengunjung sedang melihat topik ini.

Offline frans3q

  • Dosen
  • ****
  • Tulisan: 153
  • IQ: 22
Re: protokol I2C
« Jawab #15 pada: Agustus 08, 2009, 05:15:49 PM »
itu dia, gw ga tau perintah2nya.... bedanya apa sih? sprintf putsf putchar

ftoa tuh mirip IntToString gt ya?? skill C gw basic nya basic  ;D
« Edit Terakhir: Agustus 08, 2009, 05:20:25 PM oleh frans3q »
Terimakasih banyak buat tmn2 yg uda nambah IQ saya... :D

Offline frans3q

  • Dosen
  • ****
  • Tulisan: 153
  • IQ: 22
Re: protokol I2C
« Jawab #16 pada: Agustus 09, 2009, 02:04:14 AM »
too payz :
sama aja.... ga ada perubahan... T.T


oya itu sebener nya asli nya pake AT90S2313.
trus gw rubah2 programnya.

nah di program yg asli nya ada port yg jadi penanda klo uC ny uda siap ato belom d tulis d manual sensor nya BUSY/RDY pas gw liat datasheet 90S2313 ternyata itu OC1. ada pengaruh ga klo fungsi itu nya gw ilangain?

asli ny gini :

while (1)      
    {
        startRanging();

        while (ready);
//        delay_ms(10);
        while (!ready);
//        delay_ms(100);

        readData();
        sendData();
        delay_ms(1000);
    };
}


---------------------------------------------------------------

ready nya sendiri d definisi in d awal sbg :
#define ready   PINB.3

nah B3 itu OC1 klo gw liat datasheet nya.

Offline Too Payz

  • Dosen
  • ****
  • Tulisan: 260
  • IQ: 7
Re: protokol I2C
« Jawab #17 pada: Agustus 09, 2009, 03:45:24 PM »
masalahnya :
angkanya tumpang tindih di HyperTerminal.

harusnya contoh tampilannya :
US : 0124 mm
IR1 : 0165 mm
IR2 : 0189 mm
Kalau membahas error tampilannya saya bisa bantu tapi kalo mengakses sensor I2C-nya g tau dah. Kalo memprogram harus disertai datanya.
Apalagi sensor DT Sense (sensor ultrasonic), biasanya saya pake PING lebih mudah dan fleksibel (g promosi loo...  :D )

ini maksudnya 124 165 dan 189  yaak.. ?  ???   ???
Kalo pecahan gunakan ftoa (float to array).
Bilangan integer gunakan itoa (integer to array).
Kalo bilangan bulat integer atau char gunakan sprintf.
Untuk tampillannya coba kasi nilai tetap dlu dan cek udah berhasil atau tidak baru dicoba ke proses selanjutnya, Misal

...................
US   = 234,567; // kasi nilai tetap berupa pecahan
IR1  = 12345;  // kasi nilai tetap berupa integer
IR2  = 231;  // kasi nilai tetap berupa char
ftoa(US,3,buf_UART);
puts(buf_UART);
putsf(" mm\r");   // tampilkan US = 234,567

itoa(IR1,buf_UART);
puts(buf_UART);
putsf(" mm\r");   // tampilkan IR1 = 12345

sprintf(buf_UART,"%d",IR2);
puts(buf_UART);
putsf(" mm\r");   // tampilkan IR2 = 231
...................

mudah-mudahan berhasilll...  :angel:

Offline frans3q

  • Dosen
  • ****
  • Tulisan: 153
  • IQ: 22
Re: protokol I2C
« Jawab #18 pada: Agustus 09, 2009, 04:01:22 PM »
buf nya pake tipe var apa?
unsigned char????


jelasin dulu donk cara pake nya ftoa, itoa ma sprintf... parameter #1,2,3 nya gmn, perlu pake lib apa? ky ny bukan stdio.h

float kan buat bil real. kalo inputnya d kasi integer masi bisa jalan ga?
« Edit Terakhir: Agustus 09, 2009, 04:16:40 PM oleh frans3q »

Offline Too Payz

  • Dosen
  • ****
  • Tulisan: 260
  • IQ: 7
Re: protokol I2C
« Jawab #19 pada: Agustus 10, 2009, 05:55:50 AM »
Kutip
buf nya pake tipe var apa?
unsigned char????
Yup gunakan unsigned char karena buff berfungsi sebagai memori yang menyimpan hasil konversi suatu nilai menjadi ASCII (huruf dan angka). Dan huruf atau angka bernilai 0-255 (unsigned char)
Kutip
jelasin dulu donk cara pake nya ftoa, itoa ma sprintf... parameter #1,2,3 nya gmn, perlu pake lib apa? ky ny bukan stdio.h
Librarynya stdlib.h bukan stdio.h dan masih banyak lagi selain ftoa dan itoa. Coba baca Help-nya CoViAVR.
Kutip
float kan buat bil real. kalo inputnya d kasi integer masi bisa jalan ga?
Jika variabel float (pecahan) diberikan integer(bulat) tidak masalah dan nantinya dibelakang koma akan bernilai nol semua.
tetapi jika variabel integer atau yg lain (bulat) diberikan nilai pecahan maka dibelakang koma akan dihapuskan. Dan jangan lupa range nilainya jauh berbeda jadi sebaiknya gunakan tipe data sesuai kebutuhan dan yang seharusnya.   8)   8)

Offline frans3q

  • Dosen
  • ****
  • Tulisan: 153
  • IQ: 22
Re: protokol I2C
« Jawab #20 pada: Agustus 10, 2009, 08:55:04 AM »
ftoa parameter 1 nya ga bisa integer tuh. bgitu d compile lgsung error. jenis var yg jadi parameter ny harus bener2 sesuai, kmren ampir 1jam stuck gara2 salah jenis tipe var doank

help ny CV AVR bener2 bikin stress. ga niat tuh yg bikin help. ftoa gw search aja ga ada. akhir ny jelajah index satu2 gw buka in baru akhir ny nemu.
« Edit Terakhir: Agustus 10, 2009, 09:25:10 AM oleh frans3q »

Offline Too Payz

  • Dosen
  • ****
  • Tulisan: 260
  • IQ: 7
Re: protokol I2C
« Jawab #21 pada: Agustus 10, 2009, 04:38:07 PM »
Wah COViAVR-nya versi lawas keknya tuh...
Btw gmana dah bisa kan ?    ;D    ;D

Offline frans3q

  • Dosen
  • ****
  • Tulisan: 153
  • IQ: 22
Re: protokol I2C
« Jawab #22 pada: Agustus 10, 2009, 11:56:44 PM »
CV AVR ny d kasi temen. versi 1.24.6 Pro.

terakhir coba masi gagal. kayak ny uC ny masalah. ntar malem mo d coba lagi.

Offline frans3q

  • Dosen
  • ****
  • Tulisan: 153
  • IQ: 22
Re: protokol I2C
« Jawab #23 pada: Agustus 17, 2009, 07:22:32 AM »
btw yg itoa parameter2 nya tipe var nya apa ya? d help ny d tulis char*string. deklarasi nya gmn ya?

itoa(par1,par2);
fungsi ny ngrubah integer jadi string.
parameter 1 ny integer.

Offline frans3q

  • Dosen
  • ****
  • Tulisan: 153
  • IQ: 22
Re: protokol I2C
« Jawab #24 pada: Agustus 20, 2009, 01:20:56 PM »
nanya ttg i2c lagi...

saya pake ATMega8535, klo baca datasheet nya, port I2C ada d PortC.
tapi baca2 d literatur luar, katanya I2C tuh bisa d semua port, tapi secara software. jadi tiap portA sampai D bisa ng emulasi in sinyal I2C bukan cuma portC doank.

- trus port I2C yg ada d datasheet itu gunanya apa ya?
- bedanya soft I2C & scr hardware dmn ya?
- saya pake CV AVR, apa inisiasi I2C soft & I2C biasa beda?
- dan lagi d CV AVR code wizard nya ada pilihan : I2C, 1wire, & 2wire. bukan nya 1wire & 2wire itu sama I2C ya?

Offline frans3q

  • Dosen
  • ****
  • Tulisan: 153
  • IQ: 22
Re: protokol I2C
« Jawab #25 pada: Agustus 23, 2009, 02:09:19 AM »
Tolong donk please

Offline tAZZZ

  • Mahasiswa
  • **
  • Tulisan: 44
  • IQ: 7
Re: protokol I2C
« Jawab #26 pada: September 02, 2009, 07:29:40 AM »
2Wire atau TWI (Two Wire Interface) sama dengan I2C, ini beda dengan 1 Wire, klo one wire cuma butuh satu kabel aja utk interface keluar.

sebenernya sama antara 2Wire dan I2C, tapi di AVR (CO AVR) dibedain, klo yang I2C kan dah disediain library nya, karena da ada librarynya jadi relatif lebih mudah, tinggal panggil aja. penenmpatannya juga bebas mau di pin mana ajah, asal di inisialisasiin dulu(lewat codewizard jg bisa).

klo 2Wire agak beda cara programya (ga bisa kan pake library I2C), registernya kita atur sendiri, tapi protokolnya sama kayak I2C, nah pinnya itu yang SDA SCL yang dah ada.


Offline frans3q

  • Dosen
  • ****
  • Tulisan: 153
  • IQ: 22
Re: protokol I2C
« Jawab #27 pada: September 02, 2009, 04:41:02 PM »
ow jadi kalo yg d sebut I2C sama CV AVR tuh sebener ny emulasi gt ya.
btw, cara kerja nya antara pakai port SDA-SCL yg d sediakan(TWI) dan emulasi pake lib ny gt sama ga ya?
trus cara ngeset sapa yg jadi master ny gmn? kalau saya ga salah ngerti in, I2C tuh master nya ngegenerate clock. device2 yg jadi slave nya ngikut clock nya master. tinggal d atur address nya untuk tiap slave. gt bkn ya?

Offline tay1111

  • Siswa Baru
  • *
  • Tulisan: 1
  • IQ: 0
Re: protokol I2C
« Jawab #28 pada: September 29, 2009, 04:11:42 PM »
gimana ya.. cara share data internal ram antar uc atmega dengan jalur i2c pake asm..?
please........  ::)

 

Related Topics

  Subyek / Dimulai oleh Jawaban Tulisan terakhir
0 Jawaban
2417 Dilihat
Tulisan terakhir November 29, 2009, 07:57:37 AM
oleh maximumwell
1 Jawaban
3179 Dilihat
Tulisan terakhir Desember 22, 2010, 11:16:14 PM
oleh coughin
0 Jawaban
2899 Dilihat
Tulisan terakhir Mei 11, 2011, 02:14:01 AM
oleh saesaria
0 Jawaban
1555 Dilihat
Tulisan terakhir Maret 24, 2013, 01:45:59 PM
oleh AbeBae
0 Jawaban
1710 Dilihat
Tulisan terakhir Oktober 26, 2014, 12:48:16 PM
oleh yuadmor