Проблема с ds1820...

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Аватара пользователя
ChipKiller
Сверлит текстолит когтями
Сообщения: 1163
Зарегистрирован: Ср янв 05, 2011 16:25:15

Re: Проблема с ds1820...

Сообщение ChipKiller »

КАШАК писал(а):Я уже 2 дня мучаюсь и все никак... :cry:
... ???
ChipKiller писал(а):
КАШАК писал(а): А что делать с измерением температуры?..

... я же говорил - точку останова в процедуру индикации и ловим баг....
что показала отладка?
Аватара пользователя
КАШАК
Это не хвост, это антенна
Сообщения: 1303
Зарегистрирован: Вс апр 19, 2009 17:20:22
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Контактная информация:

Re: Проблема с ds1820...

Сообщение КАШАК »

uk8amk писал(а):При таком подходе индикация будет пропадать на 750мс - время преобразования температуры. Чтобы избавится от этого недостатка вам придется расковырять встроенную в CVAVR библиотеку и функцию измерения разбить на части(маленькие функции):
1)отключение прерываний, запуск измерения, включение прерываний
2)подождать 750мс
3)откл. прерываний, считвание показаний, вкл. прерываний


Добавил это в библиотеку, температура измеряется, только заметно подергивание цифр. Как с этим бороться?
Опыт растет прямо пропорционально выведенному из строя оборудованию...
uk8amk
Поставщик валерьянки для Кота
Сообщения: 2222
Зарегистрирован: Вт ноя 27, 2007 11:32:06
Откуда: Tashkent

Re: Проблема с ds1820...

Сообщение uk8amk »

1. Полностью перейти на статику
2. Максимально понизить частоту регенерации экрана и увеличить интервал опроса датчика. Температура - вещь очень инерционна, за 5-10 сек никуда не убежит:)
3. Вместо программного метода
void hc164_wr(unsigned char dig1, unsigned char dig2){ //подпрограмма вывода данных в регистр
попытаться использовать модуль SPI для связи с регистрами. И задействовать его собственное прерывание в котором будет выводится следующий байт. Поверьте, работает намного быстрее чем ручное ногодрыганье.
4. Дальше ковырять библиотеку, точнее теперь уже написать свою 1wire. Насколько я помню, при опросе датчика важно точно выдержать интервал от старта бита до его считывания. Но пауза между битами может быть достаточно большой(до длительности W1 RESET). Вот между этими битами и как раз можно разрешать прерывания если они небольшие.
5. Попытаться писать код лучше, например:
Главная программа(ф-ция void tem(void))
d2=temp/10;
d3=temp%10;
d4=23;
И в обработчике первого таймера
digit_out[1]=d2;
digit_out[2]=d3;
digit_out[3]=d4;
Что отобразится на экране если прерывание произойдет например между этими двумя строчками:
d2=temp/10;
d3=temp%10;
?
Аватара пользователя
ChipKiller
Сверлит текстолит когтями
Сообщения: 1163
Зарегистрирован: Ср янв 05, 2011 16:25:15

Re: Проблема с ds1820...

Сообщение ChipKiller »

... по "партизанскому молчанию" становится ясно, что дальше рисования схем в Протеусе, дело не идет и слово отладка считается "ругательством".....

КАШАК зайдите в меню Протеуса Debug и выберите Start/Restart Debugging пока не разберетесь с отладкой - в Ваших программах всегда будет куча "неожиданностей" .
Аватара пользователя
КАШАК
Это не хвост, это антенна
Сообщения: 1303
Зарегистрирован: Вс апр 19, 2009 17:20:22
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Контактная информация:

Re: Проблема с ds1820...

Сообщение КАШАК »

Просто я занят был, учеба :) А схема уже давно на макетке собрана и там тестируется... :) А в протеусе после переделки (добавил транзисторы и аноды в параллель включил) схема работать не хочет... :cry: Вот проект протеуса:
3.rar
(17.56 КБ) 159 скачиваний
Опыт растет прямо пропорционально выведенному из строя оборудованию...
Аватара пользователя
ChipKiller
Сверлит текстолит когтями
Сообщения: 1163
Зарегистрирован: Ср янв 05, 2011 16:25:15

Re: Проблема с ds1820...

Сообщение ChipKiller »

КАШАК писал(а):А схема уже давно на макетке собрана и там тестируется..
... зачем тестировать на макетке??? ... для этого и существуют программы типа Протеуса.
КАШАК писал(а):А в протеусе после переделки (добавил транзисторы
... и сделали не лучше, а хуже (принцип работы схемы не изменился, а нагрузка на процессор выросла)
КАШАК писал(а):схема работать не хочет...
... и не захочет, потому что причина была названа еще во 2-ом посте .... а выводов из этого 0
Аватара пользователя
КАШАК
Это не хвост, это антенна
Сообщения: 1303
Зарегистрирован: Вс апр 19, 2009 17:20:22
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Контактная информация:

Re: Проблема с ds1820...

Сообщение КАШАК »

А почему тогда на макетке работает и свободно читает данные с двух датчиков? (Только цифры дергаются когда с датчиками идет обмен)
Опыт растет прямо пропорционально выведенному из строя оборудованию...
Аватара пользователя
КАШАК
Это не хвост, это антенна
Сообщения: 1303
Зарегистрирован: Вс апр 19, 2009 17:20:22
Откуда: г.Ростов-на-Дону/г.Таганрог/г.Геленджик
Контактная информация:

Re: Проблема с ds1820...

Сообщение КАШАК »

ChipKiller писал(а):
КАШАК писал(а):А схема уже давно на макетке собрана и там тестируется..
... зачем тестировать на макетке??? ... для этого и существуют программы типа Протеуса.


А макетка у меня что-то вроде радио конструктора, там куча всего впаяно, только разъёмы проводами соединил и схема готова :)
Опыт растет прямо пропорционально выведенному из строя оборудованию...
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»