Сколько я занимаюсь электроникой, всегда хотел заиметь генератор сигналов различной формы. Недавно мне понадобилось получить синусоидальный сигнал с помощью цифровых методов, и я решил что сделаю себе хороший генератор! В итоге я сделал простой, но функциональный генератор сигналов который может генерировать: меандр, треугольник, синус, шум и пилообразный сигналы. Максимально генерируемая частота — 60kHz (килогерц). Пока что в настоящей прошивке, частоту можно устанавливать только при генерации меандра, для остальных сигналов можно устанавливать лишь задержку в микросекундах. Основой устройства является AVR микроконтроллер ATtiny2313, сигнал генерируется с помощью 8 битного цифро-аналогового преобразователя (ЦАП), данные о частоте, сигнале или задержки отображаются на ЖК индикаторе 8×2. Вот собственно принципиальная схема:
Для сборки понадобятся детали:
1. Микроконтроллер Attiny2313 — 1шт.
2. ЖК индикатор WH0802 или с HD44780 совместимом — 1шт.
3. Микросхема LM324 — 1шт.
4. Тактовые кнопки без фиксации — 3шт.
5. Резистор 10 кОм — 1шт.
6. Резистор 300 Ом — 1шт.
7. Резистор 2 кОм — 8шт.
8. Резистор 1 кОм — 9шт.
ЦАП собран на резисторах и подключён напрямую к порту B микроконтроллера, сигнал после ЦАПа усиливается с помощью операционного усилителя LM324. ЖК индикатор я применил WH0802 c HD44780 совместимом контроллером, данный ЖКИ имеет 2 строки по 8 знакомест каждая. Существенно применение любого ЖК индикатора с совместимом контроллером с HD44780. Микроконтроллер применить Attiny2313 можно с любыми буквенными индексами, в любых корпусах. Кнопки можно применить любые тактовые, без фиксации. Кнопкой «Выбор» выбирается тип генерируемого сигнала. Кнопками «Плюс» и «Минус» устанавливается частота или задержка. При включении устройства оно сразу начинает генерировать сигнал, по умолчанию это меандр. Напряжение питания: 5 вольт. Вот осциллограммы генерируемых генератором сигналов:
Меандр
Шум
Пила
Синус
Треугольник
Я собрал свой генератор сигналов в пластмассовом корпусе ZIV, вот что получилось:
Первые испытания вместе с самодельным осциллографом:
Схему я собрал на печатной плате сделанной с помощью ЛУТ, рисунок печатной платы в Sprint Layout 4.0 можно найти в файлах к статье. На плате я использовал детали в SMD корпусах, исключение лишь составляет микросхема LM324, она использована в DIP корпусе. Прошивку для устройства я писал в среде BASCOM-AVR исходник прилагается. Также прилагается проект устройства в программе Proteus. Кстати, после прошивки не забудьте установить следующие фьюз биты (для программы SinaProg):
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
---|---|---|---|---|---|---|
U1 | МК AVR 8-бит | ATtiny2313 | 1 | |||
U2 | Операционный усилитель | LM324 | 1 | |||
R1-R8 | Резистор | 2 кОм | 8 | |||
R9-R16, R18 | Резистор | 1 кОм | 9 | |||
R17 | Резистор | 10 кОм | 1 | |||
R19 | Резистор | 300 Ом | 1 | |||
BTN1-BTN3 | Кнопка | Без фиксации | 3 | |||
LCD1 | LCD-дисплей | WH0802 | 1 | HD44780 совместимый | ||