Самодельный осциллограф на AVR

Характеристики

Частота измерения: 10 Гц — 7.7 кГц
Макс. входное напряжение: 24В AC / 30В DC
Напряжение питания: 12В DC
Разрешение экрана: 128×64 пикселей
Область экрана осциллограммы: 100×64 пикселей
Информационная область экрана: 28×64 пикселей
Режим триггера: автоматический

Введение

Однажды, просматривая различные интернет сайты по электронике, я наткнулся на очень любопытный проект осциллографа, который был спроектирован с использованием МК PIC18F2550 и графического LCD с контроллером KS0108. Это был веб-сайт Steven Cholewiak. Это была хорошая схема и я решил разработать свой проект осциллографа и использование языка С, на котором я программировал последние года, вместо ассемблера. В качестве среды разработки я использовал WinAVR, которая основывается на open source AVR-GNU компиляторе и прекрасно работает с AVR Studio 4. Графическую библиотеку я разработал сам, специально для данного проекта. Если вы захотите ее использовать для каких-то других проектов, то ее необходимо переделывать. При измерении прямоугольного сигнала, максимальная частота, при которой вы увидите хорошую осциллограмму составляет около 5 кГц. Для других форм сигналов (синусоида или треугольный сигнал) максимальная частота составляет около 1 кГц.

Принципиальная схема AVR-осциллографа приведена на картинке ниже (нажмите для увеличения):

Напряжение питания схемы составляет 12 вольт постоянного тока. Из этого напряжения, в дальнейшем получается ещё 2 напряжения: +8.2В для IC1 и +5В для IC2, IC3. Устройство может измерять входное напряжение от +2.5В до -2.5В или от 0 до +5В, зависящее от позиции переключателя S1 (выбор типа входного тока: постоянный или переменный). При использовании пробника 1:10, входное напряжение соответственно может быть увеличено в 10 раз. Кроме того, переключателем S2, можно установить дополнительно деление напряжения на 2.

Прошивка ATmega32

Файл прошивки: AVR_oscilloscope.hex, при выборе фьюзов необходимо указать использование внешнего кварца. После, необходимо обязательно отключить JTAG интерфейс, если этого не сделать, то на осциллографе будет отображаться экран инициализации, а после он будет уходить в перезагрузку.

Настройка

Для настройки прибора нужно выполнить всего 2 вещи: настроить контрастность LCD при помощи подстроечного резистора Р2 и выставить центр осциллограммы при помощи подстроечного резистора Р1.

Использование

Вы можете перемещать луч осциллограммы вверх или вниз путем нажатия кнопок S8 и S4. Один квадрат на экране, соответствует 1В.
При помощи кнопок S7 и S3 можно увеличивать или уменьшать частоту измерений. Минимальная частота формы сигнала, которая может быть отображена на LCD составляет 460Гц. Если необходимо посмотреть сигнал с более низкой частотой, например 30Гц, то необходимо нажать S7 для сжатия осциллограммы или S3 для растяжения.
В осциллографе используется автоматический режим триггера. Это означает, что если входной сигнал повторяющийся (к примеру треугольник) то триггер работает хорошо. Но если, форма сигнала постоянно меняется (к примеру какая-то последовательность данных), то для фиксации изображения необходимо нажать кнопку S6. Повторное нажатие S6 возвращает в нормальный режим.

Видео работы осциллографа

Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот

IC1
Операционный усилительLM3581
IC2
LCD-дисплейDEM128064A1
128×64, контроллер KS0108IC3
МК AVR 8-битATmega321
IC4
Линейный регуляторLM78051
D1
Стабилитрон1N4738A1
8.2ВD2
Выпрямительный диод1N40071
C1
Конденсатор470 нФ1
C2
Конденсатор27 пФ1
C3
Электролитический конденсатор22 мкФ 16 В1
C4, C7, C9
Конденсатор100 нФ3
C5, C6
Конденсатор22 пФ2
C8
Электролитический конденсатор100 мкФ 25 В1
R1, R2, R4
Резистор1 МОм3
R3, R5
Резистор390 кОм2
R6
Резистор56 Ом1
R7
Резистор220 Ом1
P1
Подстроечный резистор10 кОм1
P2
Подстроечный резистор22 кОм1
X1
Кварц16 МГц1
S1, S2, S5
Переключатель3
S3, S4, S6-S8
Кнопказамыкающая5
K1
Разъём2 контакта1
Вход сигналаK2
Разъём2 контакта1
ПитаниеДобавить все

Скачать список элементов (PDF)

Оригинал статьи

Прикрепленные файлы:

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

Ваш адрес email не будет опубликован.