Частотомер /цифровая шкала/ на ATMega8

Обсуждение аппаратуры для радиосвязи.
Аватара пользователя
ru0aog
Сообщения: 2193
Зарегистрирован: 31 янв 2013, 10:49
позывной: RU0AOG
CиБи позывной: Апрель
Имя: Станислав
Откуда: QTH locator: NO65JX # RDA KK-04
Контактная информация:

Частотомер /цифровая шкала/ на ATMega8

Сообщение ru0aog » 12 ноя 2015, 14:57

В последние десять лет на рынке простейшей вычислительной техники присутствуют три основных производителя:
- MicroChip
- Atmel
- STMicroElectronics
Каждая из этих компаний разработала и продвигает свои микроконтроллеры. Рассматривать мы будем самые простейшие и дешевейшие - восьмибитные.
- MicroChip производит контроллеры PIC10...PIC18, например PIC16CE625,
- Atmel производит серию ATMega, например ATMega8,
- STMicroElectronics производит серию STM8, например STM8S105C6T6.

Традиционно в радиолюбительской среде собирали частотомеры/цифровые шкалы на PIC-контроллерах. Про их начинку судить не берусь, ибо не сталкивался.
С другой стороны, существует программно-аппаратный комплекс под общим названием Ардуино. Он включает простой язык программирования (упрощённый Си) и очень дешёвые платы с установленным контроллером ATMega. Это реально "быстрый старт" для желающих освоить программирование микроэлектроники.
Контроллеры STM работают на более высоком уровне, стоят соответственно, поэтому и рассматривать их не будем.

Я начинал с Ардуино, поэтому архитектуру АТМеги более-менее понимаю. Мне проще с ними работать. Тем более, такие устаревшие чипы как ATMega8 на китайских торговых площадках до недавнего времени раздавали практически даром :D
В то же время, ATMega8 содержит:
- 8 кбайт флэш-памяти для программ - программируется пользователем до 10.000 раз,
- 1 кбайт ОЗУ - число циклов записи/чтения неограничено,
- 0,5 кбайт энергонезависимой (флэш) памяти для данных - программируется самим контроллером в ходе выполнения программы до 100.000 раз,
Обещают, что флэш не потеряет данные как минимум в течении 20 лет (при T=25 C - до 100 лет).
- три 8-битных порта (жаль, что часть линий может быть занята другими фишками, перечисленными ниже),
- внутренний тактовый генератор с возможностью подключения внешних кварцев,
- три таймера,
- шестиканальный АЦП (аналого-цифровой преобразователь) с точностью 10 бит,
- интерфейс TwoWire,
- интерфейс SPI,
- порт USART (тот же RS-232, но с TTL-уровнями).

В общем, готовый микрокомпьютер с периферией, только без Windows :D
Наибольшее распространение получили чипы, работающие на частотах до 16 МГц. Вот на них я и ориентируюсь.

Частотомеров на пиках развелось - тьма, а вот на АТмегах нету.
Решил восполнить пробел и запилить девайс на дешёвой ATMega8.
Возможности данного чипа в плане подсчёта частоты весьма скромны, но если установить время счёта = 1 секунда и использовать предделитель, то кое-что может получиться.
Чтобы ни один такт на пропал зря, программу буду писать на ассемблере :D
Алгоритм наипростейший:
- отмеряем интервал в 1 сек,
- пока длится интервал, считаем кол-во импульсов на входе.

Для меня основное использование этой штуковины - цифровая шкала в походной КВ радиостанции. Диапазоны 160-80-40 метров.

Вот что вышло в симуляторе:
10.JPG
Предельная частота на входе атмеги = 2,5 МГц (прошивка подразумевает наличие предделителя 1/10).
С предделителем 1/10 выходит:
- диапазон измеряемых частот: от 10 Гц до 25 МГц,
- точность измерения: 10 Гц,
- время измерения: 1 сек.

На основе этой штуки может получиться вполне приличная цифровая шкала для самодельных портативок на КВ.
Особенно если понизить точность до 100 Гц и ускорить счёт до 0,1 сек.

Исходник на асме, хекс и модель в протеусе:
121.rar
(41.33 КБ) 263 скачивания
Вариант с временем счёта 0,1 сек, точностью 100 Гц и внешним предделителем на 10:
122.rar
(41.32 КБ) 220 скачиваний
Посмотрим, что выйдет в железе.
Последний раз редактировалось ru0aog 13 ноя 2015, 16:18, всего редактировалось 3 раза.
Свое изделие изъяна не имеет.
Аватара пользователя
ru0aog
Сообщения: 2193
Зарегистрирован: 31 янв 2013, 10:49
позывной: RU0AOG
CиБи позывной: Апрель
Имя: Станислав
Откуда: QTH locator: NO65JX # RDA KK-04
Контактная информация:

Re: Частотомер на ATMega8

Сообщение ru0aog » 12 ноя 2015, 23:17

Была у меня сборка со старого проекта. Прошил туда и всё получилось :)
Жаль, что мой Г4-151 не позволяет выставлять частоту с точностью до сотен герц, получается - либо не попал, либо мельтешит.
Вот я стою на стабильной точке:
DSCF3712.jpg
Отображение есть до 4 МГц входной частоты, но после 2,5 МГц точность сильно страдает.
Нужен делитель на 10, способный корректно поделить 25 МГц.
Из наших поищу ИЕ2, ИЕ4, ИЕ5...
Свое изделие изъяна не имеет.
Аватара пользователя
Sky
Geotelecom Team
Сообщения: 284
Зарегистрирован: 20 ноя 2012, 10:04
позывной: RU0AMM
CиБи позывной: Медведь
Имя: Максим
Контактная информация:

Re: Частотомер на ATMega8

Сообщение Sky » 12 ноя 2015, 23:33

74hc191 делит на 16, работает до 36мгц
Аватара пользователя
ru0aog
Сообщения: 2193
Зарегистрирован: 31 янв 2013, 10:49
позывной: RU0AOG
CиБи позывной: Апрель
Имя: Станислав
Откуда: QTH locator: NO65JX # RDA KK-04
Контактная информация:

Re: Частотомер на ATMega8

Сообщение ru0aog » 12 ноя 2015, 23:36

Покопался и нашёл К555ИЕ5.
Попробую на ней поделить, если живая.
Свое изделие изъяна не имеет.
Аватара пользователя
ru0aog
Сообщения: 2193
Зарегистрирован: 31 янв 2013, 10:49
позывной: RU0AOG
CиБи позывной: Апрель
Имя: Станислав
Откуда: QTH locator: NO65JX # RDA KK-04
Контактная информация:

Re: Частотомер на ATMega8

Сообщение ru0aog » 13 ноя 2015, 00:04

Хм, подпаял К555ИЕ5 на проводках - работает :D
но только до 15 МГц, чего мне, в принципе, достаточно.
Если надо будет пошустрее, то поставлю что-нибудь импортное из делителей.
Теоретически, если усложнить расчётную часть кода и ещё сократить обработку прерывания Т0, то можно поднять рабочую частоту до 40 МГц. Но это если сильно захочется :)

За точность частотомера Г4-151 не уверен. Потом проверю на плавном LC-генераторе.
Частота на выходе 15,924 МГц:
DSCF3716.jpg
Вот что кажет модуль:
DSCF3714.jpg
Схемку пока что особо не разрисовываю, примерно вот так:
1-21_SCH.JPG
R2 подбирал, чтобы при отключенной нагрузке на коллекторе было примерно половина напряжения питания.

Кстати, уровень сигнала на выходе генератора - 100 мВ.
Частотомер стабильно работает при снижении уровня до 50 мВ.
Чтобы корректно померить, уменьшил частоту до 8 МГц, не меняя уровня.
При таком сигнале атмега работает стабильно:
DSCF3718.jpg
На частоте 1 МГц работало даже при 10 мВ :)
Свое изделие изъяна не имеет.
Аватара пользователя
UB0AES
Сообщения: 2312
Зарегистрирован: 25 янв 2014, 10:01
позывной: UB0AES
CиБи позывной: портос
Имя: Олег
Откуда: Канск

Re: Частотомер на ATMega8

Сообщение UB0AES » 13 ноя 2015, 09:07

Да вроде есть проекты на ATMega8 и даже китаяца на них штампуют https://www.youtube.com/watch?v=xDC5N6PnFS4
Но когда охота что то свое это правильнее. :good:
Аватара пользователя
ru0aog
Сообщения: 2193
Зарегистрирован: 31 янв 2013, 10:49
позывной: RU0AOG
CиБи позывной: Апрель
Имя: Станислав
Откуда: QTH locator: NO65JX # RDA KK-04
Контактная информация:

Re: Частотомер на ATMega8

Сообщение ru0aog » 13 ноя 2015, 09:22

UB0AES, это немного не то, точнее, совсем не то.
Тем более, там частоту мерит не атмега, она только читает данные и выводит их на дисплей :)

Подправил название темы.
Для меня основное использование этой штуковины - цифровая шкала в походной КВ радиостанции. Диапазоны 160-80-40 метров.
Надо ещё дописать сложение/вычитание частоты ПЧ.
Остальное по желанию. Можно, например, сделать выход дешифратора диапазонов, АПЧГ или там ещё чего...
Последний раз редактировалось ru0aog 13 ноя 2015, 09:54, всего редактировалось 1 раз.
Свое изделие изъяна не имеет.
Аватара пользователя
UB0AES
Сообщения: 2312
Зарегистрирован: 25 янв 2014, 10:01
позывной: UB0AES
CиБи позывной: портос
Имя: Олег
Откуда: Канск

Re: Частотомер на ATMega8

Сообщение UB0AES » 13 ноя 2015, 09:36

Ага.
Аватара пользователя
ru0ab
Сообщения: 9805
Зарегистрирован: 15 ноя 2012, 17:21
позывной: RU0AB
CиБи позывной: Первый Граф Авенирыч
Имя: АвенирычЪ

Re: Частотомер /цифровая шкала/ на ATMega8

Сообщение ru0ab » 13 ноя 2015, 10:53

Напряжение питания, температура и напряжения выходных транзисторов, моЩемер, КСВметр ...
Аватара пользователя
ru0ab
Сообщения: 9805
Зарегистрирован: 15 ноя 2012, 17:21
позывной: RU0AB
CиБи позывной: Первый Граф Авенирыч
Имя: АвенирычЪ

Re: Частотомер /цифровая шкала/ на ATMega8

Сообщение ru0ab » 13 ноя 2015, 10:58

Станислав - коротко поясни для меня и просих лузеров - АТмегах это что ? Чем отличается от того что много. Только попроще, на пальцах, так, что бы даже я понял ... :shock:
Ответить