Перейти к содержанию

Alex-DJ

Members
  • Постов

    42
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные Alex-DJ

  1. Пару дней назад решил начать изучать ардуино, ибо всю свою сознательную жизнь я собирал устройства на мелкой логике. Но тут вот приспичило. А именно мне нужно как то осуществить такой проект. Есть для начала 2 сдвиговых регистра 74НС595 и есть ардуино уно р3

    Собрал схему на рисунке

    Shift-Register-74HC595_bb.png.5cab5720e2d07f1e01deb26a9b4c87f3.png

    Вот скетч к ней

    int dataPin  = 9;   //Пин подключен к DS входу 74HC595
    int latchPin = 10;  //Пин подключен к ST_CP входу 74HC595
    int clockPin = 11;  //Пин подключен к SH_CP входу 74HC595
    
    void setup() {
      //устанавливаем режим OUTPUT
      pinMode(latchPin, OUTPUT);
      pinMode(clockPin, OUTPUT);
      pinMode(dataPin, OUTPUT);
    
      digitalWrite(latchPin, LOW);                        // устанавливаем синхронизацию "защелки" на LOW
      shiftOut(dataPin, clockPin, LSBFIRST, B01001100);   // передаем последовательно на dataPin
      digitalWrite(latchPin, HIGH);                       //"защелкиваем" регистр, тем самым устанавливая значения на выходах
    }
     
    void loop() {
    
    }

    На светодиодах высветилась комбинация 01001100. Ура, моя первая схема на микроконтроллере работает.
    Далее дополнил схему ещё одним регистром сдвига, и добавил ещё 8 светодиодов.

    Shift-Register-74HC595_02_bb.jpg.cda5d505e4a509e7b58c36a94fb9cc3b.jpg

     

    И его скетч

    int dataPin  = 9;   //Пин подключен к DS входу 74HC595
    int latchPin = 10;  //Пин подключен к ST_CP входу 74HC595
    int clockPin = 11;  //Пин подключен к SH_CP входу 74HC595
    
    void setup() {
      //устанавливаем режим OUTPUT
      pinMode(latchPin, OUTPUT);
      pinMode(clockPin, OUTPUT);
      pinMode(dataPin, OUTPUT);
    
    
      digitalWrite(latchPin, LOW);                        // устанавливаем синхронизацию "защелки" на LOW
      // начинаем "продавливать" данные по цепочке регистров, начиная с последнего
      shiftOut(dataPin, clockPin, LSBFIRST, B01001100);   // передаем последовательно на dataPin - в первом регистре значение B01001100
      shiftOut(dataPin, clockPin, LSBFIRST, B10000111);   // "продавливаем" данные в следующий регистр - в первом регистре B10000111, во втором - B01001100
      // и т.д. по количеству регистров
      digitalWrite(latchPin, HIGH);                       //"защелкиваем" регистр, тем самым устанавливая значения на выходах
    }
     
    void loop() {
    }


    Теперь на 16 светодиодах 01001100 10000111
    Но мне надо чтоб был массив из десятка или двух вот таких двух байтовых комбинаций, и чтоб можно было каждую комбинацию выводить на светодиоды нажатием кнопки. То есть нажал кнопку, высветилась первая двухбайтовая комбинация на этих 16 светодиодах, нажал ещё раз, высветилась следующая , и так далее по порядку. Скетч подключения кнопки тоже нашёл интернете

    // пины подключенных устройств
    int switchPin = 8;
    int ledPin = 11;
    
    // переменные для хранения состояния кнопки и светодиода
    boolean lastButton = LOW;
    boolean currentButton = LOW;
    boolean ledOn = false;
    
    void setup() {
       pinMode(switchPin, INPUT);
       pinMode(ledPin, OUTPUT);
    }
    
    // функция для подавления дребезга
    boolean debounse(boolean last) {
       boolean current = digitalRead(switchPin);
       if(last != current) {
          delay(5);
          current = digitalRead(switchPin);
       }
       return current;
    }
    
    void loop() {
       currentButton = debounse(lastButton);
       if(lastButton == LOW && currentButton == HIGH) {
          ledOn = !ledOn;
       }
       lastButton = currentButton;
       digitalWrite(ledPin, ledOn);
    }

    Вот теперь пока как это всё связать не могу понять, да и в интернете аналогичного не нашёл. Есть всякие мигалки и бегающие лгоньки , но там всё по циклу повторяется. Знатоки ардуино помогите мне пожалуйста в освоении этой науки. Научусь азам дальше проще наверное будет. Заранее спасибо.

  2. Формулы для расчёта частот подобных генераторов чисто эмпирические, то есть, определены экспериментально. Вот некоторые экспериментальные формулы:

    http://www.chipinfo.ru/literature/radio/200001/p44_45.html

    честно говоря я там ничего не понял :unsure:

  3. Вот моя схема:

    Скажите почему на выходе 3 таймера,всё-равно импульсы такие же как и на выходе 6 мультивибратора?

    датащит однако курить лучше надо

    запуск 555 осуществляется кратковременной подачей импульса отрицательной полярности ниже 1/3пит на вывод 2

    в моей схеме это реализовано на R4,C3,R6

    и что мне делать с моей схемой,чтоб она работала?

  4. Вот моя схема:

    post-137720-0-42660700-1306119945_thumb.jpg

    Скажите почему на выходе 3 таймера,всё-равно импульсы такие же как и на выходе 6 мультивибратора? Если отключить выход 2 таймера и просто коснутся его пальцем то запускается нормально и даёт короткий импульс,а мультивибратором управляться никак не хочет.

  5. Первый таймер каждые 7 секунд запускает второй таймер с необходимым интервалом.

    Пробовал,не получается,на выходе второго генератора импульсы такие же как и первого.Скорее это от того что не выполняется правило что запускающий импульс должен быть не больше 2/3 импульсов второго.Есть где либо похожие схемы,что-то не могу найти?

  6. Дааа,более злобного форума я не встречал,больше я сюда ни ногой.Админы удалите мой профиль пожалуйста.

    oldmao ,

    огромное спасибо за помощь,благодаря вашим советам собрал два усилка на 157ул1 и NE5532

  7. mil_alex несколько ваших ссылок:

    к микросхеме NE5532 никакого отношения не имеет,там на 157уд2

    Полоса частот 40...10000Hz

    Error 404 - Not Found

    Sorry, but you are looking for something that isn't here.

    Остальное даже и смотреть не стал.

  8. Фото схемы выложил бы но снимать сейчас нечем,супруга с дочкой на дачу умотали и фотоаппарат забрали,а мобильник у меня без камеры.На днях сделаю выложу,а пока охота с буржуйской схемкой поковыряться :rolleyes:

  9. .Нашёл такую схему,для микрофона пойдёт?
    Единственное, что в этой схеме хорошо - так это питание правильно организовано. А инвертирующий усилитель со входным сопротивлением 51 кОм и Ку=4 - это ни разу не микрофонный усилитель.

    Вот берём схему finn32 (мне просто лень рисовать), выкидываем R3 C3 C2 R4 за ненадобностью (NE5532 имеет встроенную коррекцию).

    УМ-53-У-1.1 имеет трансформатор на выходе, если память мне не врёт? И рассчитан на входное сопротивление микрофонного усилителя порядка 10 кОм? Поправьте, если я не прав, конкретно с этой моделью дела не имел

    С этим усилком будет использоваться динамический микрофон с сопротивлением 600 ом.

  10. oldmao, а не подскажите проверенную простенькую схемку на NE5532,поиском ничего нормального найти не получается,а эксперементировать уже понемногу надоедает.Нашёл такую схему,для микрофона пойдёт?

    post-137720-0-28602200-1302192243_thumb.jpg

  11. Спаял я усилитель на К157УЛ1 но при таком коэффициенте усиления шумов многовато всё-таки,теперь хочу попробовать на NE5532 собрать,может результаты лучше будут.Поскажите пожалуйста схемку на NE5532.

  12. Обошёл сегодня весь город и всех друзей,и у одного знакомого на какой-то плате увидел NE5532 ну и естественно выпросил её у него.Теперь дело за малым,найти схемку...что посоветуете?

×
×
  • Создать...