ds18b20

Здесь можно обсуждать устройства относящиеся к цифровым технологиям.

Модератор: gurvinok

Аватара пользователя
GhostX
Сообщения: 1135
Зарегистрирован: 07 дек 2015, 14:40
Откуда: Рязань

Re: ds18b20

Сообщение GhostX » 01 мар 2016, 16:00

переписал все адреса и нашел свой косяк огромный. Перехлест адресов в памяти переменная температуры и ключ сервы в какую сторону ей вращаться, в случае отключения. При чем вроде все записываю на бумажки, про серву ни слова не записал. Я бы эту гадость не нашел бы вообще никогда, если бы она всплыла когда нибудь... повезло, что заметил. :)

Аватара пользователя
gurvinok
Сообщения: 1544
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: ds18b20

Сообщение gurvinok » 01 мар 2016, 18:07

Вот поэтому люди свои программы делят на блоки и уже внутри блоков используют локальные переменные.
Если долго мучиться, может быть получится.

Аватара пользователя
GhostX
Сообщения: 1135
Зарегистрирован: 07 дек 2015, 14:40
Откуда: Рязань

Re: ds18b20

Сообщение GhostX » 01 мар 2016, 18:38

Интересно, а как им это мешает залить в eeprom из разных блоков, разную информацию, в одну ячейку?
У меня в 17 ячейке была переменная поворота лотка 1 или 0. Я забыл на бумажку это записать. И потом задул в эту ячейку температуру и записал на бумажку, что в 17 ячейке лежат градусы, которые нужно держать.
Если бы не переписывал эти 1 байтовые переменные в 4 байтовые ни в жизнь бы этого не заметил.

Аватара пользователя
gurvinok
Сообщения: 1544
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: ds18b20

Сообщение gurvinok » 01 мар 2016, 18:48

Никак. Переменные локальные не пересекаются с другими переменными. Этим разруливает компилятор. Ну короче самое главное чтобы сумма переменных не была выше отведенной для них ОЗУ.
Если долго мучиться, может быть получится.

Аватара пользователя
GhostX
Сообщения: 1135
Зарегистрирован: 07 дек 2015, 14:40
Откуда: Рязань

Re: ds18b20

Сообщение GhostX » 01 мар 2016, 19:07

Этим разруливает компилятор.
Этим не компилятор разруливает, а я назначаю ячейки.
Читал что то что есть какая то команда на си которая сама назначает свободный адрес, но в ардуине ее нет. EEMAN чтоли или EEMAT я не помню, может еще как то.
А еще у меня какие то проблемы возникают при попытке пользоваться локальными переменными. Я еще не вникал толком, но когда возводил их в глобальные все пропадало. И не всегда так бывало, поэтому я сейчас даже сказать ничего не могу...

Аватара пользователя
gurvinok
Сообщения: 1544
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: ds18b20

Сообщение gurvinok » 01 мар 2016, 19:35

Стоп! Мы если говорим про ЕЕПРОМ, то при чем здесь переменные. Если речь идет про ОЗУ и переменные, то при чем здесь ЕЕПРОМ?
Если долго мучиться, может быть получится.

Аватара пользователя
GhostX
Сообщения: 1135
Зарегистрирован: 07 дек 2015, 14:40
Откуда: Рязань

Re: ds18b20

Сообщение GhostX » 01 мар 2016, 19:44

Аааа))))) Все есть. В перемененных и озу идет рабочий режим, а в eeprom пишутся изменения в настройках. То есть когда я отключаю его из розетки, а потом включаю, он просто продолжает работу так, словно и не выключался. А по истечении 17 дн. Завершит цикл.

Аватара пользователя
gurvinok
Сообщения: 1544
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: ds18b20

Сообщение gurvinok » 01 мар 2016, 19:46

Вот теперь сошелся дебет с кредитом, а то я уже заблудился.
Если долго мучиться, может быть получится.

Ответить