Haberler:

Foruma Resim Yükleme ve Boyut Sınırlaması ( ! )  https://bit.ly/2GMFb8H

Ana Menü

MikroC örneğiyle ilgili

Başlatan titanium, 27 Ekim 2007, 21:41:04

titanium

MikroC' nin help inde ds18b20 okumayla ilgili bir örnek var. Bu örnekten yola çıkarak başarıya ulaşmış bir arkadaş varmı? Aynı şekilde okumaya çalıştım fakat olmadı. Birşeyi gözden kaçırıyorum sanırım.

Not: MikroC deki onewire fonksiyonlarıyla halletmeliyim.

zafzaf82

CCS C ile mikroC birbirine yakın. ben ds1820 ile ilgili bi uygulama yapmıştım ve çalıştı. proteusta ve gerçek dünyada :)

http://rs8.rapidshare.com/files/17491871/ds1820_termo.rar
Mikroişlemci bi araçtır, amaç değil.....

titanium

   unsigned int temp;
    unsigned char j; 
   
    TRISC = 0x0F;  

    Ow_Reset(&PORTC,0);        // Onewire reset signal
    Ow_Write(&PORTC,0,0xCC);   // Issue command SKIP_ROM
    Ow_Write(&PORTC,0,0x44);   // Issue command CONVERT_T
    Delay_us(120);

    Ow_Reset(&PORTC,0);
    Ow_Write(&PORTC,0,0xCC);   // Issue command SKIP_ROM
    Ow_Write(&PORTC,0,0xBE);   // Issue command READ_SCRATCHPAD
    Delay_ms(400);

    j = Ow_Read(&PORTC,0);     // Get temperature LSB
    temp = Ow_Read(&PORTC,0);  // Get temperature MSB
    temp <<= 8; temp += j;     // Form the result


DS18B20 nin data ucu PORTC.0 a bağlı (ve pullup ile Vcc ye). Böyle birşey yazdığımda 16 bitlik temp değişkeninin değeri 65535 oluyor.

titanium

Örnekte bir problem yok bağlantılarla ilgil bir sorunmuş. Şimdi farklı değerler okuyabiliyorum. Gerçi doğru değerler değil ama bunun nedeni başka birşey (daha önce forumda tartışılan şeyler gibi) olmalı.