Цифровой генератор на ATMEGA8

Автор: Soir. Опубліковано в Вимірювання

general view

Еще один простой цифровой генератор, который позволяет генерировать:

- сигналы разной формы с частотой до 64999 Гц;

- прямоугольные импульсы до 8 МГц

- видеосигнал, вертикальные полосы градации серого.

   Не претендую на авторство этого проекта, в интернете много вариантов такого генератора, первоисточник мне установить не удалось. За основу взял эту разработку. Переделал схему и прошивку под ATMEGA8 (такие переработки тоже попадались), переработал под свои потребности. Генератор собран и испытан. Если по ходу эксплуатации буду что-то дорабатывать, то все обновления будут выкладываться в этой статье.

 

Описание генератора.

         1. Генерирование сигналов.

– синусоида, диапазон                             1 ÷ 64 999 Гц;

– прямоугольные импульсы, диапазон       1 ÷ 64 999 Гц;

– треугольные  импульсы, диапазон          1 ÷ 64 999 Гц;

– прямая пила, диапазон                          1 ÷ 64 999 Гц;

– обратная пила, диапазон                       1 ÷ 64 999 Гц;

– высокочастотные прямоугольные

импульсы.                                               Ступенчато от 1кГц до 8МГц.

– шум;

- видеосигнал вертикальных полос градации серого и звуковой сигнал 1 кГц.

2. Установка.

В основном режиме при остановленном генераторе кнопками UP/DOWN выбор формы сигнала.

Кнопками LEFT/RIGHT перемещение между разрядами частоты. Устанавливаемый разряд мигает. При установке тысяч и десятков тысяч существуют программные ограничения, чтобы максимальная частота не превысила 64 999 Гц.

При установке частоты высокочастотных импульсов частота устанавливается ступенчато из ряда: 8000, 4000, 2000, 1000, 500, 400, 250, 200, 125, 100, 50, 40, 25, 16, 10, 8, 5, 4, 2, 1 кГц.

Запуск/остановка генератора производится кнопкой START.

При запущенном генераторе можно изменять частоту только для высокочастотного генератора. Для изменения других параметров следует сначала остановить генератор.

Выбранные настройки записываются в энергонезависимую память.

Схема генератора:

Schema

Осциллограммы работы генератора:

sinevideosquare

sawrev sawtriangle

noisePWM

 

 

Телевизионный сигнал вертикальные полосы:

TV

В архиве прошивка для микроконтроллера, FUSE, проект в Proteus (почти схема), описание, файл LCDALPHA.DLL для корректного отображения кириллицы при симуляции в Proteus.

---

24.08.2015

Добавил схему, по которой велось изготовление прибора, и печатную плату.

Печатная плата состоит из двух частей - основная и кнопки управления.

Печатаная плата разрабатывалась по имеющиеся в наличии детали и под условия монтажа в конкретный корпус, в котором уже установлен источник стабилизированного питания +-9V.

---

21.08.2016

Изменения в прошивке и схеме. Теперь для изменения параметров генератора (форма, частота сигнала...) вручную останавливать генератор нет необходимости. Если изменение параметров производится при запущенном генераторе, то на время нажатой кнопки генерация прекращается, а после отпускания кнопки автоматически возобновляется.
 Это повлекло за собой небольшие изменения в схеме и индикации.

 

27.09.2018

Еще доработана прошивка. Добавлен выход сигнала ШИМ. Частота ШИМ от 1 Гц до 1 МГц. Ширина импульсов регулируется от 1 до 99%. Весь спектр частот разбит на 6 диапазонов в каждом диапазоне 10 фиксированных частот. В верхнем диапазоне регулировка ширины импульсов неравномерная, связано с возможностями МК.

Изменений в схеме нет. Выход сигнала ШИМ производится на выход HS.

Также устранены мелкие баги.

Обновленная прошивка здесь.

 

Для обсуждения материалов статьи создана тема на форуме. Все вопросы туда.