Управляемый делитель частоты

Тема в разделе "Arduino & Shields", создана пользователем incvisitor, 8 дек 2018.

  1. parovoZZ

    parovoZZ Гуру

    Сперва почитать учебник по цифровым устройствам, раздел счетчики. Потом дальше плыть.
     
  2. incvisitor

    incvisitor Нерд

    Форма сигнала не важна. Ладно не пишите больше ничего. С вас толку ноль.Попросил помощи на форуме а тут говорят мол если даш денег продавцу то он тебе,что то продаст.
     
  3. Никто не будет делать вашу работу за вас за просто так. Добро пожаловать в реальность.
     
    parovoZZ нравится это.
  4. parovoZZ

    parovoZZ Гуру

    Ну не, в игры сходи туда, не знаю куда и принеси то, не знаю что, я не играю.
     
  5. parovoZZ

    parovoZZ Гуру

    Обычно такие заказчики, которые оторваны от реальности, посылаются сразу же, ибо работать с ними себе в убыток.
     
  6. DetSimen

    DetSimen Guest

    Тебе больше никто писать не будет, пока ты нам не ответишь на вопрос, как поделить синус или пилу хотя бы на 2. Что в итоге должно получиться? А то мы тут полные ноли, нам интересно.
     
  7. DetSimen

    DetSimen Guest

    Даже я, пока трезвый, судовольствием послушаю.

    hist.jpeg
     
  8. Ему надо поделить меандр, это вполне очевидно.
    По делителю для аналоговых сигналов, вроде синусоиды, нужно указывать модуляцию.
     
    DetSimen нравится это.
  9. DetSimen

    DetSimen Guest

    Боюсь, необремененный знаниями ТС об этом даже не подозревает.
    Но нули тут мы...
     
  10. incvisitor

    incvisitor Нерд

    Нашел библиотеку
    Задав период в настройках.Повесил на 9 пин Countet timer.перевел его в режим измерения частоты. И все на выходе генриться нужная частота.Вот только не понятно зачем тогда нужен делитель от 10...до1000
     
  11. b707

    b707 Гуру

    может вам хоть какую-то простенькую статейку про таймеры МК почитать? чтоб не задавать настолько тупых вопросов, как "мы замедляем МК до 0.1 гц?" :)))
     
  12. incvisitor

    incvisitor Нерд

    Просьба пояснить то,что происходит.Где частота PWM, и как на нее влияет предделитель?
    Замедляет ли работу МК при наличии предделителя?
    Как мне подобрать значение без угадывания для частоты 0.1....20 000 гц?
    какие процессы на уровне структурной схемы происходят(если можете нарисуйте ее).
    Код (C++):

    /*
    prescaler = 1
    topValue = 250
    Frequency =31874 gz

    prescaler = 1
    topValue = 2500
    Frequency =3199 gz

    prescaler = 10
    topValue = 250
    Frequency =3984 gz

    prescaler = 10
    topValue = 2500
    Frequency =400 gz
    */

    void setup() {
      uint8_t prescaler = 10;
      uint16_t topValue = 250;
      pinMode(9, OUTPUT);
      TCCR1A = 0x40;      // Инвертирование пина 9 по сравнению
    TCCR1B = prescaler;//Предделитель на 1
    OCR1A = topValue;   // установить TOP равным topValue
    }

    void loop ( )
    {
    }
     
     
  13. Читайте документацию, сколько раз можно повторять. Не будет никто сидеть и переписывать сюда 15 страниц описания таймера.
     
  14. Ariadna-on-Line

    Ariadna-on-Line Гуру

    С прескалером 1 : Fвых = 8МГц / (topValue +1). С прескалером 10 : Fвых=1МГц / (topValue+1).
    topValue <= 2^16. Вот и считайте нужные topValue. Прескалер - (1, 8, 64, 256, 1024).
     
  15. parovoZZ

    parovoZZ Гуру

    А почитать про режимы работы таймера? Информации в сети - валом.
    Предделитель есть и работает всегда, вне зависимости от того, подключаем мы к его выводам таймеры или нет. Предделитель - это банальный 10-ти разрядный счетчик счетчик.
    В даташите все формулы приведены. Только не понимаю, зачем ШИМу регулировка частоты? Не путаешь с ЧИМ?
     
  16. Да не нужна никакая модуляция от слова совсем. Нужен именно делитель. Делается на любом таймере авр. Лучше на асинхронном, но и любой другой уложится в такие допуски.
     
  17. incvisitor

    incvisitor Нерд

    Я не понимаю что написано в документации. По сути есть 16 bit Timer1 он делиться на 2 восьми битных
    Я задание озвучил в первом посте.Вы писали достаточного одного Мк и ненужно искать микросхемы счетчики для аппаратной реализации. Вы я вижу пересмотрели свое решение.
     
  18. Нет, не делится.
     
  19. incvisitor

    incvisitor Нерд

    Тогда чего прескалер с числом 10 свободно работает если его нет в документации,а только указанные вами?
    2^16 = 65536
    С прескалером 1 : Fвых = 8МГц для Arduino Uno 16 Mgz.
     
  20. parovoZZ

    parovoZZ Гуру

    Для меандра - да, для любого другого сигнала - нет.
    что конкретно не понятно? Что из себя представляет счетчик понимаешь?