Когда натрахаешься, попробуй совет из #4.
А как проверить? Я прочитал, что изменение фьюзов необратимо. Т.е. если я установлю фьюз RSTDISBL, то отключить его не смогу.
И еще. Где-то в инструкциях я прочитал, что Тинька по умолчанию работает на другой частоте и что бы она заработала на нужной нужно прошить загрузчик. Ну это так просто описывается в инструкции. Этот загрузчик есть в среде Arduino IDE. Я правильно понял, что это как раз меняет какой-то фьюз?
Осталось понять как установить фьюз RSTDISBL.
Вы про этот совет? А действительно это самое простое. Надо попробовать.
А параллельно датчику резистор, это значит параллельно фоторезистору обычный поставить? Ну что бы сопротивление на этом отрезке в 0 не уходило, когда фоторезистор не освещен?
Нет такого. Есть программаторы, которые позволяют это делать.
(менять RSTDISBL)
А можно ссылочку где его преобрести?
Думаю может прикупить. Хотя не был бя я таким ослом, оставил бы 1 контакт незадействованным. У меня как раз 1 вывод свободен.
Любой с параллельным интерфейсом должен.
У меня, к примеру, TL866, ссылку не дам, давно купил.
Сейчас есть более современные
attiny85 шьётся по последовательному соединению к счастью, только пин RESET надо поднимать до 12 вольт
Да, @ua6em прав. Я ошибся. ATtiny85 шьётся по сериалу, но нужен высоковольтный программатор.
TL866 умеет это делать.
да нет, просто любой высоковольтный параллельный умеет и по последовательному )))
Это да.
Но , теоретически, можно взять и “последовательный” высоковольтный прогер , без параллельного интерфейса.
Хоть я таких в продаже и не видел, но сам когда-то давно делал)))
В общем решил не трахаться и сразу воспользоваться советом из #4.
Если там не получится, то светодиод перевешу на свободный PB1, а фоторезистор тогда на А2 перевешу. Благо там дорожки в удобных местах можно порезать и просто перевесить на нужные контакты девайсы.
// ATMEL ATtiny 25/45/85
// +-\/-+
// !RESET PCINT5 5/A0 (D 5) PB5 1| |8 Vcc
// XTAL1 CLKI !OC1B PCINT3 3/A3 (D 3) PB3 2| |7 PB2 (D 2) 2/A1 PCINT2 USCK SCK T0 INT0 SCL
// XTAL2 CLKO OC1B PCINT4 4/A2 {D 4) PB4 3| |6 PB1 (D 1) pwm1 PCINT1 MISO DO OC0B AIN1
// GND 4| |5 PB0 (D 0) pwm0 PCINT0 MOSI DI OC0A AIN0 SDA AREF
// +----+
С подключение контактов разобрался.
И все бы хорошо, если б не фоторезистор. Никак не могу понять как поставить условие, что бы срабатывало тока при освещенности меньше скажем 100. При том условии как написано у меня, лампа не гаснет. Но это обойти можно. Скажем сделав так
if ((digitalRead(DD1) == HIGH or digitalRead(DD2) == HIGH) and osv <= 100)
Но мне надо, что бы если движение во время горения произошло снова, то отсчет временеи пошел по новой. А так получается не отреагирует, т.к. освещенность будет от лампы больше 100.
Логично добавить в условие проверку состояния лампы - если включена, то ограничение на освещённость не действует.
Что-то типа этого
if(!digitalRead(RELE) && osv <= 100)
P.S. При этом pinMode() переключать не надо.
Да, это понятно. Спасибо. Попробую.
if(osv < 100) { ... }
Это стандартная практика: если нужно, чтобы поведение программы зависело от предыстории, нужно запоминать эту предысторию. Для этого вводятся переменные состояния.