nesnasim 1-wire :-)
Prichy
prichy@volny.cz
Sobota Březen 26 08:01:23 CET 2005
upresnim v Read_Temperature jsou cekacky od 5 do 25 mikrosekund
nepsal jsem to ja, ale jak jsem do toho koukal neda se tam toho moc usetrit.
Prichy napsal(a):
>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