Picproje Elektronik Sitesi

DİJİTAL & ANALOG ELEKTRONİK => Malzeme Bilgisi => Konuyu başlatan: TFN - 25 Aralık 2007, 23:09:34

Başlık: DS serisi malzemeleri
Gönderen: TFN - 25 Aralık 2007, 23:09:34
DS serisi malzemelerin Türkçe datasheetlerini arıyorum özellikle ds1307 ve ds1820

Saat ve sıcaklık gösteren bir devre yapacağım ama bu malzemelerin özelliklerini iyice bilmem gerekiyor ama hiç biryerde yok :lol:
Başlık: DS serisi malzemeleri
Gönderen: ise - 26 Aralık 2007, 06:55:57
boardda yapılmış onlarca örnek var  bu örneklerden bakarak i2c mantığını, malzemelerin çalışma şeklini anlayabilirsin.
Başlık: DS serisi malzemeleri
Gönderen: bcavlak - 26 Aralık 2007, 23:19:56
o malzemelerin TR datasheetlerini bulabileceğini sanmam.
Aşagıda DS18B20 için yazılan bir ısı okuyucu mevcut...

OWOut   Comm_Pin, 2, [$CC, $4E,%10011111,%10011111,%00011111]'
'                              ----th--- ----tl--- ---CFG---
'%00011111  9-bit resolution
'%00111111 10-bit resolution
'%01011111 11-bit resolution
'%01111111 12-bit resolution
Pause 100
'------------------------------------------------------------------------
OWOut   Comm_Pin, 1, [$CC, $48] ' konfigürasyon değerlerini EEPROM'a kaydet

Start_Convert:
OWOut   Comm_Pin, 1, [$CC, $44] ' Skip ROM search & do temp conversion
 
Wait_Up:
   OWIn    Comm_Pin, 4, [Busy]   ' Read busy-bit
   IF      Busy = 0 Then wait_up   ' Still busy..?, Wait_Up..!
   OWOut   Comm_Pin, 1, [$CC, $BE] ' Skip ROM search & read scratchpad memory
   OWIn    Comm_Pin, 2, [R_Temp.Lowbyte, R_Temp.Highbyte]' Read two bytes / end comms
   GoSub   Convert_Temp
GoSub disp
GoSub alarmkur
GoSub alarmtest
GoTo    Start_Convert
   
Convert_Temp:                
   IF Cold_Bit = Real_Cold Then eksiderece ' If Cold_Bit = 1, it's below "0" deg C

   TempC = (R_Temp & $0FF0) >> 4 ' Mask middle 8-bits, shift into lower byte
   Float = (R_Temp.lowbyte & $0F) ' Lower 4-bits of result * 625
   altderece= float.3 * 5 ; 0,5 dereceyi displayde gösterme
c=tempc
rakam1= altderece ; ondalık değer
   rakam2= tempc DIG 0 ; 1 LER
rakam3= tempc DIG 1 ; 10 LAR
tr4durum=1 ; display off

Return

eksiderece :                    
   TempC  = ((R_Temp ^ $ffff) & $0FF0) >> 4 ' Mask middle 8-bits, shift into lower byte
Float = (R_Temp.lowbyte ^ $0f) & $0f
altderece= float.3 * 5
c=(R_Temp & $0FF0) >> 4
rakam1= altderece
rakam2= tempc DIG 0
rakam3= tempc DIG 1
rakam4=11 ; "-"simgesi yerine geçecek
tr4durum=0
Return



//////////////////////////////////

Bu PBP ile yaptığım bir çalışmaydı. Bu standart bir komut bütünüdür.
Türkçe kaynak bulmana gerek yok bence...