 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
Silvo Moderator


 
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14673 Aktiv.: 61.95 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Čet Nov 12, 2009 9:59 pm Naslov sporočila: |
|
|
Najenostavneje boš preveril, če boš dal gor drugega. Z multimetrom senzorja ne boš mogel preveriti. Najenostavneje je napisati inicializacijsko rutino, ter preveriti, če se senzor odziva. (to bi moral vsebovati sicer vsak dobro napisan program)
_________________ lp
Silvo |
|
Nazaj na vrh |
|
 |
galex4 Član

Pridružen-a: Tor 01 Apr 2008 18:27 Prispevkov: 459 Aktiv.: 2.19
|
Objavljeno: Čet Nov 12, 2009 10:20 pm Naslov sporočila: |
|
|
no tu je še koda napisana v mikroBASIC
koda:
dim i as byte
dim j1 as byte
dim j2 as byte
dim text as char[5]
main:
text = "Temp:"
ADCON1 = %00000110 ' configure RE2 pin as digital I/O
PORTA = 255 ' initialize PORTE to 255
PORTD = 0 ' initialize PORTB to 255
TRISA = %11111111 ' designate PORTE as input
TRISD = %00000000 ' designate PORTB as output
Lcd_Init(PORTD)
lcd_cmd(LCD_TURN_ON)
lcd_cmd(LCD_CURSOR_OFF)
lcd_out(1, 1, text)
while true
ow_reset(PORTA,5) ' onewire reset signal
ow_write(PORTA,5,$CC) ' issue command to DS1820
ow_write(PORTA,5,$44) ' issue command to DS1820
delay_us(120)
i = ow_reset(PORTA,5)
ow_write(PORTA,5,$CC) ' issue command to DS1820
ow_write(PORTA,5,$BE) ' issue command to DS1820
delay_ms(1000)
j1 = ow_read(PORTA,5) ' get result
j2 = ow_read(PORTA,5) ' get result (assuming the temperature is positive)
j1 = j1 >> 1
ByteToStr(j1,text)
lcd_out(2,4,text)
' display digits
lcd_chr( 2, 7, 223) ' 'degree' character
lcd_chr( 2, 8,"C")
Delay_ms(500)
wend
end.
|
|
Nazaj na vrh |
|
 |
Tonci Član

Pridružen-a: Tor 05 Avg 2008 18:14 Prispevkov: 629 Aktiv.: 3.06 Kraj: Domžale
|
Objavljeno: Čet Nov 12, 2009 11:59 pm Naslov sporočila: |
|
|
Tudi sam sem se ravno danes spravil študirat 1 wire. Po prebranem postu gospoda Silvota sem se odločil napisat kodo, ki testira ali teromoter oziroma katerakoli 1 wire naprava, ki je na vodilu deluje oz se javi. Misli, da koda deluje, ker če zmanjšam začetni ukaz na 50us ne dobim odziva in tudi če sam čip ni priključen ni odrziva in ne gori led dioda! Po želji kodo lahko prilepim, je pa v Cju za 16f628a
Če pišete sami, morate detektirati tPDL!
Bi pa na tem mestu vprašal samo eno stvar in sicer, ali je čas tPDH za katerikoli čip na tem vodilu enak?
Opis: |
|
Velikost datoteke: |
37.86 KB |
Pogledana: |
6 krat |

|
|
|
Nazaj na vrh |
|
 |
aly Član



Pridružen-a: Tor 28 Sep 2004 14:51 Prispevkov: 9407 Aktiv.: 39.71 Kraj: Kranj - struževo
|
Objavljeno: Pet Nov 13, 2009 11:52 am Naslov sporočila: |
|
|
Če pošlješ na vodilo Reset ukaz, potem dobiš ACK pulz (ničlo), če je na vodilu en ali več naprav; oziroma brez pulza, če ni nobene naprave.
_________________ I'm going to stand outside, so if anyone asks, I'm outstanding  |
|
Nazaj na vrh |
|
 |
Silvo Moderator


 
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14673 Aktiv.: 61.95 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Pet Nov 13, 2009 1:57 pm Naslov sporočila: |
|
|
aly je napisal/a: |
Če pošlješ na vodilo Reset ukaz, potem dobiš ACK pulz (ničlo), če je na vodilu en ali več naprav; oziroma brez pulza, če ni nobene naprave. |
To sem mislil v svojem spročilu zgoraj. Vodilo(senzorje) je itak potrebno resetirati. Le v proceduri reseta je treba brati če se senzor odziva. Če se senzor odziva, je skoraj zanesljivo dober.
_________________ lp
Silvo |
|
Nazaj na vrh |
|
 |
ATA Član

Pridružen-a: Sob 12 Jun 2004 13:40 Prispevkov: 135 Aktiv.: 0.57
|
Objavljeno: Pet Nov 13, 2009 2:38 pm Naslov sporočila: |
|
|
Umnik je napisal/a: |
Če ti kaže vedno 85°C je to lahko znak, da je inicializiran, vendar še ni naredil prve pretvorbe temperature. |
Če je program v bascomu- povečaj :waitms na 750, pri kupljeni zadni seriji sem moral priklopiti vse tri nogice da je delal.
|
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 492 dni
Powered by phpBB © 2001, 2005 phpBB Group
|