Осциллограф на пик контроллере своими руками. Двухканальный USB HID осциллограф на микроконтроллере ATtiny45

Прежде чем приступить к описанию usb осциллограф своими руками на ATtiny45, необходимо отметить, что в конструкции используется только интегрированный АЦП преобразователь микроконтроллера ATmega45 с разрешением 10-бит, и в компьютер данные передаются посредством внедрения программного обеспечения V-USB с использованием драйверов USB HID, общая скорость передачи данных сильно ограничена.

Реальные выборки на обоих каналах до десятка выборок в секунду. Таким образом, это цифровой двухканальный низкоскоростной осциллограф на микроконтроллере.

V-USB является чисто программной реализации низкоскоростного USB протокол для процессоров серии AVR фирмы Atmel. Благодаря этим библиотекам можно с незначительными ограничениями применять USB практически с любым микроконтроллером, без необходимости использования дополнительного специального оборудования. Все библиотеки V-USB распространяются под лицензией GNU GPL v.2.

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

Всю основную работу выполняет запрограммированный микроконтроллер ATtiny45 . Работает он от внутреннего тактового генератора с предделителем с частотой 16,5 МГц. Для связи через интерфейс скоростного USB эта частота необходима, однако, это ведет к ограничению в минимальном напряжении питания, который должен быть выше, чем 4,5 В и, конечно, ниже, чем 5,5 В.

Но, поскольку выводы данных порта USB используют уровень напряжения от 0 до +3,3 В, то необходимо использовать ограничивающие резисторы R2, R3 и стабилитроны D2, D3. Такое решение, конечно, нельзя рекомендовать для коммерческого продукта, но для ознакомления с проблематикой USB и получение простой конструкции для домашнего использования вполне достаточно.

Входные каналы CH1 и CH2 на разъеме J2 блокируются конденсаторами С2 и C3 номиналом 100n в соответствии с требуемой спецификацией внутреннего АЦП. Светодиод D1 служит только для индикации работы и, следовательно, может быть исключен.

Список компонентов:

  • R1 — 270R
  • R2, R3 — 68R
  • R4 — 2k2
  • C1, C2, C3 — 100n
  • D1 — LED 3мм
  • D2, D3 — ZD (3,6 вольт)
  • IO1 — Attiny45-20PU
  • J1 — USB B 90

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

Скомпилированный файл HEX доступен для скачивания в конце статьи, а так же и исходный код на языке C. Установка конфигурации ограничивается выбором использовании внутреннего множителя PLL осциллятора.

Так как приложение использует HID драйвера (Human Interface Device), которые имеются практически в каждой операционной системе, отпадает необходимость в установке дополнительных драйверов.

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

(скачено: 1 273)

http://pandatron.cz/?1138&dvoukanalovy_usb_hid_osciloskop

Уважаемые читатели, Вашему вниманию представляется практическая схема USB осциллографа с частотой дискретизации 48 МГц на основе модуля WoodmanUSB.С принципиальными особенностями подобного осциллографа мы познакомились в предыдущей статье, где рассмотрели аппаратную и программуную реализацию анализатора логического уровня. Принципы построения остаются абсолютно аналогичными, только теперь на вход порта PORTB модуля мы будем подавать оцифрованный сигнал с быстродействующего АЦП.

Схема блока АЦП представлена на рисунке ниже. Итак, что мы здесь видим - это во-первых, собственно сам АЦП - микросхема AD9057 от Analog Devices. Был проведен анализ возможных кандидатов на данную позицию, рассматривались изделия от MAXIM, TI но в итоге был приныт имеено AD9057. Он относительно прост, удовлетворяет требованиям по частоте дискретизации, более менее доступен в продаже. Этот АЦП в продаже попадется в нескольких модификациях, отличающихся максимальной частотой дискретизации. Обозначается она так: AD9057BRS80 - т.е. этот образец может разгоняться до 80 МГц. Они также бывают на 40 и 60 МГц. Соответственно, желательно брать на 60 или 80 чтобы возможности WoodmanUSB зря не пропадали.

Далле обратим внимание на операционный усилитель AD828. Если его под рукой нет, то можно использовать любой другой, это не критично. Главное чтобы этот ОУ уверенно работал от однополярного напряжения и обеспечивал необходимую полосу пропускания (мегагерц этак 50 и более).

Теперь внимательней посмотрим на саму схему. Она очень простая. Как видно здесь использется только один ОУ без применения двупорных схем питания. Однако простота требует жертв. Схему придется настраивать с помощью подстроечных резисторов R1, R2 для установки оптимального режима.

Пару замечаний по схеме. Куча стрелочек с номерами выходящих из AD9057 соответственно должны подключаться к соответствующим выводам модуля WoodmanUSB. Далее, на вход схемы можно подвать напряжение от 0 до +5 В (больше не нужно - схему можно сжечь).

Обратим свое внимание на софт. Я решил для этой статьи оставить "движок" программы из прошлой статьи. Они почти полностью совпадают, за исключением того что теперь на отрисовку идут полноценные 8 бит данных а не 1 как было раньше в анализаторе. Как уже сказал - там ничего принципиально нового нет, поэтому рассматривать код не будем.

Итак, настало время первого запуска. Соединяем блок АЦП с модулем WoodmanUSB, подключаем все это к компьютеру. Для тестового анализа предлагаю использовать генератор прямоугольных импульсов - так проще будет настроить схему. Я использую микроконтроллер из предыдущей статьи. Запускаем программу. С очень большой степенью вероятности Вы должны увидеть нечто вот такое как на рисунке ниже, т.е. нечто весьма далекое от правды.


Чтобы исправить положение, необходимо с помощью подстроечных резисторов добиться оптимального режима работы блока АЦП, путем подбора таких значений сопротивлений, при которых полученная осциллограмма совпадает с входным аналоговым сигналом. По теории сопротивление R1 должно быть порядка 50 КОм, R2 - 10 КОм. Если все настроено верно, то в итоге должны получить вот такую картинку как на рисунке 2. Разумеется, если Вы используете в качестве тестового сигнала контроллер из прошлой статьи. Если у Вас свой источник опорного сигнала - должны увидеть то что подаете.

Вот собственно и все - у Вас на руках вполне работоспособная версия цифрового USB осциллографа с частотой дискретизации 48 МГц. Согласитесь, внушительная цифра. Однако если нет необходимости в промышленной дорогостоящей установке, вполне можно использовать конструкцию, рассмотренную на этой странице.

Что еще необходимо сказать. Вернее, напомнить - данный осциллограф не обечспечивает непрерывной дескритизации! 48-ми мегагерцовый шаг будет обеспечен только в каждых 512 отсчетах внутри буфера данных, прочтенных из модуля, а между пакетами по 512 точек временное расстояние не известно. Поясним на примере. В идеале должно быть следующее: берем отрезок сигнала длительностью 1 сек. Получаем 48 миллионов отсчетов, причем временное расстояние между любыми двумя точками строго равно 1/48*10 6 сек. В связи с особенностями USB шины на таких скоростях мы не можем обеспечить непрерывный поток данных, при котором скорость передачи будет одинаковой для любого момента времени. В шине USB мгновенная скорость сильно "плавает", если такой термин вообще применим. Итого, точную временную синхронизацию можно гарантировать только для пакета данных размером равным размеру контрольной точки USB модуля, в данном случае 512 байт. Другой вопрос что модуль может обеспечить порядка 20000 таких пакетов по 512 байт за одну секунду. Итого, в данном случае мы имеем дело с ~20 тыс. выборок входного сигнала в секунду по 512 байт каждая, причем внутри каждых этих 512 байт времеменное расстояние между отсчетами четко равно 1/48*10 6 сек. Подобные особенности не помешают нам, если мы анализируем переодические или медленно меняющиеся процессы.

Этот простой и дешёвый USB осциллограф был придуман и сделан просто ради развлечения. Давным давно довелось чинить какой-то мутный видеопроцессор, в котором спалили вход вплоть до АЦП. АЦП оказались доступными и недорогими, я купил на всякий случай парочку, один пошёл на замену, а другой остался. Недавно он попался мне на глаза и почитав документацию к нему я решил употребить его для чего-нибудь полезного в хозяйстве. В итоге получился вот такой приборчик. Обошёлся в копейки (ну рублей 1000 примерно), и пару выходных дней. При создании я постарался уменьшить количество деталей до минимума, при сохранении минимально необходимой для осциллографа функциональности. Сначала я решил, что получился какой-то уж больно несерьёзный аппарат, однако, сейчас я им постоянно пользуюсь, потому что он оказался весьма удобным - места на столе не занимает, легко помещается в карман (он размером с пачку сигарет) и обладает вполне приличными характеристиками:

Максимальная частота дискретизации - 6 МГц;
- Полоса пропускания входного усилителя - 0-16 МГц;
- Входной делитель - от 0.01 В/дел до 10 В/дел;
- Входное сопротивление - 1 МОм;
- Разрешение - 8 бит.

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

Кнопка S2 - это часть железа нужного для бутлоадера. Если при подключении осциллографа к USB держать её нажатой, то PIC заработает в режиме бутлоадера и можно будет обновить прошивку осциллографа при помощи соответствующей утилиты.

В качестве АЦП (IC3) была использована "телевизионная" микросхема - TDA8708A . Она вполне доступна во всяких "Чип и Дип"ах и прочих местах добычи деталей. На самом деле это не только АЦП для видеосигнала, но и коммутатор входов, выравниватель и ограничитель уровней белого - чёрного и т.д. Но все эти прелести в данной конструкции не используются. АЦП весьма шустр - частота дискретизации - 30 МГц. В схеме он работает на тактовой частоте 12 МГц - быстрее не нужно, потому что PIC18F2550 просто не сможет быстрее считывать данные. А чем выше частота - тем больше потребление АЦП. Вместо TDA8708A можно использовать любой другой быстродействующий АЦП с параллельным выводом данных, например TDA8703 или что-нибудь от Analog Devices.

Тактовую частоту для АЦП удалось хитрым образом извлечь из PIC"а - там запущен ШИМ с частотой 12 МГц и скважностью 0.25. Тактовый импульс положительной полярности проходит в цикле Q1 PIC"а так что при любом обращении к порту B, которое происходит в цикле Q2 данные АЦП будут уже готовы. Ядро PIC"а работает на частоте 48 МГц, получаемой через PLL от кварца 4 МГц. Команда копирования из регистра в регистр выполняется за 2 такта или 8 циклов. Таким образом, данные АЦП возможно сохранять в память с максимальной частотой 6 МГц при помощи непрерывной последовательности команд MOVFF PORTB, POSTINC0. Для буфера данных используется один банк RAM PIC18F2550 размером 256 байт.

Меньшие частоты дискретизации реализуются добавлением задержки между командами MOVFF. В прошивке реализована простейшая синхронизация по отрицательному или положительному фронту входного сигнала. Цикл сбора данных в буфер запускается командой от PC по USB, после чего можно эти данные по USB прочитать. В результате PC получает 256 8-битных отсчётов которые может, например, отобразить в виде изображения.

Входная цепь проста до безобразия. Делитель входного напряжения без всяких изысков сделан на поворотном переключателе. К сожалению не удалось придумать как передавать в PIC положение переключателя, поэтому в графической морде осциллографа есть только значения напряжения в относительных единицах - делениях шкалы. Усилитель входного сигнала (IC2B) работает с усилением в 10 раз, смещение нуля, необходимое для АЦП (он воспринимает сигнал в диапазоне от Vcc - 2.41В до Vcc - 1.41В) обеспечивается напряжением с программируемого генератора опорного напряжения PIC (CVREF IC1, R7,R9) и делителем от отрицательного напряжения питания (R6,R10, R8). Т.к. в корпусе ОУ был "лишний" усилитель (IC2A), я использовал его как повторитель напряжения смещения.

Не забудьте про емкостные цепочки для частотной компенсации входной ёмкости вашего ОУ и ограничивающих диодов, которые отсутствуют на схеме - нужно подобрать ёмкости параллельно резисторам делителя и резистору R1, иначе частотные характеристики входной цепи загубят всю полосу пропускания. С постоянным током всё просто - входное сопротивление ОУ и закрытых диодов на порядки выше сопротивления делителя, так что делитель можно просто посчитать не учитывая входное сопротивление ОУ. Для переменного тока иначе - входная ёмкость ОУ и диодов составляют значительную величину по сравнению с ёмкостью делителя. Из сопротивления делителя и входной ёмкости ОУ и диодов получается пассивный ФНЧ, который искажает входной сигнал.

Чтобы нейтрализовать этот эффект нужно сделать так, чтобы входная ёмкость ОУ и диодов стала значительно меньше ёмкости делителя. Это можно сделать соорудив емкостной делитель параллельно резистивному. Посчитать такой делитель сложно, т.к. неизвестна как входная ёмкость схемы, так и ёмкость монтажа. Проще его подобрать.

Способ подбора такой:

1. Поставить конденсатор ёмкостью примерно 1000 пФ параллельно R18.
2. Выбрать самый чувствительный предел, подать на вход прямоугольные импульсы с частотой 1 кГц и размахом в несколько делений шкалы и подобрать конденсатор параллельно R1 так, чтобы прямоугольники на экране выглядели прямоугольниками, без пиков или завалов на фронтах.
3. Повторить операцию для каждого следующего предела, подбирая конденсаторы параллельно каждому резистору делителя соответственно пределу.
4. Повторить процесс с начала, и убедиться, что на всех пределах всё в порядке (может проявиться ёмкость монтажа конденсаторов), и, если что-то не так, слегка подкорректировать ёмкости.

Сам ОУ - это Analog Devices AD823 . Самая дорогая часть осциллографа. :) Но зато полоса 16 МГц - что весьма неплохо.А кроме того, это первое из шустрого, что попалось в розничной продаже за вменяемые деньги.

Конечно же этот сдвоенный ОУ без всяких переделок можно поменять на что-то типа LM2904 , но тогда придётся ограничится сигналами звукового диапазона. Больше 20-30 кГц оно не потянет.

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

Источник отрицательного напряжения питания для ОУ сделан на хорошо известной charge-pump ICL7660 . Минимум обвязки и никаких индуктивностей. Ток по выходу -5 В конечно у неё невелик, но нам много и не надо. Цепи питания аналоговой части изолированы от помех цифры индуктивностями и ёмкостями (L2, L3, C5, C6). Индуктивности попались номиналом 180 uГн, вот их и поставил. Никаких помех по питанию даже на самом чувствительном пределе.

Прошивка PIC заливается по USB с помощью бутлоадера который сидит с 0-го адреса в памяти программ и запускается если при включении удерживать нажатой кнопку S2. Так что прежде чем прошивать PIC - залейте туда сначала бутлоадер - будет проще менять прошивки.

Все чаще и чаще используются приборы подключаемые к компьютеру по USB. Часто они бывают дешевле и функциональнее обычных приборов. В этой статье описано создание USB осциллографа с максимальной частотой 10 кГц при входном напряжении ± 16В. Он гораздо лучше других подключаемых к компьютеру осциллографов. Имеет гораздо больше возможностей, чем ПК-осциллографы. В качестве основы использован микроконтроллер PIC18F2550. Питание берётся непосредственно с USB порта, что делает осциллограф компактнее.

Описание схемы

В основе этого USB 2.0 осциллографа лежит микроконтроллер PIC18F2550. Вы можете использовать PIC18F2445 вместо PIC18F2550.

Характеристики PIC18F2550:
1. 32 Кб флэш-памяти, 2 Кб оперативной памяти и 256 байт EEPROM
2. Расширенный набор команд (оптимизированный для «С»)
3. 8x8 однотактный умножитель
4. Простая прошивка и отладка
5. USB 1.1 и 2.0 от 1,5 Мб/с до 12 Мб/с
6. Несколько режимов передачи по USB
7. 1 Кбайт доступной RAM с 32 конечными точками (64 байт каждая)
8. Работа с частотой от внутреннего генератора от 31 кГц и до 48 МГц с внешним кварцем.
9. Возможность программного переключения между «быстрым», «нормальным» и спящим режимами. В спящем режиме, ток потребления 0,1 мкА.
10. Широкий диапазон рабочих напряжений (от 2,0 В до 5,5 В).
11. Несколько портов ввода/вывода (I / O), четыре таймера с возможностью захвата /сравнения.
12. Синхронные и асинхронные модули расширения
13. Потоковый параллельный порт
14. 10-разрядный АЦП с 13-канальным мультиплексором.

На рисунке выше показана схема двухканального USB осциллографа. MCP6S91 является аналоговым усилителем с программируемым коэффициентом усиления. Он хорошо подходит для использования в АЦП и подачи сигнала на аналоговый вход микроконтроллера. Два программируемых усилителя (IC4 и IC5) позволяют выбрать входной диапазон для каждого из двух каналов, изменяя его от 1:1 до 32:1. Усилители небольшие, дешевые и простые в использовании. Простой трехпроводной последовательный интерфейс SPI позволяет микроконтроллеру управлять ими через выводы 5, 6 и 7.

MCP6S91 разработан с использование КМОП устройств ввода. Он не инвертирует выходной сигнал, когда входное напряжение превышает напряжение питания. Максимальное входное напряжение этого усилителя от -0.3V (VSS) до +0,3 В (VDD). Повышенное входное напряжение может вызвать чрезмерный ток из входных контактов. Ток более ± 2 мА может привести к поломке микросхемы. При подаче большего тока на входе должен быть токоограничительный резистор. Напряжение на выводе 3, который является аналоговым входом, должно быть между VSS и VDD. Напряжение на этом выводе меняет выходное напряжение. Выводы SPI интерфейса это выбор кристалла (CS), последовательный вход (SI) и последовательная частота (SCK). Выходы КМОП это триггер Шмитта.

Единственным недостатком является то, что эти усилители принимают только положительные сигналы. Вот почему используется напряжение сдвига усилителей LF353 (IC2A и IC3A). LF353 является операционным усилителем с внутренней компенсацией смещения входного напряжения. Этот ОУ имеет широкую полосу пропускания, низкий входной ток. Напряжение сдвига усилителя приводит к высокому входному сопротивлению и коэффициенту уменьшения 1:4.5. ± 16В входного сигнала переходят в 0-5В диапазон.

LF353 (IC2B и IC3B) используются для обеспечения напряжения смещения (Vref) для программируемых усилителей. Это напряжение должно быть точно отрегулировано двумя 4,7 кОм потенциометрами. На входах IC2 и IC3 должно быть 2.5В, когда вход на GND.

LF353 нужны одинаковые напряжения питания, поэтому используется маленький DC-DC преобразователь напряжения ICL7660 (IC1). Ему необходимо лишь два электролитических конденсатора. ICL7660 можно заменить MAX1044.

Последовательная шина

Все данные передаются на D + / D- симметричные входы с переменной скоростью. Положение резистора (R13) на D + или D- позволяет регулировать скорость от 12Мбит до 1.5Мбит. Обратите внимание, что PIC18F2550/2455 имеют встроенные подтягивающие резисторы. Использование UPUEN (UCFG = 4) позволяет использовать их. В этом проекте R13 не используется. Внешние подтягивающие резисторы также могут быть использованы. Сопротивление резистора должно быть в 1,5 Ком (± 5%) в соответствии с требованиями USB.

Программа микроконтроллера

Программа для микроконтроллера написана на "C" в MPLAB 8,70. Его можно бесплатно загрузить с сайта www.microchip.com. Программа для МК основана на готовых примерах с сайта Microchip и сосредоточена на опросе USB. Этот цикл никогда не останавливается, и каждая операция USB осуществляется за один подход. Все операции, которые инициируются ПК состоят из 16-байтных команд.
Первый байт команды определяет тип действия.
1. Команда 80h: Очищает память EEPROM от значений калибровки
2. Команда 81h: Получает параметры, и настраивает необходимую компенсацию для двух каналов.
3. Команда 83h: Вызывает калибровку каналов.

Установка драйвера

1. Если все в порядке, подключите осциллограф с помощью кабеля USB к компьютеру (с операционной системой Windows 98SE и выше). Должно появится диалоговое окно "Обнаружено новое устройство"
ПРИМЕЧАНИЕ: Драйвер для этого осциллографа не работает на Windows 7 или Vista.

2. Теперь вы можете запустить установку драйвера. Для загрузки драйвера, нажмите здесь. Не позволяйте Windows установить стандартный драйвер.

3.Когда вы всё сделали, перейдите в "Диспетчере устройств" и убедитесь, что "USB2-MiniOscilloscope" распознается. Если его там нет, повторите шаги 1 и 2.

Пользовательский интерфейс программы

Пользовательский интерфейс программы написан на Visual Basic 6 и называется OscilloPIC. Нажмите для закачки.

Программа выглядит как маленький цифровой осциллограф, что показано на скриншоте выше. Различные настройки в строке меню:
1. Inputs: выбор активных каналов
2. Sampling: настройка частоты снятия показаний
3. Trigger: настраивает синхронизацию
4. Cursors: выбор горизонтальной или вертикальной позиции сигнала
5. Num: показывает дискретные значений в формате текстового файла
6. Config: настройка усиления и смещения

Перед началом работы с осциллографом необходимо провести калибровку. Нажмите кнопку channels calibration в разделе "Config". Подайте на вход осциллографа известный сигнал. Нажмите кнопку "Пуск". Сигнал будет отображаться на экране монитора. По умолчанию время одного деления составляет 200 мкс. Амплитуда 4В на деление. Вы можете установить эти параметры в соответствии с вашими требованиями.

Тесты и калибровка

Первый шаг заключается в корректировке смещения. Подсоедините два аналоговых входа на GND и подстройте два 4,7 кОм потенциометра, пока на выводе 2 обоих MCP6S21 не будет 2,5В. Более точная настройка может быть достигнута за счет OscilloPIC. Выберите наименьшее значение калибровки в пределах ± 0,5 для обоих входов.

Команда «калибровка нуля» сообщает ПИК о необходимости начать свою собственную внутреннюю компенсацию для всех калибровок. Не забудьте подключить входы на землю.

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

Сборка

Макет схемы собранный на макетной плате

Размер печатной платы осциллографа можно оценить на фотографии. Поскольку схема довольно проста, сборка не должна вызвать затруднений.

Для подачи входного сигнала могут быть использованы BNC разъёмы. Разъёмы для них могут быть установлены на передней панели. Осциллограф может быть улучшен путем замены PIC и АЦП на более быстрые модели, например на AD9238 (20 MS/с). Это быстрый параллельный АЦП можно использовать вместе с DSP PIC.

ПРИМЕЧАНИЕ: Плата оптимизирована для изготовления в домашних условиях(дорожки специально сделаны толстыми). Если вы можете сделать более тонкие дорожки, вы можете уменьшить их толщину.

Скачать прошивку, ПО для ПК, файлы печатных плат в Eagle

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
IC1 Микросхема ICL7660 1 В блокнот
IC2, IC3 Операционный усилитель

LF353

1 В блокнот
IC4, IC5 Микросхема MCP6S91 1 В блокнот
IC6 МК PIC 8-бит

PIC18F2550

1 В блокнот
R1, R9 Резистор

82 кОм

2 0.25 Вт В блокнот
R2, R8 Резистор

33 кОм

2 0.25 Вт В блокнот
R4, R5, R15 Резистор

1 МОм

3 0.25 Вт В блокнот
R6, R7 Резистор

220 кОм

2 0.25 Вт В блокнот
R10, R11 Резистор

150 кОм

2 0.25 Вт В блокнот
R12, R13, R16 Резистор

1 кОм

3 0.25 Вт В блокнот
R14 Резистор

1.5 кОм

1 0.25 Вт В блокнот
VR1, VR2 Резистор подстроечный

4.7 кОм

2 В блокнот
С1 Электролитический конденсатор 10 мкФ 16В 1
Измерительная техника

Карманный осциллограф до 1 МГц

Заменив в карманном осциллографе, описанном в , микроконтроллер PIC16F873A на PIC18F4550 , а операционный усилитель К140УД608 на микросхему аналогового видеоинтерфейса ТDA8708A , удалось уменьшить длительность развёртки в 150 раз, до 21 мкс на всю ширину экрана, а максимальную частоту входного сигнала увеличить до 1 МГц. Это значительно расширило возможности осциллографа.

Основные технические характеристики

Напряжение отклонения луча на всю высоту экрана, В................0,2; 1; 3; 10; 30; 100

Максимальная частота исследуемого сигнала, МГц........1

Длительность горизонтальной развёртки, мкс.......21, 170, 1000, 10-103, 30-103, 100-103, 300-103, 106

Разрешение экрана, пкс......128x64

Напряжение питания, В............5

Потребляемый ток, мА...........115

Размеры, мм..............80x62x30

Масса, г........................110

Схема осциллографа изображена на рис. 1. Входной сигнал поступает на вывод 20 (ADCIN - вход АЦП) микросхемы DA1 (TDA8708A). Для запуска её АЦП микроконтроллер DD1 формирует на выводе 17 тактовые импульсы. Двоичные коды отсчётов сигнала поступают на порт В микроконтроллера DD1, который согласно программе записывает их в оперативную память, а затем отображает на графическом ЖКИ HG1 в виде осциллограммы. Общее описание ЖКИ МТ-12864J-2FLA можно найти в , а о его использовании прочитать в .

Рис. 1. Схема осциллографа

На рис. 2 изображена осциллограмма сигнала частотой 100 кГц. Переменным резистором R6 смещают линию развёртки по вертикали, устанавливая её в наиболее удобное для наблюдения осциллограммы положение. Подборкой резистора R12 добиваются наилучшей контрастности изображения на экране ЖКИ.

Рис. 2. Осциллограмма сигнала частотой 100 кГц

Развёртка осциллографа работает в режиме однократного запуска нажатием на кнопку SB1. Нажимая на кнопку SB2, изменяют длительность развёртки. После каждого нажатия этой кнопки на экран некоторое время выводится значение новой длительности развёртки (рис. 3).

Рис. 3. Значение новой длительности развёртки

Программу микроконтроллера можно скачать .

Литература

1. Пичугов А. Карманный осциллограф.- Радио, 2013, № 10, с. 20, 21.

2.PIC18F2455/2550/4455/4550 Data Sheet. - URL: http://ww1.microchip.com/downloads/ en/DeviceDoc/39632e.pdf (22.04.15).

3. Яценков В. С. Микроконтроллеры Microchip с аппаратной поддержкой USB. - М.: Радио и связь, 2008.

4. TDA8708A. Video analog input interface. - URL: http://doc.chipfind.ru/pdf/philips/tda 8708a.pdf (21.05.15).

5. Жидкокристаллический модуль MT-12864J. - URL: http://www.melt.com.ru/ files/file2150172.5.pdf (22.04.15).

6. Милевский А. Использование графического ЖКИ МТ-12864А с микроконтроллером фирмы Microchip. - Радио, 2009, № 6, с. 28-31.


Дата публикации: 06.11.2015

Мнения читателей
  • admin / 18.04.2017 - 14:35
    Проблема на фтп сервере, откуда идет раздача. Я думаю это временное явление, попробуйте чуть позже скачать.