режде чем приступить к описанию 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), которые имеются практически в каждой операционной системе, отпадает необходимость в установке дополнительных драйверов.
Чтобы получить графическое отображение измеренных данных, используется программное обеспечение доступное для загрузки в конце статьи. Программное обеспечение не требует настройки, и после запуска оно автоматически найдет подключенное устройство.
АРХИВ:Скачать