Potrzebuje pomocy "1-wire - atmega32"



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "cHomar" <koonz_at_nospam_antispam.poczta.onet.pl>
Subject: Potrzebuje pomocy "1-wire - atmega32"
Date: Sat, 18 Mar 2006 23:38:42 +0100


Witam

Pisze programik w avr-gcc do obsługi pastylek DS1990R.
Czy komuś z was udała się poprwna komunikacja z tymi pastylkami?
Nie udaje mi się nawet otrzymać sygnału obecności po resecie.
Pastylka nie odpowiada zerem wtedy kiedy powinna.
Kawałek kodu do resetowania:

#define w1 1
unsigned char onewire_reset(void)
{
unsigned char bit;
DDRD |= 1<<w1;
PORTD &= ~(1<<w1);
czekaj_500us();
DDRD &= ~(1<<w1);
czekaj_60us(); //czekanie na presence pulse
if(bit_is_set(PIND,w1))
bit=0;
if(bit_is_clear(PIND,w1))
bit=1;
return bit;
}

Czy coś się nie zgadza?
Wydaje mi się, że powiniem dostać ładne zero na lini 1wire kiedy pastylka
jest podłączona.
A dostaje je dopiero gdy zmniejsze czas oczekiwania na presence pulse
poniżej 20 us.
Czyli teoretycznie mniejszy niż czas, po którym presence pulse jest
wysyłany.

Jeżeli ktoś bawił się już czymś takim i może mi pomóc to byłbym bardzo
wdzięczny
za pomoc.

--
Marcin Choiński
Koonz_at_nospam_antispam.poczta.onet.pl
"Nigdy nie wchodź na schody, od drugiej strony"



Poprzedni Następny
Wiadomość
Spis treści
From: "AzaZeL" <AzaZeL_B_at_nospam_poczta.onet.pl>
Subject: Re: Potrzebuje pomocy "1-wire - atmega32"
Date: Sun, 19 Mar 2006 14:17:08 +0100


a jestes pewien opuznien czasowych?

ja robilem opuznienia czasowe dla ukladów 1wire w symulatorze dopiero wtedy
mi zadziałało ok

AzaZeL



Poprzedni Następny
Wiadomość
Spis treści
From: KrzysiekPP <krzysiekpp_at_nospam_NOSPAM.op.pl>
Subject: Re: Potrzebuje pomocy "1-wire - atmega32"
Date: Sun, 19 Mar 2006 16:28:22 +0100


ja robilem opuznienia czasowe dla ukladów 1wire w symulatorze dopiero wtedy

Pżypadek ... wszystko pżes to, ze robiłes opużnienia zamiast opóżnien.

--
Krzysiek, Krakow

Poprzedni Następny
Wiadomość
Spis treści
From: "AzaZeL" <AzaZeL_B_at_nospam_poczta.onet.pl>
Subject: Re: Potrzebuje pomocy "1-wire - atmega32"
Date: Sun, 19 Mar 2006 18:29:24 +0100



Pżypadek ... wszystko pżes to, ze robiłes opużnienia zamiast opóżnien.

no i przeszkadza Ci to? to nieczytaj



Poprzedni Następny
Wiadomość
Spis treści
Date: Sun, 19 Mar 2006 18:36:23 +0100
From: RoMan Mandziejewicz <roman_at_nospam_pik-net.pl>
Subject: Re: Potrzebuje pomocy "1-wire - atmega32"


Hello AzaZeL,

Sunday, March 19, 2006, 6:29:24 PM, you wrote:

Pżypadek ... wszystko pżes to, ze robiłes opużnienia zamiast opóżnien.
no i przeszkadza Ci to? to nieczytaj

http://rtfm.killfile.pl/#lajza

--
Best regards,
RoMan mailto:roman_at_nospam_pik-net.pl


Poprzedni Następny
Wiadomość
Spis treści
From: "Pelos _at_nospam_ home" <pelos_at_nospam_pelos.pl>
Subject: Re: Potrzebuje pomocy "1-wire - atmega32"
Date: Sun, 19 Mar 2006 18:00:31 +0100


cHomar wrote:
Witam

Pisze programik w avr-gcc do obsługi pastylek DS1990R.
Czy komuś z was udała się poprwna komunikacja z tymi pastylkami?
Nie udaje mi się nawet otrzymać sygnału obecności po resecie.
Pastylka nie odpowiada zerem wtedy kiedy powinna.
Kawałek kodu do resetowania:

#define w1 1
unsigned char onewire_reset(void)
{
unsigned char bit;
DDRD |= 1<<w1;
PORTD &= ~(1<<w1);
czekaj_500us();
DDRD &= ~(1<<w1);
czekaj_60us(); //czekanie na presence pulse
if(bit_is_set(PIND,w1))
bit=0;
if(bit_is_clear(PIND,w1))
bit=1;
return bit;
}

Czy coś się nie zgadza?
Wydaje mi się, że powiniem dostać ładne zero na lini 1wire kiedy pastylka
jest podłączona.
A dostaje je dopiero gdy zmniejsze czas oczekiwania na presence pulse
poniżej 20 us.
Czyli teoretycznie mniejszy niż czas, po którym presence pulse jest
wysyłany.

Jeżeli ktoś bawił się już czymś takim i może mi pomóc to byłbym bardzo
wdzięczny
za pomoc.

No ja ostatnio robilem DS1990R... Ostatnio ktos sie chwalil na grupie
kawalkiem kodu (odsylam do google). Swietna robota.
Ale mi tez nie dzialalo. Mialem odpowiedz na reset ale nic pozatym.
W 90% pies jest pogrzebany w czasach.
U mnie pomoglo obejrzenie na oscyloskopie cyfrowym.

--
Pelos
http://www.pelos.pl