nesnasim 1-wire :-)

Martin Záruba swz@volny.cz
Sobota Březen 26 07:27:41 CET 2005


Ale i pri zastavenem preruseni na seriaku se 1 znak uchova v sbuf. Je ta
smycka komunikace s Dallasem tak dlouha, ze by se ztratilo vice znaku? Pokud
ano, neslo by to vyresit snizenim prenosove rychlosti na seriaku tak, aby se
znaky neztracely?

Martin Zaruba
----- Original Message ----- 
From: "Prichy" <prichy@volny.cz>
To: "HW-news" <hw-list@list.hw.cz>
Sent: Saturday, March 26, 2005 7:11 AM
Subject: nesnasim 1-wire :-)


Zdravim.

dotaz se tyce "me" meteostanice(89C52). Mam ji osazenou 18B20-kou
komunikujici 1-wire .

inicializace preruseni:

 TR0 = 1;                               // start timer 0
  ET0 = 1;                               // enable timer 0 interrupt
  ES = 1;                                // enable serial interrupt
  PS = 0;                                    // set serial interrupts to
hi priority
  EA  = 1;                               // global interrupt enable
  TR1 = 1;                               // start timer 1
inkrementuje promennou citac - > generuje 1 s pro hodiny
  TI = 0;                                  // nastavuji pri potrebe vysilat


v hlavni smycce

 tepl= Read_Temperature();  // cte teplotu z dallasu



PC posila dotazy do zarizeni kazdou sekundu, problem je, kdyz dojde
preruseni na serial
pri konani casove narocne  Read_Temperature() pak komunikace s Dallasem
probehne spatne
(volana pri kazdem pruchodu hl. smyckou).

Napadaji me dve reseni:

1) zastavit na dobu konani Read_Temperature() preruseni seriaku
     (pokud by selhala komunikace PC - Hardware opakovat)
2)obnovovat promennou tepl v preruseni casovace, pak by ovsem
    muselo mit vetsi prioritu (take by se PC a hardware nemusely vzdy
domluvit)

Jak resite podobne problemy?   (mozna je vic reseni, jeste nemam zahraty
mozek :-D )

Prichy







_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz
Hw-list@list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list






Další informace o konferenci Hw-list