ЦШ для КВ трансивера на ATmega88, пара вопросов.

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Аватара пользователя
sergeys
Поставщик валерьянки для Кота
Сообщения: 1946
Зарегистрирован: Сб сен 11, 2010 13:45:01
Откуда: Екатеринбург

ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение sergeys »

Мяу всем! :) Начал писать программу для цифровой шкалы (по сути просто частотомер, никаких ЦАПЧ и подобного), есть пара запарок.
Для начала алгоритм: использую два таймера (Timer0, Timer1), Т0 считает 0.5сек, а Т1 считает кол-во импульсов (за эти 0.5 сек) внешнего сигнала. Собственно и весь алгоритм :))) , ну потом еще индикация.
Мерять надо до 30МГц, тактовую взял 20МГц, т.е. на входе делитель на 3 будет. Это вроде понятно.
Не понятно вот что: таймеру надо подавать цифровой сигнал? Т.е. если я ему на вход запихну сигнал с ГПД, он ничего не посчитает ( :oops: прям стыдно даже, вроде так просто, но нигде не написано про это, где я читал)?
И еще (тоже вроде просто должно быть, а я мозг поломал весь): в конечном итоге получается страшное число (частоту-то я меряю в герцах, но наверно буду делить на 1000, потому-что 30МГц не влазит даже в 24бита), которое надо запихнуть на индикацию. Тут я вообще не могу ниче придумать, с декодированием этого страшного числа для семисегментника. Подскажите пожалуйста пример на асме (все что нашел, на С) такой индикации.
Спасибо за помощь и не пинаться сильно! :)
Ко мне можно на "ты", так даже лучше!
Реклама
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение akl »

На вход таймера, естессно, нужно подавать "цифровой сигнал". На предварительный делитель тоже ( я бы его поставил с коэффициентом 10). Дальше можно посмотреть здесь.
Реклама
Аватара пользователя
sergeys
Поставщик валерьянки для Кота
Сообщения: 1946
Зарегистрирован: Сб сен 11, 2010 13:45:01
Откуда: Екатеринбург

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение sergeys »

Хм, да, судя по вашему результату измерений лучше поставить делитель на больше, чем 3.
В программе не разобрался, не получается как-то сообразить алгоритм по коду, да и я хотел использовать семисегментник.
Я думаю так: в массиве прописать значения для каждой цифры для индикатора, но как контроллеру объяснить, что например число 156 нужно по трем цифрам выводить, или прописывать значения до 256? Блин, этоож.... :shock:
И тогда подскажите пожалуйста схемку АЦП на вход.
Ко мне можно на "ты", так даже лучше!
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение akl »

Работа приведенного частотомера реализована на алгоритме подсчета целого числа периодов Nx измеряемой частоты Fx за принятое время измерения с одновременным счетом периодов nox опорной частоты Fo. Далее следует расчет Fx=Fo*Nx/nox. Алгоритм имеет множество названий - "вычислительный метод", "постоянного измерительного интервала", "обратного счета". Вывод на семисегментный индикатор можно посмотреть здесь
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
sergeys
Поставщик валерьянки для Кота
Сообщения: 1946
Зарегистрирован: Сб сен 11, 2010 13:45:01
Откуда: Екатеринбург

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение sergeys »

Брррр, не могу я по коду сообразить. Если вам не трудно, черкните в двух словах алгоритм вывода "страшного числа" на индикацию.
И какой АЦП можно воткнуть?
Ко мне можно на "ты", так даже лучше!
Реклама
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение akl »

Здравствуйте. За основу можно взять схему входного формирователя частотомера Леонида Ивановича.
Алгоритм преобразования "страшного числа" на индикацию очень простой
-из полученного результата измерения вычитается 10'000'000 и определяется десятичное число 10*МГЦ
-из остатка вычитается 1'000'000 и определяется десятичное число 1*МГЦ
и т.д. до получения единиц Гц
Полученные десятичные числа преобразовываете в коды индикатора, запоминаете в массиве индикации.
Реклама
Аватара пользователя
sergeys
Поставщик валерьянки для Кота
Сообщения: 1946
Зарегистрирован: Сб сен 11, 2010 13:45:01
Откуда: Екатеринбург

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение sergeys »

akl, спасибо большое за помощь, теперь наверно допишу. :)
Ко мне можно на "ты", так даже лучше!
Аватара пользователя
sergeys
Поставщик валерьянки для Кота
Сообщения: 1946
Зарегистрирован: Сб сен 11, 2010 13:45:01
Откуда: Екатеринбург

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение sergeys »

Хм, чего-то я недопонял: у Леонида Ивановича в формирователе частота не делится? Я вроде там делителя не вижу
Ко мне можно на "ты", так даже лучше!
Аватара пользователя
sergeys
Поставщик валерьянки для Кота
Сообщения: 1946
Зарегистрирован: Сб сен 11, 2010 13:45:01
Откуда: Екатеринбург

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение sergeys »

Все еще не определился с АЦП У Леонида Ивановича схема конечно хорошая, но слишком для моего устройства, да и печатка мелкая для меня.
Толкового ниче не нашел, только вот:
Снимок.png
(245.53 КБ) 508 скачиваний
Радиоконструктор за 2000 год, номер 8
Подойдет?
Ко мне можно на "ты", так даже лучше!
Аватара пользователя
radiokot__
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Вс янв 15, 2012 19:58:40

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение radiokot__ »

Что то не могу понять зачем вам нужен АЦП???
Для чего он там нужен???
Ни один домашний кот незнает что он домашний.
Аватара пользователя
sergeys
Поставщик валерьянки для Кота
Сообщения: 1946
Зарегистрирован: Сб сен 11, 2010 13:45:01
Откуда: Екатеринбург

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение sergeys »

radiokot__ писал(а):Что то не могу понять зачем вам нужен АЦП???
Для чего он там нужен???
А на выходе ГПД аналогового трансивера что? Цифра?
Или я чего не понимаю, и там должно быть что-то другое? (вместо АЦП)
Мне же нужно помярять частоту син. сигнала.
Ко мне можно на "ты", так даже лучше!
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение akl »

Может возьмете за основу?
FORM1.GIF
FOPM.GIF
Аватара пользователя
sergeys
Поставщик валерьянки для Кота
Сообщения: 1946
Зарегистрирован: Сб сен 11, 2010 13:45:01
Откуда: Екатеринбург

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение sergeys »

akl писал(а):Может возьмете за основу?
FORM1.GIF
FOPM.GIF
Вот, это уже больше мне подходит.
Т. е. сначала каскад показанный на FORM, а потом уже каскад на FORM1? Так я понимаю?
Делитель частоты там получается на 3? Тогда его можно заменить. Например http://lib.qrz.ru/node/5149 ?
Ко мне можно на "ты", так даже лучше!
akl
Друг Кота
Сообщения: 4445
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение akl »

sergeys писал(а):Т. е. сначала каскад показанный на FORM, а потом уже каскад на FORM1? Так я понимаю?
Да.
sergeys писал(а):Делитель частоты там получается на 3?
Нет. Делитель на 4, который при входной частоте 30МГц даст на выходе 7,5МГц и может быть измерена AVR-кой, тактируемой от 20МГц.
По предложенному делителю - очень некрасивая схема. Лучше поставить ИЕ6 или ИЕ7.
Последний раз редактировалось akl Сб май 12, 2012 07:45:25, всего редактировалось 1 раз.
Аватара пользователя
sergeys
Поставщик валерьянки для Кота
Сообщения: 1946
Зарегистрирован: Сб сен 11, 2010 13:45:01
Откуда: Екатеринбург

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение sergeys »

О, тогда все хорошо. Еще раз большое спасибо за помощь, эта схемка хоть попроще и нет мелочи, которая у меня паяльником что-то не очень хочет нормально паяться.
Ко мне можно на "ты", так даже лучше!
Аватара пользователя
WolfTheGrey
Потрогал лапой паяльник
Сообщения: 370
Зарегистрирован: Вс май 06, 2012 09:58:33
Откуда: Магадан

Re: ЦШ для КВ трансивера на ATmega88, пара вопросов.

Сообщение WolfTheGrey »

Чтоб не плясать с бубном около транзистора, можно использовать ОПЕР в качестве Компаратора.
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»