Контроллер PLL.

Трех кнопочный вариант.

Я думаю, не открою секрет, что на "блошиных" рынках, в гаражах у знакомых "имеются" старые, неисправные, разбитые, просто морально устаревшие, в общем не нужные автомагнитолы. В таких автомагнитолах, с вероятностью 99%, плата приемника исправна. Так вот, в этом проекте реализовано управление таким приемником. И этот же контроллер, но с другой программой, используется в приборе для настройки приемников настройки приемников.

вот его фотографии:.... ВНИМАНИЕ! ПРОЕКТ ЗАМОРОЖЕН.

Исходное состояние Настройка

Запись в EEPROM Со стороны дорожек

.... а вот схема

Схема

... эта же схема в P-CAD и печатная плата в P-CAD, прошивка для работы с приемником и для работы с прибором для настройки приемников.... исходники ...

Контроллер предназначен для управления синтезатором частоты на основе PLL серии LC72131 (LC72130). Позволяет задавать частоту настройки PLL, управлять выводами BO и IO, анализировать состояние захвата частоты (LOCK), считывать значение IF_counter , в режиме приемника.

Порядок работы контроллера:

- при включении (или по сбросу) считывается "последнее" состояние (номер канала и частота настройки) и производиться инициализация PLL с этими парамертами;

- кнопка 1 (левая) предназначена для последовательного переключения каналов преднастройки;

- кнопки 2 и 3 (средняя и правая) предназначены для уменьшения и увеличения частоты настройки с шагом 10 или 50 кГц, в зависимости от диапазона (65...75 и 88...108 МГц). Шаг перестройки определяется автоматически.

- после нажатия одной из кнопок осуществляется немедленная перестройка PLL и включается 3-х секундный режим "ожидания" (в верхней строке индицируется "<<>>" см.рис "Настройка").. если ,в течение, 3-х секунд ни одна из кнопок не нажата, то проиводиться запись в EEPROM, о чем свидетельствует надпись в верхней строке "ЗАПИСЬ" (см.рис). Режим ожидания выбран для "экономии" цилов "записи" в EEPROM (100 000 по datasheet' у... и если заисывать при каждой перестройке, то хватит на 100000/400= 250 циклов полной от 88 до 108 перестройки, а с учетом наличия диапазона 65-76 ...еще меньше... :-) )

программа для приемника, в дополние к выше сказанному, имеет режим "правильной" автонастройки (анализируется сигнал SD, а затем настройка "доводится" по IF_C)

Четырех кнопочный контроллер.

Собран новый вариант контроллера (на плате про котурую был рассказ).

Внешний вид

с белой подсветкой...

549

 

Со стороны дорожек

большая фотография (131кб) плата покрыта канифолью

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

Кроме внешнего вида в контроллере:

- изменена схема опроса клавиатуры...клавиатура опрашивается как в автомагнитолах и муз. центрах.... путем изменения, при нажатии кнопок, коэффициента деления резистивного делителя и и измерения его выходного напряжения;

- введено автоматическое отключение выходного сигнала (снятие несущей) при переходе в режим UNLOCK;

- добавлена ступенчатая (-10db, -20db, -30db, OFF) регулировка уровня выходного сигнала;

- нажатие кнопок дублируется звуковым сигналом.

схема (79кб)

Схема, плата, прошивка (HEX), исходник (CV_AVR) (исходник распространяется "как есть")

Рекомендации по использованию исходника:

В связи с использованием ADC ATMega для работы с клавиатурой необходима подстройка весовых коэффициентов кнопок. В чем причина понять не смог, но два одинаковых контроллера дают разные (3,5%) результаты работы ADC. Видимо, "настройка" ADC обязательна. Есть у этой "особенности" и положительная сторона - величина весовых резисторов в клавиатуре не критична. ...

Алгоритм программирования предлагаю следующий:

в файле def_stas.c, в строке #define KEYOTL 0 значение "0" меняется на "1", проект компилируется и прошивается в кристал. После начала работы на экране индицируется числовое значение "не нажатой клавиатуры ". При нажатии каждой из кнопок значение меняется и соответствует нажимаемой кнопке. От числа на экране отнимаем 10 и вносим изменения в строки:

#define K4 0
#define K3 32
#define K2 62
#define K1 115
#define K0 173

На этом "калибровку" можно считать законченной. Возвращаем "0" в строку #define KEYOTL 0. В строках

// выбор частоты кварца LC
#define FREZ 0 //1 для 4,5МГц и 0 для 7,2МГц
// выбор ПРМ/ПРД
#define PRM 0 //1 для ПРМ и 0 для ПРД
,

устанавливаем требуемые значения и..... Все... Компилируем, прошиваем и работаем.

EEP память заполняется при первом использовании, но если лень - можно записать готовое.

Удачи!

Kонтроллер на 16-ти разрядном индикаторе.

Собран вариант котроллера на 16-ти разрядном индикаторе. ВНИМАНИЕ! ПРОЕКТ ЗАМОРОЖЕН.

16-ти разрядный

 

По сравнению с 4-х кнопочным в него "добавлены" часы, заложена возможность установки таймера включения (выключения), управление двумя внешними устройствами (TTL - сигналы), введена возможность батарейного питания, ну и "бегущая строка"...

Схема (82кб)

Схема и плата в Р-CAD

Внимание! В связи с тем, что на диодах (VD1) падает около 0,8 вольта, а нижнее рабочее напряжение контроллера равно 2,7 вольта - батарейное питание должно осуществляться от 4,5 вольт, а не от 3 вольт.

Прошивка контроллера НО ВНИМАНИЕ!!!!! Простое копирование прошивки в кристалл не гарантирует правильную и надежную работу кнопок. Нужно настраивать ADC, как в 4-х кнопочном, но для этого нужны исходники, а их выкладывать не планирую, так как все составляющие "куски" программы уже выложены и дальнейшее развитие этого проекта не планируется.

...продолжение

(C)STAS633

29.05.06г-01.11.06г.

Главная

Hosted by uCoz