Осциллограф своими руками на stm32

Добавил пользователь Валентин П.
Обновлено: 18.09.2024

Привет всем может кто подскажет или поможет, собрал Простой осциллограф STM32F103 (Отладочная плата на STM32F103C8T6) TFT LCD 2.2' SPI (ILI9341) но он без делителя и усилителя по входу. Но сам не соображу какой надо сделать, подскажите за ранние буду благодарен

булат, Спасибо за ответ Булат я только не понял, что означает ,,4,27мегасемпла. а можно взять с 1стр, пост 1, я уже рассматривал 3-й Вариант еще раз спасибо

По моему личному опыту ICL7660 плохо тянут. Напряжение на выходе сильно падает.
Возможно у меня подделка. Но я их больше использовать не буду. Да и частота у них фиксированная 10 кГц. Пульсации больше на такой сравнительно низкой частоте. И бороться с помехами не проще поэтому.

Узкое место 34063 - дроссель. Если его нормально выбрать, то неплохо будет работать.

Ну а шумит, что та, что эта.

Огромное спасибо за ответ Лекс59 а дроссель какой, какой идет на выход или который сидит на 2 ноге надо подбирать

Силовой. Который на 2 ноге. От него зависит и КПД инвертора.
Частоту лучше побольше выбирать.
Я обычно не заморачиваюсь точным подбором дросселя. Если верить калькулятору, то для 20 мА выходного тока (с потолка взял ) нужен около 350 микрогенри.
Я обычно подбираю из того, что есть.
Стоит обратить внимание на параметр Ipk=94 mA по калькулятору. Это максимальный импульсный ток через дроссель.
Частая ошибка (сам тоже спотыкался) - дроссель достаточной индуктивности, но слишком тонким проводом намотанный. И он, кроме того, что греется, еще и садит параметры преобразователя.

Ну а дроссели фильтров - тоже из того, что есть. Там параметры еще шире. Можно даже резистор небольшого сопротивления. Но чуть хуже.

На рисунке показана схема простого осциллографа (пробник) основанного на микроконтроллере STM32F103C. Осциллограф имеет минимальный набор внешних компонентов, прост в сборке. Максимальное входное напряжение (только положительной полярности) 6,6 В и может быть увеличено применением внешнего делителя напряжения. Так АЦП STM32F103C 12 бит, это позволило сделать программный умножитель входного сигнала, без существенный потери качества осциллограммы.

При измерении напряжения более 3,3 В, включается делитель напряжения (вручную или автоматически). Управление осциллографом осуществляется при помощи 4-х кнопок. На экран выводятся показания амплитуды входного сигнала, множитель сигнала, длительность одного деления сетки и курсор синхронизации.

1 кГц

Кнопками UP и WOWN можно поменять длительность развертки, множитель входного сигнала и уровень синхронизации. Режимы настроек меняются кнопкой SET.

При нажатии на кнопку HOLD включается режим остановки осциллограммы, кнопками UP и WOWN можно перемещать по горизонтали осциллограмму. Нажимая на кнопку SET поочередно активируются курсоры измерения напряжения и длительности.

Тест полосы пропускания

Максимальная длительность развертки 100 Гц

Максимальная длительность развертки 100 Гц

100,0 кГц (меандр)

200,0 кГц (меандр)

минимальная длительность развертки

400,0 кГц (меандр)

минимальная длительность развертки

500,0 кГц (меандр)

минимальная длительность развертки

минимальная длительность развертки

минимальная длительность развертки

Комментарии

Добрый день. где mозна поменет adc на analog read. hocetsa. зпустить. на esp32

Ни чего не получится, это несовместимые по коду контроллеры.

сколka я дурак понимаю разница толка в обработке adc. остальное библиотека ардуино

uint8 pin = PA0; на uint8 pin = PB0;//

вход у вас теперь на PB0 а резистор делителя включаем на PB1

дисплей подключаем по схеме

8 bit parallel interface

Port data |D7 |D6 |D5 |D4 |D3 |D2 |D1 |D0 |
Pin stm32 |PA7|PA6|PA5|PA4|PA3|PA2|PA1|PA0|
Control Pins

Control pins |RD |WR |RS |CS |RST|
Pin stm32 |PB4|PB5|PB6|PB7|PB8|

Низкий поклон разработчику за эту вещь . Пробовал перевести его в двухканальный режим , но там DMA да и ADC здесь не так прост. Примеров куча , и они отлично работают но перенести их в ардуино под это ядро пока не выходит. Может есть у кого возможность добавить второй канал ?


Подскажите, вход РА2 обязательно использовать ?

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

Для отправки комментария вам необходимо авторизоваться.

Случайные статьи

Электронная сирена

Электронная сирена имеет семь различных комбинаций звука, которые переключаются автоматически. Время переключения устанавливается резистором R8. Переключателем SA1 можно изменять характер звучания сирены. Сирена включается нажатием SB1 и звучит 5…8 минут в зависимости от емкости и утечки конденсатора С1. Литература РА1998_05Подробнее.

Трех канальный усилитель автомагнитолы

Сигналы левого и правого каналов через резисторы R1 R2 и конденсаторы С3 С5 поступает на входы 2-х каналов микросхемы TDA1555Q которая содержит 4-е усилителя мощности. К выходам усилителя через разделительные конденсаторы подключены 2-е средне-высокочастотные АС. НЧ сигнал получается из каналов от обеих каналов, простым микшированием с помощью резисторов R3 R4 …Подробнее.

EEPROM.put (Arduino)

EEPROM.put() функция записывает данные любого стандартного типа или произвольную структуру в энергонезависимую память EEPROM, иначе говоря если размер данных превышает 1 байт, нужно использовать функцию EEPROM.put(). При записи данных в EEPROM размер которых превышает 1 байт, необходимо корректный расчет адресов по которым будет производится запись, для расчета адресов используется функция sizeof(). Для …Подробнее.

Самодельный патрон для микродрели

Более двадцати лет назад автор стал пользоваться патроном следующей конструкции (см. рисунок). На валу небольшого электродвигателя 1 винтом 2 закреплена втулка 3. Кстати, для ее изготовления не пришлось применять токарный станок, так как достаточно было подобрать отрезок толстостенной металлической или текстолитовой трубки. Главное, чтобы трубка выдерживала нагревание без повреждения. Поскольку …Подробнее.

Как сделать заземление

В этом выпуске: что такое заземление, как сделать заземление в домашних условиях, зачем нужно заземление.Подробнее.

Здравствуйте ! Подскажите пожалуйста, у меня есть конструктор
“ Открытие “ :

с какими функциями можно сделать из него ОСЦИЛЛОГРАФ ? Чтобы ОСЦИЛЛОГРАФ был не простой и не чересчур сложный.
После сборки ОСЦИЛЛОГРАФА буду писать для него программу.

P.S. отладочная плата STM32F4Dyscovery ( микроконтроллер STM32F407VGT6 )

Цифровой осциллограф из конструктора
Здравствуйте ! Подскажите пожалуйста, этого конструктора достаточно будет для того чтобы собрать.

Осциллограф на STM32
Добрый вечер. Решил собрать простенький осциллограф на STM32. Решил что внутренний АЦП медленный и.

Осциллограф на STM32F4-Discovery
Хотел прикупить недорогой китайский usb осцилл, да вот вспомнил что есть дискавери в запасах.

Цифровой осциллограф на LPC1768 LangTiger
Добрый день. Хочу набраться теории и опыта в программировании ARM и Cortex. Для освоения выбрал.

ОСЦИЛЛОГРАФ из конструктора
Здравствуйте ! Подскажите пожалуйста, у меня есть конструктор “ Открытие “ : .


В чём отличия конструктора копирования и конструктора перемещения? Где и как их нужно использовать?
Помогите разобраться в копирующем и перемещающем конструкторах. В чём их существенное отличие и.

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

Чтобы сделать нормальный (но не простой) желательно внешнее АЦП и более серьезный аналоговый обвяз, где задаваться коэффициент усиления входного буффера будет уже аналоговыми ключами (что нибудь типа ADG411 или более современное).

А так. ну можно сделать осцилл, но придется довольствоваться малым входным сопротивлением и маленьким диапазоном по напряжению. От 0 до 1.1В вроде. Ну или делитель поставить, но все равно от 0В, то есть синус +/-5В уже не посмотришь.

Так что - одного конструктора мало. К слову - и программа для осциллографа не тривиальна и несет много всяких интересных закорючек. Но с этим проще: все уже есть готовое.

Я писал как то для дешевого usb осциллографа hantek свою программу, т.к. родная не позволяла ничего вменяемого делать :) На удивление, все оказалось ОЧЕНЬ просто.
У ф4 можно получить частоту дискретизации порядка 10 МГц или даже более, запустив ацп в тройном режиме и слегка подразогнав их. С простой аналоговой частью должно хватить на базовые радиолюбительские потребности.
Но, возможно, лучше смотреть на ф3, т.к. у них ацп в разы быстрее.

А так. ну можно сделать осцилл, но придется довольствоваться малым входным сопротивлением и маленьким диапазоном по напряжению. От 0 до 1.1В вроде. Ну или делитель поставить, но все равно от 0В, то есть синус +/-5В уже не посмотришь.

Этот набор (Открытие :) ) вообще не нужен для самодельного осциллографа.

У ф4 входное напряжение ацп от 0 до 3.3 В.

И почему многие, видя цветной дисплей, сразу же пытаются сделать именно осциллограф. За те же деньги купите себе какой-нить USB-осцилл и получите полосу в десятки мегагерц вместо пары сотен килогерц и трех месяцев мудохания с прогой.
А этот комплект - это даже не конструктор, а набор для тренировки.

Поддерживаю. Из всей той кучи модулей для осциллографа надо только сама дискаверина и дисплей.
Главное - нормльная входная аналоговая часть, которой в этом "открытии" всё равно нет. Равно как её нет ни в каком конструкторе вообще. Но начать можно и без неё - оцифровать сигнал АЦП и просто его отрисовать. В качестве плюшки - прикрутить FFT.

Есть готовый осц от немца (UBeiker), называется Oszi, есть даже FFT.
Правда он для платы F429-Dyscovery, основное (я бы сказал даже единственное) отличие от Вашего конструктора - принципиально другой дисп. На 429 плате есть ещё доп память 8 метров, но в том осциллографе она не используется по-моему (ну LTDC не в счёт).
Поищите и интернете - может где-то завалялся, т.к. его сайт сдох давненько.
Если не найдёте - стукните - выложу куда-нибудь архив 1 метр. Сам проект рабочий, проверял лично.

Я так думаю, основное и принципиальное отличие там даже не в дисплее, а в SDROM, в которую положен видеобуфер :)))

. мало отрисовать массив из АЦП, надо ведь добавить еще и триггер запуска, а так же масштабирование по оси Х.

Я так думаю, основное и принципиальное отличие там даже не в дисплее, а в SDROM, в которую положен видеобуфер :)))

по моему первым можно мерить меиндр до 20мгц синус до 40мгц, у второго синус в 1.5 раза хуже

из конструкторов за 1-2т.р. ничего положительного не выйдет

Ну конечно, сделать даже 40MSPS осц не получится, зато понять какие-то принципы вполне себе можно.
Осциллы вон даже на аврах 16-мегагерцовых делали (например, 2канал Форсаж) и ничего, находили и они свою нишу. Разве что ставили туда АЦП внешний, чтоб мерял поточнее .
Хотя я натыкался на изделия на внутреннем АЦП - погуглите по фразе ADC21. Очень популярная вещь. Эту схему и школьник на макетке соберёт. А её аналог на STM32 вообще конфетка будет.

А к stm32 можно разве что аналоговую часть выдрать с того же NeilScope3 (ОУ можно попроще взять, конечно) и норм будет.

А к stm32 можно разве что аналоговую часть выдрать с того же NeilScope3 (ОУ можно попроще взять, конечно) и норм будет.

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

Но, опять же повторюсь, для осваивания теории внешнего АЦП, плисины и буфера (имею в виду внешний чип) не нужно.

А вот интересно - как подключается дисплей в том конструкторе - FSMC или ногодрыг? Там в комплекте виден какой-то модулёк, похожий на чип памяти, а 100-ногий F407VGT6 не тянет более одного устройства на FSMC. Т.е. либо дисп, либо память, либо костыли с софтовыми nCS.

Осциллограф своими руками

Три рабочие схемы осциллографов — на PIC18F2550, на AVR и цифрового прибора для ПК. Характеристики устройств, печатные платы, необходимые детали, инструкции по сборке своими руками и видео.

Осциллограф на PIC18F2550 своими руками — схема, инструкция по сборке

Осциллограф на PIC18F2550 измеряет среднее, максимальное, минимальное, пиковое напряжения и пересечение нулевого уровня. Осциллограф имеет встроенную функцию триггера, который может быть использован для остановки сигнала для его детального изучения. Масштаб времени для отображения может быть легко изменён функцией changeTimeDivision.

Осциллограф измеряет напряжение в пределах 0–5В, 0–2.5В и 0–1,25. Основным недостатком этого осциллографа является низкая частота дискретизации (~ 60 кГц), а также тот факт, что входы ограничены ограничениями АЦП микроконтроллера. Тем не менее, это очень хороший прибор и первым мы рассмотрим именно его схему.

Схема осциллографа на PIC18F2550

Принципиальная схема осциллографа на PIC18F2550

Исходники и прошивку можно будет скачать ниже. Теперь давайте детальнее остановимся на каждом блоке схемы.

Схема питания осциллографа на PIC18F2550

Напряжение поступает с 9-вольтовой батареи на интегральный стабилизатор напряжения TC1262-5.0V для обеспечения стабильных 5В для питания микроконтроллера и дисплея. На выходе стоит 1мкФ конденсатор.

Схема подключения дисплея

Графический ЖК дисплей AGM1264F с разрешением 128х64 пикселей оснащен встроенными контроллером KS0108. Он имеет светодиодную подсветку и генератор отрицательного напряжения для управления.

Аналоговый вход

Аналоговый вход

Вывод A0 настроен на аналоговый вход. Обратите внимание, что сопротивление источника сигнала влияет на напряжение смещения на аналоговом входе. Максимально рекомендованное сопротивление составляет 2.5 кОм.

Микроконтроллер

Микроконтроллер

RS232 конвертер

RS232

Выводы USART должны быть подсоединены к RS-232 конвертеру для подключения к ПК для обновления прошивки. После этого он может быть отключен.

Необходимые детали для сборки осциллографа на PIC18F2550 и прошивка

Видео, как работает осциллограф на PIC18F2550:

Цифровой осциллограф RS232 для ПК

Рассмотрим простое решение для создания цифрового компьютерного осциллографа. Устройство построено на базе восьмиразрядного процессора PIC12F675.

Схема цифрового осциллографа для компьютера

Ниже представлена структурная схема осциллографа:

Структурная схема осциллографа на базе PIC

Процессор работает на частоте 20 МГц. Микроконтроллер непрерывно измеряет входное напряжение, преобразовывает его и отправляет цифровое значение на последовательный порт компьютера. Скорость передачи данных последовательного порта — 115кБит и, как показано на следующем рисунке, данные сканируются и отправляются с частотой около 7,5 кГц (134 мкс).

Передача данных по RS232

Вот принципиальная схема самого цифрового осциллографа:

Схема цифрового RS232 осциллографа

Основа схемы — микроконтроллер PIC12F675 (микросхема U2), который работает с тактовой частотой 20 МГц кристалла Y1. J1 — стандартный разъем для подключения питания в 9–12 В, которое затем стабилизируется на U1 до 5 В для питания процессора.

При необходимости можно добавить дополнительные входной аттенюатор (сплиттер), или ОУ.

Необходимые радиоэлементы

Программное обеспечение

Для управления на Windows доступна простая программа на Visual Basic. Её можно скачать в архиве ниже.

Программа запускается сразу и ожидает появления данных на последовательном порте COM1. Слева — четыре ползунка, используемые для измерения периода и напряжения сигнала. Затем идут вкл/выкл синхронизации, поля для масштабирования или изменения значений размера выборки.

Монтаж

При сборке можно не делать печатную плату, а смонтировать все в небольшой пластиковой коробке навесным монтажом. Корпус должен иметь отверстия для разъема RS232 переключателя, входного гнезда и гнезда питания.

Прошивку для процессора можно скачать в конце статьи. Биты конфигурации (fuse) в процессе программирования должны быть установлены следующим образом:

Фьюзы

Вот фото готового прототипа цифрового осциллографа:

Фото цифрового осциллографа

Окно программы

Ниже вы можете скачать исходник, прошивку и ПО для Windows.

Осциллограф своими руками на AVR — инструкция по сборке, характеристики

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

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

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

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

Схема осциллографа на AVR

Принципиальная схема AVR-осциллографа приведена ниже:

Схема осциллографа на AVR

Напряжение питания схемы составляет 12 вольт постоянного тока. Из этого напряжения, в дальнейшем получается еще 2 напряжения: +8.2В для IC1 и +5В — для IC2, IC3.

Необходимые радиоэлементы

Прошивка ATmega32 и настройка

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

Установка фьюзов AVR

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

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

Вы можете перемещать луч осциллограммы вверх или вниз путем нажатия кнопок S8 и S4. Один квадрат на экране, соответствует 1В.

При помощи кнопок S7 и S3 можно увеличивать или уменьшать частоту измерений. Минимальная частота формы сигнала, которая может быть отображена на LCD составляет 460 Гц. Если необходимо посмотреть сигнал с более низкой частотой, например, 30 Гц, то необходимо нажать S7 для сжатия осциллограммы или S3 — для растяжения.

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

Печатная плата осциллографа

Фото готового AVR осциллографа:

AVR осциллограф

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

Читайте также: