Звонок громкого боя для шумного помещения

Обсуждаем контроллеры компании Atmel.
Ответить
Открыл глаза
Сообщения: 79
Зарегистрирован: Вс июн 23, 2013 10:36:15
Откуда: г. Москва СВАО

Сообщение Twin20 »

Добрый день. Помогите с кодом. Не могу понять почему flag_key_speker не держит единицу пока второй раз не нажата кнопка спекирфона... (код написан для arduino ide)

Изображение

Код: Выделить всё

int flag_key_speker = 0; // флаг включения кнопки спикерфона
int key_speker = 0; // переменная кнопки спикерфона
int key_handset = 0; // переменная кнопки положенной трубки
int ZVK = 0; //
float NAP = 0;
unsigned long last_press;

void setup() {
  pinMode(PB7, OUTPUT); // инцилизация порта для имитации кнопки для спикерфона
  pinMode(PB6, OUTPUT); // инцилизация порта для на симистерный блок
  pinMode(PB4, INPUT); // инцилизация порта для кнопка спикерфона
  pinMode(PB5, INPUT); // инцилизация порта для кнопка положенной трубки
  pinMode(PA0, INPUT); // инцилизация порта для измерения напряжение с динамика
  Serial.begin(9600); // инцилизация паралельного порта
}
void loop() {

  ZVK = analogRead(PA0); // измерение напряжения с динапика
  key_speker = digitalRead(PB4);// чтение состояние кнопки спекирфона
  key_handset = digitalRead(PB5); // чтение состояние кнопки положенной трубки
  NAP = (ZVK * 3.3) / 4095; // переcчет напряжения

  Serial.println(flag_key_speker);

  // оброботка нажатие кнопки спикерфона
 
     if (key_handset == 1 && key_speker == 1 && flag_key_speker == 0 && millis() - last_press > 200)
    {
      digitalWrite(PB7, 1);
      delay(100);
      digitalWrite(PB7, 0);
      last_press = millis();
      flag_key_speker = 1;
      digitalWrite(PB6, 0);
      last_press = millis();
    }
  Serial.println(flag_key_speker);

      last_press = 0;
     
if (key_handset == 1 && key_speker == 1 && flag_key_speker == 1 && millis() - last_press > 200)
    {
      digitalWrite(PB7, 1);
      delay(100);
      digitalWrite(PB7, 0);
      flag_key_speker = 0;
      last_press = millis();
    }

   Serial.println(flag_key_speker); 
  // оброботка вызовного сигнала с положеннной трубкой

  if (NAP > 1.5 && key_handset == 1 && flag_key_speker == 0)
  {
    digitalWrite(PB6, 1);
  }
  else
  {
    digitalWrite(PB6, 0);
  }
}
Ни кто кроме нас, инженеров.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 39197
Зарегистрирован: Сб сен 13, 2014 16:27:32
Откуда: СпиртоГонск созвездия Омега

Сообщение musor »

а что ета хрень должна делат кроме ка звонить а то на это обычноц кнопки всегда хватало и уборшицы ТетеЛены с хронометром
ZМудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет.и МЧС опаздает
Реклама
Открыл глаза
Сообщения: 79
Зарегистрирован: Вс июн 23, 2013 10:36:15
Откуда: г. Москва СВАО

Сообщение Twin20 »

Это устройство включает звонок громкого боя (220 В) при появлении вывозного сигнала на динамике самого телефона. а также изменил работу кнопки спекирфона.
Ни кто кроме нас, инженеров.
Модератор
Аватара пользователя
Сообщения: 19093
Зарегистрирован: Сб авг 14, 2010 15:05:51
Откуда: г. Озерск, Челябинская обл.

Сообщение Starichok51 »

Twin20 писал(а):спекир
:))) полный писец... :facepalm:
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 15750
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Т.е. выходные цепи запускаются от фонового сигнала переменного тока, снятого с катушки динамика спикерфона?
А на фигвам тогда кнопки?
:roll:
И шо это за модель ардуиньи с 40 выводами на платке?
:?
Реклама
Открыл глаза
Сообщения: 79
Зарегистрирован: Вс июн 23, 2013 10:36:15
Откуда: г. Москва СВАО

Сообщение Twin20 »

Ладно. Всем спасибо за помощь. Сделал по варианту два. Модератору большая просьба удалить тему. Кира счёт ардуино то это stm 32.
Ни кто кроме нас, инженеров.
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2408
Зарегистрирован: Ср фев 23, 2011 12:12:31

Сообщение AndTer »

stm32 в качестве реле? Зря. Надо было сразу пималину ставить с 10 виндой.
Глупый не задает вопросы. Глупый и так все знает.
Друг Кота
Аватара пользователя
Сообщения: 7082
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

СТМ32, и как она в ветке про АВР выросла?
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2408
Зарегистрирован: Ср фев 23, 2011 12:12:31

Сообщение AndTer »

Так автор пишет что пишет в ардуине на стм)
Глупый не задает вопросы. Глупый и так все знает.
Ответить

Вернуться в «AVR»