Dobrý den.
Potřeboval bych poradit jak komunikovat s dvěmi DS. Jeden je připojen a teplotu z něj přečtu. Ale když připojím druhý tak co musím zadat místo “Přeskoč ROM (cch)”. Nemáte někdo na to rutinu?
Předem dík Honza.
No ono jde o to kam ten druhý zapojuješ. Jestli má každý svůj pin ( na uprocesoru ) , nebo jestli jsou na společné sběrnici ( 1 pin pro oba ) ?
Chtěl jsem dát dva na jeden pin, ale nepochopil jsem algoritmus na určení a adresování . Tak jsem to nakonec vyřešil na dva. Ale kdyby ten programek někdo měl rad bych ho použil.
Projdi si datasheet - nejdřív musíš přečíst u konkrétního DS tz. Room kod (tak jsem to řešil já) a pak po příkazu 55h poslat 8 Bytů toho Room kodu a následným čtením přečteš teplotu toho adresovaného čidla (příkaz 0beh). Druhé čidlo DS stejně, ale bude mít samozřejmě jiný Room kod. Při čtení Room kodu (příkaz 33h) musí být na 1 Wire pouze jedno čidlo . Ještě asi existuje příkaz Search Rom 0f0h, ale ten nemám odzkoušený.
Ještě pro upřesnění - jde o DS18B20 - tyto provozuji.