Home Статьи Технический уголок Маяк на AVR – новый подход в действии - Страница 3
Маяк на AVR – новый подход в действии - Страница 3 PDF Печать E-mail
Автор: Dmitry A. Gorokh   
25.07.2012 23:36
Индекс материала
Маяк на AVR – новый подход в действии
Страница 2
Страница 3
Все страницы

 

Будущее метода

Описанные в этой статье конструкции маяков практически реализуют новый подход к цифровой генерации сигналов. На самом деле, как было замечено, этот метод не нов, а является частным случаем прямого цифрового синтеза сигналов (DDS). Однако, автору не известны работы, где бы так оригинально использовались аппаратные ресурсы периферии микроконтроллера для генерации ВЧ сигналов. Хочется отметить, что данный метод применим везде, где необходим стабильный источник ВЧ сигнала, и где есть достаточные процессорные ресурсы для его реализации. Например, в 32-битных микроконтроллерах серии ARM7 имеется вся необходимая периферия, а также контроллер DMA, который позволяет значительно разгрузить процессор. DDS-последовательность может быть либо заранее вычисленной и сохраненной в постоянной памяти (как в этом проекте маяка), так и вычисляться по мере перестройки частоты, и храниться в оперативной памяти. При этом время на вычисление одного периода последовательности составляет единицы миллисекунд, что соизмеримо со временем программирования внешнего DDS или временем перестройки PLL. Трансиверы и приемники, построенные по данному методу, могут иметь тот же функционал, что и традиционные, но до предела упрощенную элементную базу и пониженное энергопотребление.

 

Будущее маяка


 В самом проекте AVR маяка тоже можно сделать несколько улучшений:

  • хранить текст в EEPROM и иметь возможность изменять его без перепрограммирования микроконтроллера;
  • реализовать считывание показаний с датчиков (напряжение питания, температура, давление, влажность, и др.) и передачу их в эфир;
  • реализовать работу маяка по расписанию;
  • можно управлять фазой и частотой сигнала, тем самым реализовав цифровые модуляции классов PSK и FSK;
  • есть возможность управлять выходной мощностью маяка посредством ШИМ (PWM);
  • можно сделать многодиапазонный вариант на одном микроконтроллере, переключая только аналоговые фильтры;
  • несложно синхронизировать работу нескольких таких маяков для организации их сети на разных диапазонах.

 Проект AVR Beacon открыт для всех и распространяется по свободной лицензии GNU GPL v3. Вы можете свободно и бесплатно использовать, изменять и распространять этот проект с тем условием, что сохраняете авторство за UR4MCK. По всем вопросам и за новыми версиями обращайтесь по адресу: Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript

 Пакет документации 

 Пакет документации включает:

  •  принципиальную схему (SPlan 7.0, GIF);
  • печатную плату (SprintLayout 5.0, GIF);
  • исходный код (Atmel Studio 6.0, AVR assembler);
  • HEX-файл для программирования микроконтроллера;
  • исходный код утилиты для генерации DDS-последовательности (GNU C);
  • запись сигналов маяка с эфира (MP3);
  • фотографии макета-прототипа.

СКАЧАТЬ (651 Кб)
Новые версии см. на странице проекта AVR beacon: http://sourceforge.net/projects/avrbeacon/


Литература


1. Nathan O. Sokal "Class-E High-Efficiency RF/Microwave Power Amplifiers: Principles of Operation, Design Procedures, and Experimental Verification" http://www.cs.berkeley.edu/~culler/AIIT/papers/radio/Sokal%20AACD5-poweramps.pdf

2. ClassE v2.04. http://www.tonnesoftware.com/classe.html

 

July 2012

UR4MCK

Обновлено 17.08.2012 16:40
 

Комментарии   

 
0 #4 ur4mck 17.08.2012 16:38
Проект перенесен на sourceforge.net/projects/avrbeacon/
Все вопросы, новые версии и сообщения об ошибках теперь только через службы SourceForge.
Цитировать
 
 
0 #3 UU7JF 30.07.2012 12:52
Да, с памятью понятно, ATmega48 отличается только объемом памяти, а аппаратные интерфейсы такие же. Попробую простейший вариант, моща 2 мВт не так уж и мало. Единственно, поразбираюсь, чтоб в режиме QRSS3 запустить - 3 секунды длительность точки.
Цитировать
 
 
0 #2 ur4mck 30.07.2012 12:43
Виталик, ты все правильно увидел. RAM и FLASH используются не полностью. В ATmega88p 1 kБ RAM и 8 кБ FLASH. Можно попробовать под другие MCU, в том числе и ATmega48, надо только убедится, что аппаратный USART может работать в режиме "Master SPI Mode" (MSPIM). Этот режим выбран вместо родного SPI, т.к. в USART есть буффер, а в родном SPI - нет.
При замене MCU надо не забыть указать правильный ".include".
Последовательность, сгенерированная утилитой, соответствует заданной рабочей частоте (первая последовательно сть в списке). Утилита генерирует несколько последовательно стей по мере увеличения переменной M. Например, N = 4096 (размерность фазового регистра - 12 бит), а M = 1464 (фазовый инкремент), тогда при опорной частоте 10 МГц выходная частота будет равна 1464 / 4096 * 10 (МГц) = 3.57421875 МГц (приблизительно 3574.22 кГц). В версии 0.0.1 длина последовательно сти ограничена 256 байтами. Уже есть новая версия, в которой последовательно сть ограничена только размерами свободной FLASH. Вышлю тебе по e-mail.
Цитировать
 
 
+1 #1 UU7JF 30.07.2012 11:15
Дима, правильно ли я увидел, что RAM контроллера используется мало (не все 512 байт)? У меня просто есть ATmega48 и хочу понять, влезет ли в нее прошивка, там RAM только 256 байт и 4кБ флэш.
Второй вопрос - какую из сгенерированных утилитой последовательно стей выбирать для использования?
Цитировать