Dva DS18B20 k PIC16F628

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í :frowning: . 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.