Mam czujnik DS18B20 podłączonego do PIC16F84 pod nozke RA4 i do tego rezyztor podciagający 5kOhm (ma byc 4.7 ale).
Nie moge nawet dokonac resetu to znaczy nie odpowiada DS. Jest dobry.
Oto kod do resetu.
char OW_Reset(void)
{
char result;
TRISA |= 0x10; // Write '1' bit, i sterujemy RA4
TRISA &= 0xEF; // Write '0' bit, i sterujemy RA4
OW_pin=0;
Dellay_us(250); // czekamy 250us
Dellay_us(250);
TRISA |= 0x10; // Write '1' bit, i sterujemy RA4
Dellay_us(70);
result = OW_pin; // Sample for presence pulse from slave
Dellay_us(250);
Dellay_us(250);
return (result); // Return sample presence pulse result
}
i nic nie działa.
Pomocy.
Nie moge nawet dokonac resetu to znaczy nie odpowiada DS. Jest dobry.
Oto kod do resetu.
char OW_Reset(void)
{
char result;
TRISA |= 0x10; // Write '1' bit, i sterujemy RA4
TRISA &= 0xEF; // Write '0' bit, i sterujemy RA4
OW_pin=0;
Dellay_us(250); // czekamy 250us
Dellay_us(250);
TRISA |= 0x10; // Write '1' bit, i sterujemy RA4
Dellay_us(70);
result = OW_pin; // Sample for presence pulse from slave
Dellay_us(250);
Dellay_us(250);
return (result); // Return sample presence pulse result
}
i nic nie działa.
Pomocy.