Простой генератор прямоугольных импульсов до 1 МГц на Arduino своими руками


В этой статье мы рассмотрим простой генератор прямоугольных импульсов (square-wave generator) с частотой до 1 МГц на основе платы Arduino. Генератор будет использовать библиотеку TimerOne, позволяющую формировать сигнал широтно-импульсной модуляции (ШИМ) на контакте 9 платы Arduino.

Внешний вид простого генератора прямоугольных импульсов до 1 МГц на Arduino

Также на нашем сайте вы можете посмотреть проекты генераторов сигналов (в том числе и прямоугольных импульсов) на основе платы Arduino и DDS модуля и на основе просто платы Arduino, без использования каких-либо дополнительных устройств. Также задачу формирования подобных импульсов можно решить с помощью генератора на Arduino и модуле SI5351.

Необходимые компоненты

  1. Плата Arduino Nano (купить на AliExpress).
  2. ЖК дисплей 16х2 (купить на AliExpress).
  3. Потенциометр 10 кОм (купить на AliExpress).
  4. Подтягивающие резисторы – 3 шт. (купить на AliExpress).
  5. Кнопка – 3 шт.

Общие принципы работы проекта

Рассматриваемый в данной статье простой генератор прямоугольных импульсов будет использовать библиотеку TimerOne, которая позволяет формировать ШИМ сигнал на контакте 9 платы Arduino с частотой от 5 Гц до 1 МГц с настраиваемой скважностью (коэффициентом заполнения, duty cycle) от 0 до 100%. Скачать библиотеку TimerOne можно по следующей ссылке.

Генератор состоит из небольшого числа компонентов: платы Arduino Nano, ЖК дисплея, 3-х подтягивающих резисторов и 3-х кнопок.

В генераторе можно изменять период (частоту) повторения импульсов с помощью кнопок, подключенных к контактам 6 и 7 платы Arduino. С помощью кнопки, подключенной к контакту 13, можно изменять скважность импульсов. Длительность импульсов и скважность будут отображаться в первой строке ЖК дисплея, а частота – во второй строке ЖК дисплея. Минимальный шаг для настройки периода повторения импульсов составляет 1 мкс, поэтому частота импульсов будет изменяться также дискретно, например, периоду 1 мкс будет соответствовать частота 1 МГц, периоду 2 мкс – частота 500 кГц, периоду 3 мкс – частота 333.333 Гц и т.д. То есть по мере уменьшения частоты увеличивается плавность ее настройки. Конечно, это не очень практично для высоких частот, но это вынужденная плата за простоту устройства. Более продвинутый генератор можно собрать на основе использования DDS модуля, но это уже будет значительно более сложное устройство.

Для проверки работы генератора автор проекта использовал простой одноканальный осциллограф (который также можно собрать на основе платы Arduino). Для удобства работы с генератором он был помещен в небольшой корпус.

Размещение компонентов генератора в небольшом корпусе

Схема проекта

Схема простого генератора прямоугольных импульсов на основе платы Arduino представлена на следующем рисунке.

Схема простого генератора прямоугольных импульсов на основе платы ArduinoИсходный код программы (скетча)

Комментарии к коду программы частично переведены.

Видео, демонстрирующее работу генератора

Источник статьи

(Проголосуй первым!)
Загрузка...
12 729 просмотров

Комментарии

Простой генератор прямоугольных импульсов до 1 МГц на Arduino своими руками — 6 комментариев

  1. Добрый день. В общем работает. На выход лезет кая- то одногерцовая пульсация. даже индикатор подмаргивает. Во всем диапазоне так.

    • Доброе утро. Я рад что у вас хотя бы этот проект генератора заработал. У автора проекта на видео вроде не видно никакой одногерцовой пульсации

      • сначала думал, что китайская ардуинка чудит. Но перезалил проект генератора с синусом- сигнал ровный, ничего лишнего. Здесь шаг регулировки на ВЧ огромный, не подходит.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *