ds18b20 maxim (64 bit) или dallas

Обсуждаем цифровые устройства...
Закрыто
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

Хочу собрать термометр на цифровом датчике ds18b20. Уже собрался покупать. Начал изучать даташиты и наткнулся на то, что
У фирмы maxim есть "Each device has a unique 64-bit serial code stored in an onboard ROM" , а у dallas нет !!!
Прикрепляю даташиты. Проблема в следующем: Это опечатка во всех PDF или что??? Мне к примеру надо подключить одновременно 5 датчиков на один провод. Если я поставлю фирмы dallas, то они не смогут работать. Как я их буду распознавать??? Где собака зарыта? Какие датчики покупать???
ds18B20_maxim.pdf
(223.99 КБ) 395 скачиваний
Реклама
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

Вот еще Далас. В прошлом ссобщении не получилось выставить.
И тут не получается!!!!!!! я в шоке...

Если набрать поиск в даташитах "64" то находится это число в обоих документациях. Вопрос: ПОЧЕМУ ДОКУМЕНТАЦИИ ПО РАЗНОМУ ТОГДА СОСТАВЛЕНЫ? ОНИ ВЕДЬ ТАКИМ ОБРАЗОМ С ТОЛКУ ЧЕЛОВЕКА СБИВАЮТ!!!
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18786
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

уважаемый, без паники! :)
во-первых, давным-давно нет отдельной фирмы Dallas Semiconductor и отдельной MAXIM, они давным давно слились в единое целое MAXIM-Dallas :))) поэтому купить "даллас" или "максим" вы сможете вряд ли - это их общая продукция.
во-вторых, я не знаю, что вам там в даташитах не так, но в каждом и любом написано, что любое 1-wire устройство имеет уникальный номер.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Вымогатель припоя
Аватара пользователя
Сообщения: 544
Зарегистрирован: Пт июн 04, 2010 17:40:13
Откуда: Непокорный город-герой Севастополь

Сообщение zhu4er »

А еще можно покурить google, яндекс и особенно книгу по CVAVR. Лично я так и делал.
Даже у стен есть уши...
Реклама
Эиком - электронные компоненты и радиодетали
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

zhu4er писал(а):А еще можно покурить google, яндекс и особенно книгу по CVAVR. Лично я так и делал.
Книгу курил! Если говорите о примерах, то там нет этих данных!!! Если есть, то скажите на какой странице?

Еще вопрос по датчикам: Кто знает в чем отличие обычного 1-wire от урезанного? Я в инетернете на статью наткунулся, там именно так сказанно, что у датчика DS1821 урезанный 1-wire! Я понимаю, что написанная программа для DS18b20 не будет работать с DS1821 потомучто 1-wire в DS1821 - урезанный. В чем сущность этого урезания?

zhu4er, Вы по книге для какого датчика программу писали?
zhu4er, скажите а библиотеку 1-wire надо добавлять???
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18786
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

урезанность в том, что у DS1821 нет уникального адреса и нет поддержки никаких команд, кроме измерения температуры. и вообще, главное предназначение этого прибора - режим ТЕРМОСТАТА (т.е. без использования микроконтроллера, автономно от всего), а измерение температуры - это уже дополнительная функция.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

Amstron писал(а):
zhu4er писал(а):А еще можно покурить google, яндекс и особенно книгу по CVAVR. Лично я так и делал.
Книгу курил! Если говорите о примерах, то там нет этих данных!!! Если есть, то скажите на какой странице?
Страница 287 (нашол)
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

Народ, чкажите, а кварц нужно ставить на 3,6864 как в примере???

У меня программа работает на 8 МГц - на внутреннем генераторе и хочу на ней остаться!
Скажите , без кварца датчик DS18b20 работать будет?
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

Amstron писал(а):Народ, чкажите, а кварц нужно ставить на 3,6864 как в примере???

У меня программа работает на 8 МГц - на внутреннем генераторе и хочу на ней остаться!
Скажите , без кварца датчик DS18b20 работать будет?
Без кварца на частоте 8 МГЦ не работает!!! А на 4 МГц пытается, тоесть 50/50. Я пологаю надо кварц на 3,6864 МГц.
На 2 МГц - тоже не работает...

Народ, имел ли кто опыт заставить его работать на частоте 8 МГц????
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

Вам проще кварц найти на 3.6 МГц или программу переписать под частоту на которой ваш МК работает? Я так понимаю прога на Си написана, так там всего одну строку надо заменить.
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

Engineer_Keen писал(а):Вам проще кварц найти на 3.6 МГц или программу переписать под частоту на которой ваш МК работает? Я так понимаю прога на Си написана, так там всего одну строку надо заменить.
Какую строку?
Мне надо чтобы моя прога работала на 8 мГц
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

Строку где написано что частота 3.6864 МГц. Это наверняка будет одна из первых строк программы. Вот туда и надо поставить ваши 8 МГц.
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

Engineer_Keen писал(а):Строку где написано что частота 3.6864 МГц. Это наверняка будет одна из первых строк программы. Вот туда и надо поставить ваши 8 МГц.
В моей программе нет этой строчке! Возможно она есть в одной из библиотек! Надо посмотреть...

У кого еще есть какие нибудь предложения?
ds18b20.rar
(726 байт) 248 скачиваний
Покапайтесь ктонибудь в этой библиотеке. Возможно в ней надо что то исправить!
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

Выкладываю кусок программы:

if( ds18b20_init( 0, 30, 60, DS18B20_12BIT_RES ) ) //инициализация датчика. Анализ присутствия датчика
{
indication_IND=555;
}
else { indication_IND=222;
};

delay_ms(2000);

temp=ds18b20_temperature(0)*10;//команда для получения значения температуры


indication_IND=temp;

delay_ms(2000);

Так хоть я могу понять видит ли МК датчик или нет. На частоте 4 Мгц видит через раз...
А на частоте 8 Мгц 555 появляются очень редко!!!

Помогите победить! Хочу, что бы МК работал на 8 МГц...
Друг Кота
Аватара пользователя
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Сообщение Engineer_Keen »

Раз в программе нет, значит где-то в настройках проекта должно быть, просто я не знаю как это в CVAVR настраивается. А частота в 4МГц видимо настолько близка к 3.6, что МК частично укладывается в тайм-слоты и кое-как синхронизируется с датчиком...
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

В прошлом посте я давай ссылку на файл. В нем есть такая строчка:

static flash int conv_delay[4]={217,434,868,1736};

В этом массиве я изменил числа умножив прежние на 2,1701 !!!

ЗАРАБОТАЛО!!!


а потом перестало работать((( странно... разбираюсь дальше
Опытный кот
Аватара пользователя
Сообщения: 703
Зарегистрирован: Вс янв 18, 2009 21:12:49

Сообщение asteroid7 »

Amstron, покажите файл .С, где реализованы функции w1_init, w1_write, w1_read. В нём временные значения шины задаются. И хеадер .Н с прототипами.
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

asteroid7 писал(а):Amstron, покажите файл .С, где реализованы функции w1_init, w1_write, w1_read. В нём временные значения шины задаются. И хеадер .Н с прототипами.
Я не могу у себя найти такого файла, где раелизованны такие функции!
Народ, посмотрите у себя... В какой папке и как файл называться должен?
Может быть при установке мне эта библиотека не добавилась? Тогда я не понимаю почему у меня через заз темпратуры показывает!!!


Привожу содержимое файла 1WIRE.H

/*
CodeVisionAVR C Compiler
(C) 1998-2000 Pavel Haiduc, HP InfoTech S.R.L.

Prototypes for Dallas Semiconductor
1 Wire protocol functions

BEFORE #include -ING THIS FILE YOU
MUST DECLARE THE I/O ADDRESS OF THE
DATA REGISTER OF THE PORT AT WHICH
THE 1 WIRE BUS IS CONNECTED AND
THE DATA BIT USED

EXAMPLE FOR PORTB:

#asm
.equ __w1_port=0x18
.equ __w1_bit=3
#endasm
#include <1wire.h>
*/

#ifndef _W1_INCLUDED_
#define _W1_INCLUDED_

#pragma used+
unsigned char w1_init(void);
unsigned char w1_read(void);
unsigned char w1_write(unsigned char data);
unsigned char w1_search(unsigned char cmd,void *p);
unsigned char w1_dow_crc8(void *p,unsigned char n);
#pragma used-

#endif
Опытный кот
Аватара пользователя
Сообщения: 703
Зарегистрирован: Вс янв 18, 2009 21:12:49

Сообщение asteroid7 »

В окне "Code Navigator" или "Navigator", слева высокое, должны быть показаны все файлы, подключенные и используемые проектом. Искать проще в них.
А реально, хрен его знает, что CodeVision в этом окне выдаёт... :)

И как самый поганый вариант - это внутренние функции компилятора или заранее откомпилированные типа 1wire.obj (не знаю точного CV расширения). В этом случае исходников не будет...
Тогда, берёте нормальные файлы типа 1wire.c и 1wire.h , или с похожими названиями onewire.c onewire.h и т.п. коих в инете полно (у ARV на сайте есть), и подключаете их к проекту. В своей программе меняете названия функций.
Нашел транзистор. Понюхал.
Сообщения: 173
Зарегистрирован: Вт дек 21, 2010 21:18:52

Сообщение Amstron »

а почему у меня на частоте 4 МГц работает болемение стабильно 50/50? А на 8 МГц работет очень редко!

Бду искать ...
Закрыто

Вернуться в «Цифровая техника»