Задать вопрос
  • Как объединить третий скейтч в один на Arduino?

    @Androiff Автор вопроса
    mordo445, Хорошо , отключу питание , напишу как отреагировал скейтч .
    Написано
  • Как объединить третий скейтч в один на Arduino?

    @Androiff Автор вопроса
    mordo445, Хорошо , попробую. Все равно , разрывать провод "+" или "-" на питании синтезатора ? Если все будет исправно работать , при принудительном отключении питания синтезатора, прога должна перестать виснуть и на 11 пине появится программно управляющее питание ?
    Написано
  • Как объединить третий скейтч в один на Arduino?

    @Androiff Автор вопроса
    Может , есть более удачный способ программно включать и отключать устройства для временной передачи в эфире сигнала частоты , но , имея малый опыт в программировании , лучше не придумал .
    Написано
  • Как объединить третий скейтч в один на Arduino?

    @Androiff Автор вопроса
    mordo445,
    Здравствуйте , Схематехника такая , к 11 пин подключен транзисторный ключ , который программно открывает и закрывает его скейтчем millis. Сам ключ разрывает цепь общего. " - " идущего на все потребители ( экран oled. синтезатор частот si5351 , энкодер , усилитель сигнала частот ) кроме самого МК Ардуино , он постоянно запитан . Принцип работы устройства такой : Оставил устройство , нажал на кнопочку и ушел , устройство программно , выдержав заданное время включается , выходит в эфир на выставленный сигнал частот и сам выключается. Нажатие на кнопку подает питание только на сам МК , который и будет всем управлять . По другому пока не пробовал решить проблему , пока не знаю куда копать , или в железе искать изъян или в проге ...
    Если я что то по схеме не правильно сделал , дайте знать .
    Написано
  • Как объединить третий скейтч в один на Arduino?

    @Androiff Автор вопроса
    Вот третий скейтч .
    const int ledPin = 11;
    int State = LOW;
    //unsigned long previousMillis;
    long previousMillis = 0;
    const long interval_1 = 10000;
    const long interval_2 = 30000;
    const long interval_3 = 50000;
    
    void setup() {
      pinMode(ledPin, OUTPUT);
      //Serial.begin(9600);
    }
    
    void loop() {
        unsigned long currentMillis = millis ( );
      if ( State == LOW ) {
      if ( currentMillis - previousMillis >= interval_1 ) {
         previousMillis = currentMillis;      
         State = HIGH;                               //потушили
         Serial.print(" Go to High ");
        Serial.println(currentMillis);
         digitalWrite (ledPin, State );
       }}
    
      if ( State == HIGH ) {
      if ( currentMillis - previousMillis >= interval_2 ) {
         previousMillis = currentMillis;              
         State = LOW;                                //включили
         Serial.print(" Go to Low ");
         Serial.println(currentMillis);
         digitalWrite ( ledPin, State );
       }}
       
      if ( State == LOW ) {
      if ( currentMillis - previousMillis >= interval_3 ) {
         previousMillis = currentMillis;      
         State = HIGH;                               //потушили
        Serial.print(" Go to High ");
        Serial.println(currentMillis);
         digitalWrite (ledPin, State );
      } 
     } 
    }
    Написано