Witam
Mam problem z odczytem temperatury z max6675 chodzi o to że temperatura którą mierzę jest niższa niż rzeczywista. Temperatura gotującej wody to według mojego pomiaru 80°C a temperatura otoczenia jest o ok 4 do 6 stopni niższa niż rzeczywista. Co może być tego przyczyną?
Mam problem z odczytem temperatury z max6675 chodzi o to że temperatura którą mierzę jest niższa niż rzeczywista. Temperatura gotującej wody to według mojego pomiaru 80°C a temperatura otoczenia jest o ok 4 do 6 stopni niższa niż rzeczywista. Co może być tego przyczyną?
void inittemp(void)
{
SET_OUT_MAX_CLK ;//ustawienie CLK Max6675 jako wyjscie
SET_IN_MAX_MISO ;// Ustawienie MISO max6675 jako wejscie
SET_UP_MAX_MISO; //Podciągnięcie MISO do VCC
SET_OUT_MAX_CS ; // Ustawienie CS max6675 jako wyjście
SET_H_MAX_CS; //Stan wysoki na CS max6675
SET_L_MAX_CLK;//Stan niski na clk max6675
}
int Temp_read(){
int buffor =0;
//_delay_ms (1000);
SET_L_MAX_CS; //Aktywowanie max6675
//_delay_us (100);
for(int i=0;i<14;i++){
SET_H_MAX_CLK; //Stan wysoki na CS max6675
//_delay_us (200);
if(!CHECK_MAX_CLK) // Odczyt kolejnrgo bitu i przesuniecie w lewo
{ buffor=buffor<<1; }
else
{
buffor=(buffor << 1)|0x1 ;
}
SET_L_MAX_CLK;
//_delay_us (500);
};
SET_H_MAX_CS;
return buffor;
};