DS18B20 глючит, или руки кривые
Ок)
- Реклама
Если от внутреннего RC, то сто процентов частота улетает. Я делал для AT89C2051 все работает четко, в морозилку кидал ни чего никуда не уходит, все показывает.
Купи два беляша и собери из них кошку
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
- Сообщения: 58
- Зарегистрирован: Сб янв 07, 2012 11:41:25
Сегодня сбегаю за кварцомPanda_Y2K писал(а):Если от внутреннего RC, то сто процентов частота улетает. Я делал для AT89C2051 все работает четко, в морозилку кидал ни чего никуда не уходит, все показывает.
Помогите нупу в написании программ)
Проблема с упомянутым чипом. Непериодически несколько раз в неделю он выдает совершенно левые цифры, причем с соответствующим значением контрольной суммы - генератор CRC не ругается. Неисправен датчик?
Иногда мой питомец уходит в такую спячку, что разбудить его можно только щелчком по первой ноге...
- Сообщения: 58
- Зарегистрирован: Сб янв 07, 2012 11:41:25
ХЗ.watchmaker писал(а):Проблема с упомянутым чипом. Непериодически несколько раз в неделю он выдает совершенно левые цифры, причем с соответствующим значением контрольной суммы - генератор CRC не ругается. Неисправен датчик?
Помогите нупу в написании программ)
- Реклама
В этой схеме проверь свой датчик и успокойся(у тебя в коде ошибки)
- Вложения
-
- Простой термометр.zip
- (136.95 КБ) 343 скачивания
У кошки четыре ноги: вход,
выход, земля и питание.
Но трогать её не моги:
получится замыкание
выход, земля и питание.
Но трогать её не моги:
получится замыкание
- Сообщения: 58
- Зарегистрирован: Сб янв 07, 2012 11:41:25
У тебя пример на пике, выложи, если можно, код к АВР. Если нету, то к пику выложи, алгоритм посмотрю и подобный на авр напишуюДрон писал(а):В этой схеме проверь свой датчик и успокойся(у тебя в коде ошибки)
Помогите нупу в написании программ)
Там исходники есть на асемблере,тебя должен интересовать опрос датчика,сравни со своим.Я код не из алгоритма компилю(забыл как это среда называетса),а на асемблере и иногда на Си.Короче опрос датчика перенеси в свой код и откомпиль(Авр студия умеет копилить смесь си с ассемблером.Payalnick писал(а): У тебя пример на пике, выложи, если можно, код к АВР. Если нету, то к пику выложи, алгоритм посмотрю и подобный на авр напишую
У кошки четыре ноги: вход,
выход, земля и питание.
Но трогать её не моги:
получится замыкание
выход, земля и питание.
Но трогать её не моги:
получится замыкание
- Сообщения: 58
- Зарегистрирован: Сб янв 07, 2012 11:41:25
У меня кодвижн. Он умеет компилить ассемблер?Дрон писал(а):Там исходники есть на асемблере,тебя должен интересовать опрос датчика,сравни со своим.Я код не из алгоритма компилю(забыл как это среда называетса),а на асемблере и иногда на Си.Короче опрос датчика перенеси в свой код и откомпиль(Авр студия умеет копилить смесь си с ассемблером.Payalnick писал(а): У тебя пример на пике, выложи, если можно, код к АВР. Если нету, то к пику выложи, алгоритм посмотрю и подобный на авр напишую
Помогите нупу в написании программ)
Кажетса нет,но неуверен,т.к. пользовался им один раз очень давно.Payalnick писал(а): У меня кодвижн. Он умеет компилить ассемблер?
У кошки четыре ноги: вход,
выход, земля и питание.
Но трогать её не моги:
получится замыкание
выход, земля и питание.
Но трогать её не моги:
получится замыкание
- Сообщения: 58
- Зарегистрирован: Сб янв 07, 2012 11:41:25
В общем я совсем запутался...Прошил другую мегу8, всегда показывает -9999...
Помогите написать нормальную программу для датчика температуры и МК ATmega8 в среде CVAVR.
Мне хватит Иницилизации датчика и считывание температуры.
Помогите написать нормальную программу для датчика температуры и МК ATmega8 в среде CVAVR.
Мне хватит Иницилизации датчика и считывание температуры.
Помогите нупу в написании программ)
Это есть в даташите на датчикPayalnick писал(а):
Мне хватит Иницилизации датчика и считывание температуры.
- Вложения
-
- DS18B20 datashit na russkom.pdf
- (1008.92 КБ) 562 скачивания
У кошки четыре ноги: вход,
выход, земля и питание.
Но трогать её не моги:
получится замыкание
выход, земля и питание.
Но трогать её не моги:
получится замыкание
- Сообщения: 58
- Зарегистрирован: Сб янв 07, 2012 11:41:25
Дык пробовал писать командами из ДШ, эффекта 0.Дрон писал(а):Это есть в даташите на датчикPayalnick писал(а):
Мне хватит Иницилизации датчика и считывание температуры.
Помогите нупу в написании программ)
Ну что тогда посоветовать если специально для тебя в даташите неправду пишут?Payalnick писал(а):Дык пробовал писать командами из ДШ, эффекта 0.Дрон писал(а):Это есть в даташите на датчик
У кошки четыре ноги: вход,
выход, земля и питание.
Но трогать её не моги:
получится замыкание
выход, земля и питание.
Но трогать её не моги:
получится замыкание
Где-то во время начала этой темы, я сделал свой проект часы, термометр, радио. Проект писал на CVAVR и вот какая интересная особенность выяснилась, похоже в CVAVR все таки кривой 1wire, по тому, что термометр завышает температуру градусов на 4-7, что очень много для этого датчика, а во вторых периодически происходит ошибка инициализации 1wire и выдается та же чепуха -999. у меня это выглядит по другому (конкретно в виде совершенно не известного символа на одном из индикаторов, по тому, что выборка символа идет из массива и при таком значении указатель улетает фиг знает куда). При этом на таком же датчике другой термометр на AT89C2051 работает отлично и показывает честную температуру. Там 1wire я писал сам и ошибки там не возникает, хотя стоит он на балконе. В обоих проектах кварц и при этом на avr термометр лежит в тепличных условиях, и все равно врет. Надо переписывать 1wire и пробовать.
Купи два беляша и собери из них кошку
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Labor est etiam ipse voluptas Труд уже сам по себе есть наслаждение (*Формула любви)
Ave novie-nostra ales Если один человек построил - другой завсегда разобрать может....(*Формула Любви).
Меня удивляют люди, которым лень читать даже хелп, прежде чем задать кучу глупых вопросов. Начнем с простых вещей, создаем проект в CVAVR при помощи генератора начального кода, датчик подключаем к выбранному пину, не забываем про подтягивающий резистор 4.7к на + питания. Затем открываем хелп и по ключевому слову ds18b20 ищем функции библиотеки и пример кода для датчика температуры. От туда же берем пример вывода на дисплей. Также обратите внимание, на то, что указано в настройках компилятора о типах переменных. Например char по умолчанию беззнаковый, таким же может являться и int. Также форматированный вывод дробных чисел выключен по умолчанию, для уменьшения кода, если хотите видеть переменные float как дробные, то включите это в настройках !!! А также обязательно проверяйте монтаж! Удачи.
- Сообщения: 58
- Зарегистрирован: Сб янв 07, 2012 11:41:25
Та с переменными я знаю как обращаться. Спасибо, про хелп не знал.Nikopol писал(а):Меня удивляют люди, которым лень читать даже хелп, прежде чем задать кучу глупых вопросов. Начнем с простых вещей, создаем проект в CVAVR при помощи генератора начального кода, датчик подключаем к выбранному пину, не забываем про подтягивающий резистор 4.7к на + питания. Затем открываем хелп и по ключевому слову ds18b20 ищем функции библиотеки и пример кода для датчика температуры. От туда же берем пример вывода на дисплей. Также обратите внимание, на то, что указано в настройках компилятора о типах переменных. Например char по умолчанию беззнаковый, таким же может являться и int. Также форматированный вывод дробных чисел выключен по умолчанию, для уменьшения кода, если хотите видеть переменные float как дробные, то включите это в настройках !!! А также обязательно проверяйте монтаж! Удачи.
Помогите нупу в написании программ)
может поможет информация http://invent-systems.narod.ru/DS18B20_HITECH.htm пример программы работы с датчиком температуры DS18B20 на С HI-TECH для PIC-контроллеров.
Класс! Ни одной проверки состояния линии перед выдачей сигналов.Catcatcat писал(а):может поможет информация http://invent-systems.narod.ru/DS18B20_HITECH.htm пример программы работы с датчиком температуры DS18B20 на С HI-TECH для PIC-контроллеров.
Вот от таких алгоритмов - такие темы и рождаются...
Давал-же ссылку, дам еще раз - более конкретные
http://code.google.com/p/auto-weather/s ... r/ds1820.c
http://code.google.com/p/auto-weather/s ... r/ds1820.h
Для вызова необходимо прописать
Код: Выделить всё
/*расположение датчиков ds1820 указываем DDRx !!!!*/
#define DS1820_1_port DDRB
#define DS1820_1_bit (1<<PB0)
#define DS1820_2_port DDRB
#define DS1820_2_bit (1<<PB1)
#define DS1820_1 (uint8_t *) &DS1820_1_port , DS1820_1_bit
#define DS1820_2 (uint8_t *) &DS1820_2_port , DS1820_2_bitКод: Выделить всё
if ((term1_lasterr=ds1820_start(DS1820_1))!=SUCCESS) hw_flags&=~Termo1_OK;
if ((term2_lasterr=ds1820_start(DS1820_2))!=SUCCESS) hw_flags&=~Termo2_OK;Код: Выделить всё
errors=5;
while (((term1_lasterr=ds1820_get_temp(DS1820_1,&temperature))!=SUCCESS)&&(errors>0)){
errors--;
}В настоящее время прога работает от внутреннего тактового генератора 4 МГц, сбоев не было ни при +20 ни при -10 (температура всего устройства, а не только датчика)
— Не говорите мне что делать и я не скажу куда Вам идти...
- Сообщения: 58
- Зарегистрирован: Сб янв 07, 2012 11:41:25
Народ! в общем переделал немного прогу, теперь работает. НО! Перешил её(прогу) на другую мегу8 в дип корпусе(до этого была SMD мега) и не находит датчик. В чем проблема? Монтаж проверял, все в норме.
Помогите нупу в написании программ)


