Пятница, 26.04.2024, 05:19
Приветствую Вас Гость | RSS
Главная | Каталог статей | Регистрация | Вход
Меню сайта
Реклама Google
Форма входа
Категории раздела
Это нужно знать! [17]
Изучаем AVR [30]
Программаторы [12]
Необходимое ПО [8]
Готовые устройства [73]
Справочная [38]
Инструмент [0]
Технология [8]
Литература [0]
Arduino скетчи [18]
Поиск
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Микроконтроллеры - это просто!
Главная » Статьи » Готовые устройства

Анализатор спектра на ATmega8 + LCD

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

 
Схема анализатора
 
  Обратите внимание что входной сигнал должен быть от 0 до 5В (с амплитудой не более 2.5В). Если ваш сигнал превышает данные значения вы должны пропустить его через резистивный делитель напряжения. Проверьте сигнал с помощью осциллографа на входе микроконтроллера не обрезается ли он – это очень важно. Если сигнал обрезается, то анализатор будет ужасно вычислять спектр.

  Переменными резисторами R13 и R12 вы можете изменять входной сигнал по напряжению. Далее сигнал делиться на: высокочастотный (900hz – бесконечность) пропускается на микроконтроллер и низкочастотный (0 – 900hz) отсекается фильтром Чебышева.

Если вы используете дисплей 16*2 необходимо прошить микроконтроллер программой “16*2 program”. В программе в первых строчках, есть параметр “CZULOSC” – им вы можете калибровать чувствительность. Впишите туда число от 15 до 40 и проверьте как это работает. Соберите файл в компиляторе BASCOM и прошейте ваш atmega8. Вы должны установить fusebits в atmega, как “внешний кварц высокой частоты” (CKOPT=0, все остальные=1)

Также вы можете экспериментировать с более высокочастотным кварцем. В проекте используется кварц 16MHz, но я однажды поставил 27MHz, и спектр отображался намного быстрее. В этом случае Вы должны изменить строку “$crystal = 16000000 ″, необходимо указать там верную частоту. Но если ваш жидкокристаллический дисплей работает медленно, этим вы ничего не сможете изменить. Я проверял с 16*2 и 24*2 дисплеями. Дисплеи 16*2 были намного медленнее чем 24*2. Это – немного абсурдно, потому что с большим LCD (24*2) программа имеет больше команд для вычисления спектра, но в конфигурации 24*2 спектр отображался намного быстрее чем 16*2.

Дисплей ДОЛЖЕН быть на основе чипа HD44780 – другие могут работать некорректно.

Данная схема корректно работает с микроконтроллером ATmega8L.
Если у вас работает только 8 первых столбцов на дисплее то проблема решается изменением строк в исходных текстах

Sample_h:
Config Adc = Single , Prescaler = 2 , Reference = Avcc

на строки

Sample_h:
Config Adc = Single , Prescaler = 4 , Reference = Avcc

Номиналы всех резисторов и конденсаторов должны точно соответствовать указанным на схеме, иначе отображаемый спектр не будет соответствовать действительности.
Рекомендуется использовать дисплей с негативным типом подсветки – выглядит намного красивее J.

 

Прошивки можно скачать analizator.rar 

Категория: Готовые устройства | Добавил: Alex (24.08.2014)
Просмотров: 3175 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Copyright MyCorp © 2024