Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

BASCOM + AT90S2313 + DS1820

szpulek
-
-
Posty: 15
Rejestracja: 6 maja 2004, o 15:55
Lokalizacja: Gliwice
Kontaktowanie:

BASCOM + AT90S2313 + DS1820

Postautor: szpulek » 6 maja 2004, o 15:59

witam,
zagladajac na to forum znalazlem pare rozwizan i pozniej napisalem swoje:

dim tab1(8) as byte 'ID pierwszego urzadzenia 1wire
dim tab2(8) as byte 'ID drugiego urzadzenia 1wire
dim temp1(9) as byte
dim temp2(9) as byte

Config 1wire = PORTD.0

1wreset 'zresetowanie magistrali
1wwrite &H33 'wyslanie zadania zwrocenia id urzadzenia
tab1(1) = 1wread(8)
'1wwrite &HCC
1wwrite &H44
1wwrite &H4E
Wait 1
1wreset 'zresetowanie magistrali
1wwrite &HCC
1wwrite &HBE
temp1(1) = 1wread(9)

niestety i w zmiennej tab1 oraz temp1 mam same jedynki.. uklad ds podlaczylem do procka wg dokumentacji dallasa - magistrala z opornikiem podciagajacym 4.7k

czy ktos jest w stanie mi pomoc??

Awatar użytkownika
Press
-
-
Posty: 389
Rejestracja: 10 mar 2004, o 16:21
Lokalizacja: Wrocław
Kontaktowanie:

Postautor: Press » 6 maja 2004, o 22:29

Też się długo męczyłem z tą DS-ka.

Ja pisałem program pod 89C2051.
Oto fragment programu odczytujący temp. z DS-ki:
1wreset
Bitwait P3.0 , Set
1wwrite &H55
1wwrite Ar2 , 8
1wwrite &H44
Wait 1
1wreset
Bitwait P3.0 , Set
1wwrite &H55
1wwrite Ar2 , 8
1wwrite &HBE
Ar = 1wread( 8 )
1wreset
Bitwait P3.0 , Set

Ar i Ar2 to tablice
Temp jest w Ar(0), jeśli AR(1) <> 0 to tem jest ujemna
Notę katalogową można wyszperać na google.

szpulek
-
-
Posty: 15
Rejestracja: 6 maja 2004, o 15:55
Lokalizacja: Gliwice
Kontaktowanie:

Postautor: szpulek » 7 maja 2004, o 11:43

ok, przetestuje i dam znac, jak na razie dzieki :-)

Billy
-
-
Posty: 25
Rejestracja: 28 lis 2004, o 17:45
Lokalizacja: Wronki
Kontaktowanie:

Postautor: Billy » 11 lut 2005, o 02:00

Też się długo męczyłem z tą DS-ka.

1wwrite Ar2 , 8
Mi przy tym poleceniu występuje bląd "Index expectet [AR2()]


Dlaczego??

Awatar użytkownika
Press
-
-
Posty: 389
Rejestracja: 10 mar 2004, o 16:21
Lokalizacja: Wrocław
Kontaktowanie:

Postautor: Press » 11 lut 2005, o 09:26

a jak masz zadeklarowaną zmienną Ar2?
Nie pamiętam dokładnie tego programu, ale powinno chyba być: dim Ar2(8) as byte


Edit: * - oczywiście bez tych spacji w nawiasie, ale jak ich nie ma to wyskakuje emotka 8) - emotka niekoniecznie wyskoczy, wystarczy w konkretnym poscie wylaczyc BBCode, albo jeszcze lepiej, objac fragment listingu znacznikiem

Kod: Zaznacz cały

[/color]
Ostatnio zmieniony 10 lis 2007, o 13:25 przez Press, łącznie zmieniany 2 razy.

irekkwck
-
-
Posty: 1
Rejestracja: 10 lis 2007, o 03:32
Lokalizacja: Świdnik

Postautor: irekkwck » 10 lis 2007, o 03:42

napisz (waitms 255) 3 razy zamiast (wait 1)

Edit: Dziekuje w imieniu zalozyciela za pomoc, ale zaczynasz kariere na forum od wykopywania postow sprzed prawie 3 lat :613:
Ostatnio zmieniony 10 lis 2007, o 13:31 przez irekkwck, łącznie zmieniany 1 raz.

Wróć do „Projektowanie PCB, programy EDA, CAD, narzędziowe”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 39 gości