Осциллограф на микроконтроллере ATMEGA32А

Поскольку интегрированный в микроконтроллер АЦП довольно медленный, было принято решение использовать внешний скоростной АЦП AD9280. В качестве дисплея используется WG12864A (128*64). Прошивка написана на С в компиляторе MikroC pro for AVR 5.60.

Характеристики осциллографа:

- Входное сопротивление 100 кОм;

- Максимальная частота дискретизации 9 МГц;

- Минимальная частота 25 Гц;

- Максимальная частота 500 кГц;

- Минимальное напряжение +/- 0,25 В;

- Максимальное напряжение +/- 25 В;

- Напряжение питания 9 В;

Осциллограф на микроконтроллере ATMEGA32А

  С правой стороны на экране отображается амплитудное значение напряжения, среднеквадратическое значение напряжения, частота в кГц, тип синхронизации и делитель. ATMEGA32 работает на повышенной частоте 26,601712 МГц. Кварц выпаял с денди. Для стабильной работы ATMEGA32 питается повышенным напряжением 5,4 В. Для этого в минусовой вывод стабилизатора 7805 впаяно 2 диода Шоттки с падением на каждом 0,2 В. Если ATMEGA32 не будет стабильно работать на 26,601712 МГц, можно поставить кварц на 20 МГц или поставить внешний генератор на 32 МГц. При частотах, отличных от 26,601712 МГц необходимо изменить частоту в настройках проекта и подобрать другие константы для подсчета частоты. Стабилизатор 7805 необходимо поставить на радиатор. В качестве входного разъема используется ззвуковой 3,5 мм. Микросхема ICL7660 делает отрицательное напряжение -5,4 В, которое необходимо для питания ОУ и для смещения переменного сигнала в плюсовой диапазон. В качестве ОУ я использовал LM358, питал его напряжением 6,5 В от стабилитрона. LM358 сильно искажает сигнал на частотах выше 20 кГц. Прямоугольные импульсы на высоких частотах можно увидеть на фото.

Осциллограф на микроконтроллере ATMEGA32А

 ОУ необходимо использовать с частотой 10 МГц. Возможно, подойдет lm833. Если ОУ будет rail-to-rail, то можно питать его от 5,4 V. Например, MCP6H92.  

Диапазоны переключаются трехпозиционным переключателем -  1:1 (25 V); 1:4 (10 V); 1:10 (2,5 V).

 

Для управления осциллографом используется 5 клавиш. Клавиши вверх/вниз используются для установления развертки по амплитуде. Клавиши влево/вправо предназначены для изменения частоты виборок АЦП. Центральная клавиша используется для входа в меню. В первом пункте выбирается тип отображения осциллограммы: по точкам или по линиям. Во втором пункте выставляется делитель в зависимости от переключателя диапазонов напряжения. Он необходим для правильного отображения напряжения. В третьем пункте выбирается тип синхронизации: по максимуму, по спаду фронта, переход через ноль.

Осциллограф на микроконтроллере ATMEGA32А

Для настройки осциллографа необходимо выставить нужную контрастность дисплея переменным резистором и выставить линию на ноль (без сигнала на входе), предварительно увеличив рамах по амплитуде. На фото осциллограф со старой разводкой.

 

Осциллограф на микроконтроллере ATMEGA32А

 

Осциллограф на микроконтроллере ATMEGA32А

 

Осциллограф на микроконтроллере ATMEGA32А

 

Осциллограф на микроконтроллере ATMEGA32А

 

Осциллограф на микроконтроллере ATMEGA32А

 

Осциллограф на микроконтроллере ATMEGA32А
Осциллограф на микроконтроллере ATMEGA32А
 
 
Схема и печатка обновленная версии V2

 
Осциллограф на микроконтроллере ATMEGA32А

Осциллограф на микроконтроллере ATMEGA32А

Схема и печатки обновления V3

 

Осциллограф на микроконтроллере ATMEGA32А

Осциллограф на микроконтроллере ATMEGA32А

Осциллограф на микроконтроллере ATMEGA32А

Осциллограф на микроконтроллере ATMEGA32А

Осциллограф на микроконтроллере ATMEGA32А

Осциллограф на микроконтроллере ATMEGA32А
 
Осциллограф на микроконтроллере ATMEGA32А

 

В качестве источника тактовых импульсов используется кварцевый генератор 32МГц (разгон atmega32 в 2 раза). Не забудьте установить соответствующие фузы. Балансировочные конденсаторы (С28, С29) возможно придется подбирать; устанавливать не обязательною. Максимальное входное напряжение увеличено до 40В (3 диапазона: 2,5В; 10В; 40В). Установлены ОУ AD8033: 80МГц, rail-to-rail выход, вход на полевых транзисторах. Диапазон частот: 30Гц-1МГц. Максимальная частота дискретизации 32МГц/3=10,7 МГц; Для питания АЦП и ОУ установлены LC фильтры. На входе АЦП установлен RC фильтр. Компилятор MikroC pro for AVR 6.00.

 

СкачатьV1 [291,6 Kb] (cкачиваний: 2066) прошивку, исходник, печатку, схему 

СкачатьV2 [364,2 Kb] (cкачиваний: 1896) прошивку под разные кварцы, исходник, печатку, схему

Скачать V3 [1,94 Mb] (cкачиваний: 2230) прошивку, исходник, печатку, схему

Скачать [51,77 Kb] (cкачиваний: 1105) печатную плату от syava7



   
radiba # 61
 
 
Выводы D/I, R/W, E, CS1, CS2, RST можно переназначить програмно. Для остальных поменять на плате разводку.


   
Witek_80 # 62
 
 
если не трудно можно поменять есть индикатор и плата собрана

если не трудно можно поменять есть индикатор и плата собрана


   
fidelis18 # 63
 
 
подскажите чайнику, щуп здесь какой используется


   
radiba # 64
 
 
Я использовал самодельный щуп сделанный из экранированного кабеля


   
rusl74 # 65
 
 
Спасибо автору за осциллограф. Собрал V3, можно сказать заработал сразу если не считать переделку дорожек под другую распиновку кварца. Еще заметил несоответствие диода D1. На фото не соответствует как в схеме и печатке. В общем я доволен. )) Еще раз спасибо!!!!


   
Skif1177 # 66
 
 
Подскажите чайнику фузы в AvrStudio если используется кварцевый генератор 32МГц.
Спасибо


   
sashashemelev1 # 67
 
 
Уважаемый автор. Не могли бы Вы переделать прошивку под ATMEGA 128. С Уважением.


   
radiba # 68
 
 
Skif1177, с AvrStudio не знаком. Установите соответствующие галочки как в AVRDUDE. Учитывайте возможную инверсию. Или установите fuse в HEX формате H:C9 L:20.

sashashemelev1, перекомпилировать под ATMEGA128 возможно. Работоспособность не гарантирую, нужно тестировать.


   
sashashemelev1 # 69
 
 
НА АТМЕГА 128 ОБЕЩАЮ СОЬРАТЬ И ПРОТЕСТИРОВАТЬ ВСЕСТОРОННЕ.


   
radiba # 70
 
 
sashashemelev1, Атмегу128 будете подключать по схеме (без изменений)?


   
igor11 # 71
 
 
Уважаемый автор. Не могли бы Вы выложить fuses под вторую версию для AVRDUDE. Спасибо.


   
radiba # 72
 
 
igor11, fuse как в V1. Советую собрать V3.


   
Алексеевич 71 # 73
 
 
Уважаемый автор. Вот несколько месяцев как собрал ваш прибор, но оживить его мне пока так и не удалось. С AVR контроллером я столкнулся впервые, и более всего я что то сделал не так. При прошивке индикатор не отсоединял, а по моему надо было бы отсоединить. И еще, из за незнания, программу заправил у flash и eeprrom. Скажите, что я сделал не так, и как мне все это исправить?


   
radiba # 74
 
 
Алексеевич 71, если прошиваете atmega32 в осциллографе, отключите дисплей. HEX-файл прошиваете в flash, eeprom прошивать не нужно.


   
syava7 # 75
 
 
Приветствую. Понравился ваш осцилл., решил собрать. Подскажите, я часто смотрю сигналы ампл 20-50 мВ., как этим осциллографом их увидеть?


   
syava7 # 76
 
 
Собрал, запустился сразу. Переделал печатку под смд и размером с дисплей, если интересно, скину. Автору респект, хороший и не дорогой прибор получился.


   
radiba # 77
 
 
syava7, для сигналов с небольшой амплитудой нужно переделать входную часть: уменьшить коэффициент входного делителя, увеличить коэффициент усиления ОУ, уменьшить Vref АЦП


   
mekong # 78
 
 
syava7 мне например будет интересно. В v3 возможно применить обычный кварец на 25mHz? что при этом будет потеряно? Возможна ли замена AD8033 а то у наших барыг его в прайсах нет, брать в инете больно накладно пересылка стоит как сам операционник блин :(


   
conler # 79
 
 
Присоединюсь. Чем еще можно заменить AD8033? В Китае долго, да и пришлют 99% наверняка перемаркер, ведь "левак" в таком случае практически невозможно доказать.


   
conler # 80
 
 
AD8051
AD8055
AD8061
Из этих что подойдет?


   
conler # 81
 
 
Автор даже на почту не желает ответить, печально. Надеюсь он жив и здоров.


   
mekong # 82
 
 
время отпусков.....


   
radiba # 83
 
 
mekong, с обычным кварцем будет потеряна стабильность atmega32 на повышенных частотах(частота дискретизации = частота Atmega32/3). ОУ возможно заменить на аналогичный: частота от 10 МГц, напряжение питания от +/-5В, Rail-to-Rail output, желательно вход на полевых транзисторах и возможность работать при однополярном питании.

conler, AD8055 должен подойти, только питание второго ОУ нужно сделать +/-5.5В, желательно установить защитный диод на вход АЦП от напряжения ниже нуля. Можно применить 1шт AD8056.


   
forfrends # 84
 
 
Добрый день!
а можно вместо указанного дисплея использовать дисплей 12864ZW с процессором ST7920? Если дисплей не подходит, можете изменить прошивку для использования этого дисплея? а то у нас в продаже вообще нет графических дисплеев (только символьные), а заказывать - дорого обходится…


   
mekong # 85
 
 
forfrends
с китая например с Ali не так дорого я отдавал 11$ с доставкой. Сейчас нет наплыва посылок доставляют достаточно быстро 2-3 недели.


   
forfrends # 86
 
 
Цитата: mekong
forfrends
с китая например с Ali не так дорого я отдавал 11$ с доставкой. Сейчас нет наплыва посылок доставляют достаточно быстро 2-3 недели.

Это для меня не подходит… дисплей мне обошелся в 13$ а покупать другой дисплей мне точно не с руки, так как за такие деньги можно купить б/у осциллограф. Лучше заставить работать то что есть.


   
conler # 87
 
 
forfrends
если дорого - не делай


   
Witek_80 # 88
 
 
Добрый день да очень интересно собрать по вашей печатке если не трудно скиньте на почту Witek_80@mail.ru


   
Witek_80 # 89
 
 
ну вот опять тишина на форуме


   
vik2 # 90
 
 
Здравствуйте!Решил собрать это прибор,подбираю пока детали.Есть один вопрос по печатке и по схеме.Никак не могу понять ,как соединены атмега 32 и ад9280.На схеме 5 нога ад9280 идет на 33пин меги,6 нога на 34 пин ну и т.д.С 5-той ноги ад9280 по 12 ногу ее же на 33пин по 40-вой меги сооттветственно.А на плате 5 нога ад9280 идет на 40-вой пин меги ,6 нога на 39 пин и т.д 12 нога ад9280 на 33 пин меги-с точностью наоборот .Так где же правильно?Я думаю на плате правильно,раз по ней делали этот девайс.На схеме наверное перепутаны нумерация выводов меги32 на шине?Поясните пожалуйста ,кто в теме. С Уважением!


Обновления

Сообщения ФорумаОтветов
3D Модели для Авто0
Бакометр 2335
Touch Start-Stop Engine.587
Кодграберр17
Исправляем AVR фьюзы при помощ …109
Бакометр - измеритель остатка…4
IR конструктор на PIC12F62977
Универсальное зарядное устройство103
бaкoмeтр1974
Двунаправленный автомобильный…2
Программатор GENIUS G8401
Светодиодный тахометр34
Индикаторы ГРИ ИН1 - ИН141
Multiprog1
Управляющая программа LED CUB959
Универсальное зарядное устройство9
Изготовлю печатные платы29
Простой автоматический выключа…25