Надеюсь спустя почти 10 часов можно написать следующее сообщение, не нарушая пункт 2.2

Причина неправильных показаний была в том, что в Протеусе стоял 18В20 вместо предусмотренного в схеме (и более не рекомендуемого к применению) 1820 без буквы. Достаточно в Протеусе сменить датчик на 18
S20, как с температурой все встало на свои места.
Вот только непонятная у него логика, я о термостате. Если ставишь порог температуры 20 градусов, а температуру комнаты 25, ТЭН включается. При уменьшении температуры ниже пороговой - отключается. Надо либо бит порта инвертировать, либо транзистор сменить на обратный.
Дополнение.Немного поторопился я.
Отрицательные температуры показывает неверно. Это первое и решаемое.
И второе непонятное: хотя в Протеусе выставил отрицательную температуру целую, в считанном байте в самом младшем разряде показывается 1. То ли глюк Протеуса, то ли к коде ошибка. Но т.к. с плюсовой температурой такого не происходит, то больше склоняюсь к первому.
Каждый имеет право на свое личное ошибочное мнение.
У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.