Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 16.01.2014, 21:07  
YURALL72
Прописка
 
Регистрация: 29.06.2007
Сообщений: 217
Сказал спасибо: 143
Сказали Спасибо 13 раз(а) в 11 сообщении(ях)
YURALL72 на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

Разрешающая способность температурного преобразователя может быть изменена пользователем и
составляет 9, 10, 11, или 12 битов, соответствуя приращениям (дискретности измерения температуры) 0.5
°C, 0.25°C, 0.125°C, и 0.0625°C, соответственно.
Реклама:
YURALL72 вне форума  
Непрочитано 16.01.2014, 21:10  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,055
Сказал спасибо: 2,562
Сказали Спасибо 11,888 раз(а) в 5,962 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

Как это влияет на необходимость поиска дробной части у получаемого целого числа?
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor на форуме  
Непрочитано 16.01.2014, 21:22  
nahimovv
Заблокирован
 
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
nahimovv на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

Сообщение от YURALL72 Посмотреть сообщение
отрицательные целые нормально,десятые врут на 0.1
Может я что-то пропустил в этом буйном обсуждении, но откуда стало ясно что что-то врёт? DS18B20 врёт или врёт результат преобразования, в меньшую сторону или большую? Если врёт преобразование данных, то в даташите есть таблицы соответствия данных и температуры, которые можно и без датчика забить в проге вручную, посчитать результат и сравнить с тем что в даташите. И на основании этого можно отследить где происходит отклонение и почему. Ничего там сложного нет, это всё легко осуществляется в симуляторе.
nahimovv вне форума  
Непрочитано 16.01.2014, 21:24  
YURALL72
Прописка
 
Регистрация: 29.06.2007
Сообщений: 217
Сказал спасибо: 143
Сказали Спасибо 13 раз(а) в 11 сообщении(ях)
YURALL72 на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

в ctb_t (объявлена как int)на этот момент находятся старший и младший байты температуры.
ctb_t=~ctb_t; //инвертируем число
ctb_t++; //и +1 т.е. переводим из дополнит. кода в нормальный
Ну ведь я инвертирую и 4 бита дробной части,а потом ещё к ним прибавляю 1. Может я этим и порчу 4 бита дробной части?
YURALL72 вне форума  
Непрочитано 16.01.2014, 21:31  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,055
Сказал спасибо: 2,562
Сказали Спасибо 11,888 раз(а) в 5,962 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

У Вас в двух байтах ЦЕЛОГО ЧИСЛА содержится не значение, а код температуры, который Вы ПОТОМ умножаете на весовой коэффициент, соответствующий выбранной точности. ДО умножения НИКАКОЙ ДРОБНОЙ части в природе ЦЕЛОГО ЧИСЛА (т.е., кода температуры) не существует.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor на форуме  
Сказали "Спасибо" akegor
YURALL72 (16.01.2014)
Непрочитано 16.01.2014, 21:55  
nahimovv
Заблокирован
 
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
nahimovv на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

А если так?
Код:
  int16_t tmp = 0;

    if(crc == 0)
    {
      tmp  = temp[1] ‹‹ 8;
      tmp |= temp[0];   
      
      if(tmp ‹ 0)
      {          
        tmp = - tmp;          
        // и засвечиваем знак МИНУС          
      }
      
      Ress[1] = (uint8_t)((tmp ›› 4) %10); 
      Ress[2] = (uint8_t)(tmp ›› 4) / 10;        
      Ress[0] = (uint8_t)(((tmp&0x0F) * 5 + 4) ›› 3);       
      
    }
nahimovv вне форума  
Сказали "Спасибо" nahimovv
YURALL72 (16.01.2014)
Непрочитано 16.01.2014, 22:15  
YURALL72
Прописка
 
Регистрация: 29.06.2007
Сообщений: 217
Сказал спасибо: 143
Сказали Спасибо 13 раз(а) в 11 сообщении(ях)
YURALL72 на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

Сообщение от nahimovv Посмотреть сообщение
tmp = temp[1] ‹‹ 8;
tmp |= temp[0];
if(tmp ‹ 0)
{
tmp = - tmp;
// и засвечиваем знак МИНУС
Попробовал и так,то-же самое.Похоже ошибка не в обработке отрицат. значений. Но где она может быть если с полож. всё в порядке???Мистика блин.
YURALL72 вне форума  
Непрочитано 16.01.2014, 22:30  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,055
Сказал спасибо: 2,562
Сказали Спасибо 11,888 раз(а) в 5,962 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

По какому признаку делаете вывод об ошибке в 0.1 градуса?
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor на форуме  
Непрочитано 16.01.2014, 22:36  
YURALL72
Прописка
 
Регистрация: 29.06.2007
Сообщений: 217
Сказал спасибо: 143
Сказали Спасибо 13 раз(а) в 11 сообщении(ях)
YURALL72 на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

В Протеусе симулирую.
Что самое обидное,лет 5 назад я сделал терморегулятор на 2 канала.Там всё работает.Но исходники потерял.Нашёл ток обрывки,видно недоработанные(((.

Последний раз редактировалось YURALL72; 16.01.2014 в 22:43.
YURALL72 вне форума  
Непрочитано 16.01.2014, 22:41  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,055
Сказал спасибо: 2,562
Сказали Спасибо 11,888 раз(а) в 5,962 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: ds18b20 отрицательная температура

О да... Протез - это сурово! Особенно, при абсолютном к нему доверии.
Вам кто-то гарантировал безгрешность модели?

Обратите внимание на погрешность датчика.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor на форуме  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Atmega128 DS18B20 koznov123 Микроконтроллеры, АЦП, память и т.д 10 01.06.2011 10:39
Минусовая температура в цифровом термометре на ATMega8 vhitman Микроконтроллеры, АЦП, память и т.д 6 25.11.2010 09:59
Подключение DS18B20 r Attiny2313 vaal555 Микроконтроллеры, АЦП, память и т.д 1 27.09.2010 22:06
ATmega8 и DS18B20, не определяется датчик butman Микроконтроллеры, АЦП, память и т.д 21 09.06.2007 22:05


Часовой пояс GMT +4, время: 08:32.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot