Привет, написал небольшую программу для Attiny13, которая включает помпу каждый час. Перед этим на миллисекунду подается ток с выхода PB4 через воду на вход PB3. При отсутствии сигнала PB4 включается уже на 1 секунду и от него запитывается пищалка. Её пришлось запитать от того же порта, потому что первые два (PB1 и PB2) заняты под другие цели.
Все вроде бы работает, но будет ли работать вода как в эмуляторе (вода в эмуляторе обведена голубым квадратом)? Меряю мультиметром сопротивление воды - показывает больше мегаома...
Картинка и код:
Пояснение к картинке: в первом случае "сенсор" опущен в "воду" и включается помпа на PORTB.2; во втором случае "воды" нет - джампер разомкнут и включается баззер на 1 секунду ( DDRB.4 = sec < 2)
Раздел: Песочница или Вопрос-Ответ
Все вроде бы работает, но будет ли работать вода как в эмуляторе (вода в эмуляторе обведена голубым квадратом)? Меряю мультиметром сопротивление воды - показывает больше мегаома...
Картинка и код:
if(min == 0 && sec <= 6)
{ // включаем порт помпы на 5 сек каждую минуту.
//подаем сигнал
DDRB.4 = 1; // режим 4го пина "выход"
PORTB.4 = 1;// 1 на выходе 4го пина
PINB.3 = 0; // режим 3го пина "вход"
PORTB.3 = 0; // 0 на выходе 3го пина
delay_ms(1); //ждем 1 мсек; возможно не нужно
if(PINB.3) //получен сигнал! отключаем замер
{
PORTB.2 = sec < 6; //поливаем с пина 3
DDRB.3 = 0; // пин 3 в режиме "вход"
PORTB.4 = 0; //напруга с 4го пина отключена
DDRB.4 = 0; //режим 4го пина "вход"
}else { //нет сигнала на приеме пин 3! пищим пищалкой
PORTB.4 = sec < 2; //напруга с 4го пина
DDRB.4 = sec < 2; //режим 4го пина "выход"
}
}
Пояснение к картинке: в первом случае "сенсор" опущен в "воду" и включается помпа на PORTB.2; во втором случае "воды" нет - джампер разомкнут и включается баззер на 1 секунду ( DDRB.4 = sec < 2)
Раздел: Песочница или Вопрос-Ответ