3132 и 18d20
- Войдите на сайт для отправки комментариев
Чт, 25/04/2019 - 17:26
завис на казалось бы детском вопросе
не могу заставить одновременно работать 18D20 и DS3132
по отдельности работают, вместе нет....
порты для 1-ware ставлю 5й
для i2c по аппаратные (А4А5) //328р
библиотеки стандартные
#include <OneWire.h>
#include <Wire.h>
#include <DallasTemperature.h>
#include <DallasTemperature.h>
#include <DS3231.h>
не могу заставить одновременно работать 18D20 и DS3132
Принято к сведению.
Когда будет вопросы - обращайся. Только код опубликовать не забудь.
Кстати, о коде - он на каком из 20-ти вышеуниверситетских языков?
С таким пафосным ником и с такой ничтожной проблеой....... тфу! блее, спиридон патефоныч! :))
-NMi-,
не оскорбляй великого специалиста! Мы и мизинца его не стоим. Он знает 20 языкоа программирования на уровне выше университетского. Жаль только, что С и С++ в эти 20 не попали - не удостоились.
я подожду, пока все выскажутся, а потом уж опубликую, если не заработает..
а то тут всегда пару десятков постов об ниочем, и только потом полезное писать начинают
Пайду ка я пиффка холодненЪкого хлебну с рыбкой... :))
шина 1 wire не имеет значение для шина I2C. Также I2C это железо от чипконтроллер и 1 wire исключение программа.
завис на казалось бы детском вопросе не могу заставить одновременно работать 18D20 и DS3132 по отдельности работают, вместе нет....
Хотелось бы, конечно, увидеть программу. Но повангую - обращаетесь без заводского номера или питание паразитное?
Да, нет, всё проще. Просто ТС в совершенстве знает 20 языков, а С++ в аккурат 21-ый :(
Тут мне не соревноваться - я 20 с иностранными, офицерским и матерным не знаю. :)
Кароче... расходимси... :)))
завис на казалось бы детском вопросе не могу заставить одновременно работать 18D20 и DS3132 по отдельности работают, вместе нет....
Хотелось бы, конечно, увидеть программу. Но повангую - обращаетесь без заводского номера или питание паразитное?
верно, обращение без номера делаю
а питание полное
щас переписываю программу с явным обращением
всё,сам накосячил - удалил случайно строчку инициализации шины....
а подскажите, какую посоветуете лучше использовать библиотеку для 3231М - а то их даже "стандартных" штук 10....
а подскажите, какую посоветуете лучше использовать библиотеку для 3231М - а то их даже "стандартных" штук 10....
Никакую - ручками лучше потомучто без delay(). Да и для 18B20 тоже советую ручками.
а подскажите, какую посоветуете лучше использовать библиотеку для 3231М - а то их даже "стандартных" штук 10....
Никакую - ручками лучше потомучто без delay(). Да и для 18B20 тоже советую ручками.
спс, но я щас не на тини13 пишу, а у 328й под текущий проект ресурсов выши крыши
да и мне не критично даже с делей... проект простейшего показомерта-контрольки для холодильника (да и зачем делей, есть миллис)
всё наполнение - 2 холла на двери, 3 термометра (2 камеры и помещение), экранчик 240*240 , 5 силовых линии управления (2 компрессора, 2 вентилятора и свет), зуммер и 2 кнопки настроек (для часов)...
да и мне не критично даже с делей... проект простейшего показомерта-контрольки для холодильника (да и зачем делей, есть миллис)
Все библиотеки для DS содержат delay() для ожидания ответа от датчика. Соответственно в момент опроса они тормозят программу на 1сек. Если Вам некритично ожидание ответа кнопки (в худшем случае) секунду, то пользуйтесь библиотеками.
Все библиотеки для DS содержат delay()
ну зачем так, я в Dallas билиотеке просто закомментировал все delay.
Все библиотеки для DS содержат delay()
ну зачем так, я в Dallas билиотеке просто закомментировал все delay.
в dsllas давно уже убрали делей из библиотеки и отдали это на попечительство разработчика...
взял в итоге uRTCLib - мелкая и простая
в коде нет делеев, все нужные данные отдает
Я фигею с этих пионеров! Ты ему про одно - он тебе про другое.(
взял в итоге uRTCLib - мелкая и простая
в коде нет делеев, все нужные данные отдает
Секрет расскажу :) можно вообще без библиотеки все это сделать.
Ну вот вы и выдали главный секрет программистов - программы можно писать не только без библиотек, но и даже на ассемблере. За енто вы будете прокляты в песочнице.
Все библиотеки для DS содержат delay()
ну зачем так, я в Dallas билиотеке просто закомментировал все delay.
в dsllas давно уже убрали делей из библиотеки и отдали это на попечительство разработчика...
верно
в dsllas давно уже убрали делей из библиотеки и отдали это на попечительство разработчика...
Ткните меня носом - пока увидел, что delay() заменили на millis(), но функция осталась блокирующей.
1
void
DallasTemperature::requestTemperatures() {
2
...
3
// ASYNC mode?
4
if
(!waitForConversion)
return
;
5
6
blockTillConversionComplete(bitResolution);
7
}
Т.е. они как бы сами не уверены, но надеются ))
сказала, персонально сенсор. dallas библиотека нет.
Скажу, сенсор есть лисиция хитроя как.
Convert T [44h]
This command begins a temperature conversion. No further data is required. The temperature
conversion will be performed and then the DS18B20 will remain idle. If the bus master issues read time
slots following this command, the DS18B20 will output 0 on the bus as long as it is busy making a
temperature conversion; it will return a 1 when the temperature conversion is complete.
С этого достаточно в режим преобразование температуры использование чипконтроллер прерывание от изменение низкий сигнал в высокий сигнал 1wire от сенсор. Или запрос короткий интервал millis() от сенсор пин DQ сигнал высокий нет или да? Результат сенсор в режим преобразование температуры в главные инструкции остановка или блокировка или тормоз нет.
сказала, персонально сенсор. dallas библиотека нет.
Скажу, сенсор есть лисиция хитроя как.
Convert T [44h]
This command begins a temperature conversion. No further data is required. The temperature
conversion will be performed and then the DS18B20 will remain idle. If the bus master issues read time
slots following this command, the DS18B20 will output 0 on the bus as long as it is busy making a
temperature conversion; it will return a 1 when the temperature conversion is complete.
С этого достаточно в режим преобразование температуры использование чипконтроллер прерывание от изменение низкий сигнал в высокий сигнал 1wire от сенсор. Или запрос короткий интервал millis() от сенсор пин DQ сигнал высокий нет или да? Результат сенсор в режим преобразование температуры в главные инструкции остановка или блокировка или тормоз нет.
Пожалуй переведу - короче, в современной библиотеке DS, если к ней обратится не вовремя (до того, как обработался запрос) выдается некий нуль. Вот как его отличить от нуля - я не понял...
в современной библиотеке DS, если к ней обратится не вовремя (до того, как обработался запрос) выдается некий нуль. Вот как его отличить от нуля - я не понял...
А главное, что я до сих пор понять не могу, нахрена вообще нужна библиотека DS? Чем OneWire не устраивает?
Пожалуй переведу - короче, в современной библиотеке DS, если к ней обратится не вовремя (до того, как обработался запрос) выдается некий нуль. Вот как его отличить от нуля - я не понял...
https://github.com/milesburton/Arduino-Temperature-Control-Library/blob/...
А вообще - есть переведенный документ по DS18B20. Переводчик, по-моему, Чернов.
А главное, что я до сих пор понять не могу, нахрена вообще нужна библиотека DS? Чем OneWire не устраивает?
Она сама проверяет необходимые presence и crc, о чём многие пользователи OW забывают.
Она сама проверяет необходимые presence и crc, о чём многие пользователи OW забывают.
Так если забываешь, наверно и не нужно?))))
Было бы не нужно - производитель бы не включал данную функциональность в протокол. А вообще - это вопрос философский. Кому-то везёт, кому-то нет и случайная помеха вводит систему в состояние блэкаута в самое неподходящее время.
Но, вообще, я не понимаю: там дел-то на десять минут накатать код проверки присутствия и проверки crc. Чего так упорствовать в отрицании очевидных фактов?
Но, вообще, я не понимаю: там дел-то на десять минут накатать код проверки присутствия и проверки crc. Чего так упорствовать в отрицании очевидных фактов?
CRC, в стандартном примере OneWire, уже есть, присутствие - на усмотрение творящего, хоть по ID, хоть по количеству, хоть по температуре.
Вот и не пойму, за что 2К флэша отдавать?
А, не нужно, имел в виду, что если забываешь, видать и проблемы не существует.)))))
2кб - немного. Особенно если внутри уже флоат заведен. Что плохого в далластемпературе - никак не пойму. Чтобы 328-й простому человеку набить под завязку - надо еще постараться.
Она сама проверяет необходимые presence и crc, о чём многие пользователи OW забывают.
Да и ты же не забывай, что PR работает только в случае с одним датчиком на шине и не забудь, что CRC при некой "волшебной" температуре "канает" :)) Т.е. запрос "мимо" а всё сработало... PR и CRC проканали !!!
Там ещё (помому) две ячейки памяти безхозные есть, я чёто с ними мутил... нипомню.
Вааще 1820 прикольные датчики... но мне кажется в последнее время то-ли браку много, толи китайсы чо там творят... короче - врут они! Ни о какой 0,5 градуса и речи быть не может... Бывает и на 5 градусов врут.
Что плохого в далластемпературе - никак не пойму.
Так у меня, к ней, личная ненависть. Когда только начинал с ардуиной, DT меня достать сумела, ушел на OneWire, с тех пор ненавижу, даже кюшать не могу.))))
Она сама проверяет необходимые presence и crc, о чём многие пользователи OW забывают.
Да и ты же не забывай, что PR работает только в случае с одним датчиком на шине и не забудь, что CRC при некой "волшебной" температуре "канает" :)) Т.е. запрос "мимо" а всё сработало... PR и CRC проканали !!!
И? Это говорит о том, что надо перестать CRC проверять?
С удовольствием пользуюсь библиотекой ds если место позволяет и вообще не парюсь.
Это говорит о том, что надо перестать CRC проверять?
Нет, конечно, CRC полюбому у меня проверяется и отклик то-же. Просто сталкивался с неким глюком пару лет назад... маненько "офигел", но понял, в чём прикол. Так-что как-то так... :))