| Author |
Message
|
Kminek Poziom 14

Joined: 19 Jun 2004 Posts: 187 Location: Poznań
|
#1
27 Aug 2004 19:42 Jak odróżnić 1wire od 1wire? |
|
|
|
Hej wszystkim mam pytanie czy w Bacomie-AVr można za pomocą polecenia config 1wire skonfigurowac dwie magistrale 1wire np.
config 1wire=portb.0
config 1wire=portb.1
I w jaki sposób można odwoływać się do jednej lub drugiej magistrali?
Ogólnie rzecz biorąc mój problem polega na tym że na jednej magistrali dołączam termometr DS18B20 oraz czytnik pastylek i zaczynają się kłopoty ponieważ tak mi się wydaje gdy próbuje coś odczytać z magistrali to oba urządzenia zgłaszają mi się jednocześnie:(
Pzdr
|
|
| Back to top |
|
 |
Dexter77 Poziom 20

Joined: 19 Aug 2004 Posts: 869 Location: Warszawa
|
#2
27 Aug 2004 19:53 Jak odróżnić 1wire od 1wire? |
|
|
|
Oto co mozna przeczytac w helpie:
New is support for multi 1-wire devices on different pins.
To use this you must specify the port and pin that are used for the communication.
Wniosek z tego ze mozna tak zrobic. Zreszta sprobuj i zobacz co sie stanie.
Pozdro
Dexter
|
|
| Back to top |
|
 |
Google

|
#
27 Aug 2004 19:53 |
|
|
|
|
|
| Back to top |
|
 |
elektro255 Poziom 14

Joined: 02 Jul 2003 Posts: 181 Location: Siedlce
|
#3
27 Aug 2004 21:27 Jak odróżnić 1wire od 1wire? |
|
|
|
możesz stosować 2x config 1wire ale musisz wtedy tą linijkę umieścić przed odczytem danych z danego ukłądu, żeby obsłużyć 2 scalaki na 1 pinie trzeba odczytać z każdego serial number poleceniem 1wiresearch, 1wirecount 1wirenext i wywoływać je tymi numerami
|
|
| Back to top |
|
 |
ostfal1 Poziom 10

Joined: 17 Oct 2002 Posts: 52 Location: Nowa Sól
|
#4
28 Aug 2004 10:18 Re: Jak odróżnić 1wire od 1wire? |
|
|
|
A może tak ktoś poda jakiś konkretny przykład bo też jestem tym tematem zainteresowany.
|
|
| Back to top |
|
 |
Dexter77 Poziom 20

Joined: 19 Aug 2004 Posts: 869 Location: Warszawa
|
#5
28 Aug 2004 11:09 Jak odróżnić 1wire od 1wire? |
|
|
|
Zajrzyj do helpa BASCOMA. Jest bardzo ladny przyklad podany jak z 4 linii odczytac urzadzenia po kolei.
Pozdro
Dexter
|
|
| Back to top |
|
 |
BoskiDialer Poziom 22

Joined: 28 Nov 2003 Posts: 1533 Location: Żory
|
#6
28 Aug 2004 11:40 Jak odróżnić 1wire od 1wire? |
|
|
|
eh.. config to jest polecenie preprocesora więc config przed użyciem nic nieda. z tego co kiedyś czytałem w helpie (kiedyś jak jescze siedziałem na Bascomie) to widziałem że jeśli chce sie użyć 1wire na portb.0 a ma sie skonfigurowane na portb.1 to sie pisze "1wreset portb,0" itd.. dodając na sam koniec polecenia końcówke z oznaczeniem pinu.
w helpie pisze:
1WRESET
1WRESET , PORT , PIN
var2 = 1WREAD( [ bytes] )
var2 = 1WREAD( bytes , port , pin )
1WWRITE var1
1WWRITE var1, bytes
1WWRITE var1 , bytes , port , pin
|
|
| Back to top |
|
 |
Google

|
#
28 Aug 2004 11:40 |
|
|
|
|
|
| Back to top |
|
 |
elektro255 Poziom 14

Joined: 02 Jul 2003 Posts: 181 Location: Siedlce
|
|
| Back to top |
|
 |
zumek Poziom 23

Joined: 08 Oct 2003 Posts: 3122 Location: Włocławek
|
#8
29 Aug 2004 18:51 Re: Jak odróżnić 1wire od 1wire? |
|
|
|
| Kminek wrote: |
Hej wszystkim mam pytanie czy w Bacomie-AVr można za pomocą polecenia config 1wire skonfigurowac dwie magistrale 1wire np.
config 1wire=portb.0
config 1wire=portb.1
I w jaki sposób można odwoływać się do jednej lub drugiej magistrali?
Ogólnie rzecz biorąc mój problem polega na tym że na jednej magistrali dołączam termometr DS18B20 oraz czytnik pastylek i zaczynają się kłopoty ponieważ tak mi się wydaje gdy próbuje coś odczytać z magistrali to oba urządzenia zgłaszają mi się jednocześnie:(
Pzdr |
Witam.
To jest PROFANACJA żeby korzystać z wielu magistarli 1wire w jednym urządzeniu.Pozbawiasz się w ten sposób jej zalet.
No ale to tylko moje skromne zdanie :-)
Pozdrawiam
Piotrek Sz.
|
|
| Back to top |
|
 |
Masteq Poziom 15

Joined: 26 May 2003 Posts: 257 Location: Koszalin
|
#9
08 Oct 2004 00:08 Re: Jak odróżnić 1wire od 1wire? |
|
|
|
u mnie to dziala tak:
Temppreset: 'Przygotowuje termometry do podania temp
1wreset Pina , 1 'reset magistrali
1wwrite &HCC , 1 , Pina , 1 'komenda skip ROM - wewnetrzny
1wwrite &H44 , 1 , Pina , 1 'komenda convert T
1wreset Pina , 0 'reset magistrali
1wwrite &HCC , 1 , Pina , 0 'komenda skip ROM - zawnetrzny
1wwrite &H44 , 1 , Pina , 0 'komenda convert T
Return
Odczyt_tw:
1wreset Pina , 1 'podprogram 1wr
1wwrite &HCC , 1 , Pina , 1 'komenda skip ROM
1wwrite &HBE , 1 , Pina , 1 'komenda read
B1 = 1wread(1 , Pina , 1) 'odczyt z termometru
B2 = 1wread(1 , Pina , 1)
1wreset Pina , 1 'podprogram 1wr
If B2 >= 248 Then 'w przypadku temperatur ujemnych
B1 = R - B1 'Od 255 Odejmujemy B1
B2 = R - B2 'od 255 odejmujemy B2
Znak = "-"
Else
Znak = " "
End If
T1 = B1 / 16 'Przesuniecie w pawo o 4 bajty
T2 = B2 * 16 'przesuniecie w lewo o 4 bajty
T1 = T1 + T2
Tmp = Fusing(t1 , "##.#")
Return
Odczyt_tz:
1wreset Pina , 0 'podprogram 1wr
1wwrite &HCC , 1 , Pina , 0 'komenda skip ROM
1wwrite &HBE , 1 , Pina , 0 'komenda read
B1_z = 1wread(1 , Pina , 0) 'odczyt z termometru
B2_z = 1wread(1 , Pina , 0)
1wreset Pina , 0 'podprogram 1wr
If B2_z >= 248 Then 'w przypadku temperatur ujemnych
B1_z = R - B1_z 'Od 255 Odejmujemy B1
B2_z = R - B2_z 'od 255 odejmujemy B2
Znak_z = "-"
Else
Znak_z = " "
End If
T1_z = B1_z / 16 'Przesuniecie w pawo o 4 bajty
T2_z = B2_z * 16 'przesuniecie w lewo o 4 bajty
T1_z = T1_z + T2_z
Tmp_z = Fusing(t1_z , "##.#")
troche to lopatologiczne ale...:) dziala.
Ma ktos moze jakas prosta procedurke eliminujaca blad odczytu z dallasa, ktory czasem lubi podac wartosci ~-150 lub 85, nawet gdy nie pracuje
jako parasite??
|
|
| Back to top |
|
 |
DosinskY Poziom 16

Joined: 17 May 2004 Posts: 334
|
#10
08 Oct 2004 13:04 Re: Jak odróżnić 1wire od 1wire? |
|
|
|
Witam
Zumek ma racje! Szkoda wyprowadzen! No chyba ze masz akurat ich nadmiar :) .
A czy ty przypadniem nie uzywasz tylko komendy SKIP ROM???? Jezeli wprowadzisz do programu innek komendy "Romowe" takie jak READ ROM MATCH ROM SEARCH ROM itp...problem ze zglaszaniem 2 ukladow jednoczesnie powinien sie rozwiazac.
Powodzenia i pozdr
|
|
| Back to top |
|
 |
Google

|
#
08 Oct 2004 13:04 |
|
|
|
|
|
| Back to top |
|
 |
crazy_phisic Poziom 22

Joined: 04 Jan 2003 Posts: 2275 Location: Zielona Góra
|
#11
09 Oct 2004 21:16 Jak odróżnić 1wire od 1wire? |
|
|
|
Co do marnowania wyprowadzen to osobna dyskusja, ale mozna przypisac magistrale do calego portu i pozniej za pomoca jednej petli sekwencyjnie odczytac dane, zysk ogromny bo nie trzeba przetwazac numeru i odpada problem z wymiana ukladu na inny...
|
|
| Back to top |
|
 |
Guest Poziom 10

|
#12
17 Dec 2004 20:53 Re: Jak odróżnić 1wire od 1wire? |
|
|
|
Witam
Wszystkim poprzednim komentatorom i mondralom odpowiadam, iz poprostu jest to czasem POTRZEBNE.
Osobiscie robilem to w ten sposób, ze definiowałem dwie procedury i na początku każdej z nich konfigurowałem port 1wire. Działało!
W nowym Bascomie można pisać np:
1wreset Pind , 4
1wwrite &HCC , 1 , Pind , 4
1wwrite &H44 , 1 , Pind , 4
Wait 1 'przerwa na konwersje
1wreset Pind , 4
1wwrite &HCC , 1 , Pind , 4
1wwrite &HBE , 1 , Pind , 4
I za każdym razem wybierać inny port.
Pozdrawiam
|
|
| Back to top |
|
 |
bobeer Poziom 20

Joined: 25 Aug 2001 Posts: 1011 Location: NowyTarg
|
#13
17 Dec 2004 21:55 Re: Jak odróżnić 1wire od 1wire? |
|
|
|
| DosinskY wrote: |
Witam
Zumek ma racje! Szkoda wyprowadzen! No chyba ze masz akurat ich nadmiar :) .
A czy ty przypadniem nie uzywasz tylko komendy SKIP ROM???? Jezeli wprowadzisz do programu innek komendy "Romowe" takie jak READ ROM MATCH ROM SEARCH ROM itp...problem ze zglaszaniem 2 ukladow jednoczesnie powinien się rozwiazac.
Powodzenia i pozdr |
sa uklady na magistrale 1wire, ktore dzialaja tylko w trybie "single in line"
w takim przypadku uzycie nawet 10 portow moze byc jak najbardziej celowe
|
|
| Back to top |
|
 |