AFON // радиотехник affonya@mail.ru

Радиотехника · цифровая техника · с 2005

Схемы, контроллеры
и интерфейсы
в одном месте

«Познав радиотехнику — ты познаешь мир»

Материалы для инженера-радиотехника: микроконтроллеры, шины и интерфейсы, ПЛИС, программирование низкого и высокого уровня, связь и стандарты. То, что трудно найти в сети, — собрано здесь.

BASE//

Основы радиотехники

50

Базовые статьи по теории радиотехники: как сигнал переносится на несущую, как его принимают из эфира и как излучают антенной. Разбор с формулами, таблицами и расчётами. Раздел пополняется.

BASE.01
Модуляция сигналов

AM, FM, PM, QAM — спектр, полоса, помехоустойчивость, демодуляция

BASE.02
Радиоприём и супергетеродин

ПЧ, зеркальный канал, чувствительность, избирательность, SDR

BASE.03
Антенны и фидерный тракт

Типы антенн, КСВ, согласование, диаграмма Смита

BASE.04
Распространение радиоволн

Диапазоны, ионосфера, радиогоризонт, затухание

BASE.05
Фильтры сигналов

ФНЧ/ФВЧ/полосовые, Баттерворт, Чебышёв, LC и активные

BASE.06
Резонансные контуры

Резонанс, добротность, полоса, характеристическое сопротивление

BASE.07
Смесители частоты

Перемножение, сумма/разность, балансные, продукты, IP3

BASE.08
Генераторы сигналов

Баркгаузен, LC/RC/кварц, синтезаторы PLL и DDS

BASE.09
Усилители ВЧ и НЧ

Классы A/B/AB/C/D, обратная связь, МШУ, линейность

BASE.10
Детектирование сигналов

Диодный, синхронный, ЧМ-дискриминатор, PLL, I/Q

BASE.11
Резисторы

Номинал, допуск, мощность, маркировка, соединение

BASE.12
Конденсаторы

Ёмкость, напряжение, ЭПС, типы, маркировка 104

BASE.13
Катушки и дроссели

Индуктивность, добротность, ток насыщения, сердечники

BASE.14
Диоды

ВАХ, Шоттки, стабилитрон, варикап, светодиод

BASE.15
Биполярные транзисторы

npn/pnp, схемы ОЭ/ОБ/ОК, режимы, ключ и усилитель

BASE.16
Полевые транзисторы

MOSFET и JFET, пороговое напряжение, R_ds(on)

BASE.17
Кварцевые резонаторы

Пьезоэффект, резонансы, стабильность, TCXO/OCXO

BASE.18
Операционные усилители

Инвертирующий, повторитель, сумматор, интегратор

BASE.19
Цифровая логика

ТТЛ и КМОП, уровни, вентили, узлы

BASE.20
Оптоэлектроника

Светодиоды, фотоприёмники, оптопары, индикаторы

BASE.21
Программирование AVR на C

Порты, битовые операции, мигалка, fuse, прошивка ISP

BASE.22
Программирование PIC на C

MPLAB X, XC8, config-биты, порты TRIS/PORT, ICSP

BASE.23
STM32 и Cortex-M

32-битные ARM, периферия, DMA, HAL/LL/CMSIS

BASE.24
Arduino

Скетч, setup/loop, библиотеки, связь с AVR

BASE.25
Прерывания и таймеры

ISR, приоритеты, предделитель, сравнение, расчёт

BASE.26
АЦП и ЦАП

Разрядность, опорное, дискретизация, ШИМ как ЦАП

BASE.27
ШИМ (PWM)

Скважность, режимы, двигатели, LED, ЦАП, класс D

BASE.28
EEPROM и Flash

Хранение настроек, ресурс перезаписи, бутлоадер

BASE.29
UART и RS-232

Кадр, скорость в бодах, уровни, преобразователи

BASE.30
SPI

SCK/MOSI/MISO/CS, режимы CPOL/CPHA, скорость

BASE.31
Шина I²C

Две линии, адресация, ACK, подтягивающие резисторы

BASE.32
USB

Версии, дифф. пара, дескрипторы, классы, CDC

BASE.33
Шина CAN

Арбитраж по приоритету, кадр, CAN FD, терминаторы

BASE.34
1-Wire, RS-485, Modbus

Датчики, дифф. многоточка, протокол Modbus RTU/TCP

BASE.35
Ethernet для МК

MAC/PHY, W5500/ENC28J60, стек TCP/IP, IoT

BASE.36
VHDL

Entity/architecture, параллелизм, синтез и симуляция

BASE.37
Verilog

Module, always, wire/reg, сравнение с VHDL

BASE.38
ПЛИС: FPGA и CPLD

Архитектура LUT, маршрут синтез→трассировка→битстрим

BASE.39
Блоки питания

Линейные и импульсные, buck/boost/flyback, КПД

BASE.40
Стабилизаторы напряжения

7805, LM317, LDO, импульсные DC-DC, расчёт

BASE.41
Аккумуляторы и зарядка

Li-ion, NiMH, свинец, CC/CV, BMS, C-rate

BASE.42
Защита питания

Переполюсовка, TVS, варистор, предохранитель, PTC

BASE.43
Осциллограф

Развёртка, синхронизация, пробники, измерения

BASE.44
Измерительные приборы

Мультиметр, генератор, анализатор спектра, LCR

BASE.45
Пайка и монтаж

Припой, флюс, температура, THT и SMD, ошибки

BASE.46
Разводка ПП и ЭМС

Трассировка, земля, развязка, импеданс, помехи

BASE.47
Цифровая связь

Кодирование, коррекция ошибок, Шеннон, уплотнение

BASE.48
Bluetooth и BLE

Classic vs BLE, GATT, частотные скачки, модули

BASE.49
Wi-Fi модули

802.11, ESP8266/ESP32, STA/AP, TCP/IP, IoT

BASE.50
GSM/LTE модули

2G/LTE/NB-IoT, AT-команды, SIM800/SIM7600

PRJ//

Проекты на PIC (ассемблер)

50

Практические устройства на микроконтроллерах PIC с полным исходным кодом на ассемблере MPASM: задача, детали, схема подключения, алгоритм и проверенный листинг с комментариями. К каждому проекту — готовый HEX-файл прошивки.

PRJ.01
Мигающий светодиод

Порт на выход и программная задержка

PRJ.02
Бегущие огни

Сдвиг единицы по восьми светодиодам

PRJ.03
Кнопка и антидребезг

Опрос кнопки с подавлением дребезга

PRJ.04
Кнопка-триггер

Нажал — включил, нажал — выключил

PRJ.05
Огонь туда-обратно

Эффект Knight Rider на rlf/rrf

PRJ.06
Двоичный счётчик

Код 0…255 на линейке светодиодов

PRJ.07
Управление реле

Транзисторный ключ и обратный диод

PRJ.08
Генератор меандра 1 кГц

Расчёт задержки в машинных циклах

PRJ.09
7-сегментный индикатор

Таблица сегментов, вывод цифр 0…9

PRJ.10
Счётчик 0…99

Динамическая индикация и перенос десятков

PRJ.11
LCD HD44780

Инициализация в 4-битном режиме

PRJ.12
Бегущая строка 8×8

Кольцевой буфер и развёртка матрицы

PRJ.13
Прерывание по TMR0

Вектор 0x004, сохранение контекста

PRJ.14
Аппаратный ШИМ (CCP)

Модуль CCP1 на PIC16F877A

PRJ.15
Часы на прерывании

Минуты и секунды считает таймер

PRJ.16
Таймер с реле

Обратный отсчёт и отключение нагрузки

PRJ.17
Цифровой вольтметр

АЦП, перевод кода в вольты

PRJ.18
Термометр DS18B20

Протокол 1-Wire на ассемблере

PRJ.19
Пороговое реле

Встроенный компаратор и опорное

PRJ.20
Логгер в EEPROM

Запись показаний в энергонезависимую память

PRJ.21
Управление с ПК по UART

Текстовые команды включают нагрузку

PRJ.22
I²C и память 24C02

Программная шина, START/STOP, ACK

PRJ.23
ИК-пульт RC5

Декодирование команд телепульта

PRJ.24
Радиоканал 433 МГц

Преамбула, синхробайт, контрольная сумма

PRJ.25
Сервопривод SG90

Угол задаёт длительность импульса

PRJ.26
Клавиатура 4×4

Матричное сканирование шестнадцати клавиш

PRJ.27
Кодовый замок

Код в EEPROM, блокировка при ошибках

PRJ.28
Термостат

Уставка, гистерезис, защита от перегрева

PRJ//
Все проекты

Каталог проектов на ассемблере: схемы, листинги, готовые прошивки

AVR//

Проекты на AVR (ассемблер)

50

Практические устройства на микроконтроллерах AVR с полным исходным кодом на ассемблере: задача, детали, схема подключения, алгоритм и проверенный листинг с комментариями. К каждому проекту — готовый HEX-файл прошивки.

AVR.01
Мигающий светодиод

Стек, DDRB, команды sbi и cbi

AVR.02
Бегущие огни

Сдвиг картины командой lsl

AVR.03
Кнопка и антидребезг

Внутренняя подтяжка, чтение PIND

AVR.04
Кнопка-триггер

Инверсия бита через eor

AVR.05
Огонь туда-обратно

Сдвиги lsl и lsr в обе стороны

AVR.06
Двоичный счётчик

Код 0…255 и переполнение регистра

AVR.07
Управление реле

Транзисторный ключ и обратный диод

AVR.08
Генератор меандра

Расчёт задержки в тактах

AVR.09
7-сегментный индикатор

Таблица во flash и команда lpm

AVR.10
LCD HD44780

Инициализация в 4-битном режиме

AVR.11
Прерывание по таймеру

Вектор, SREG, sei и reti

AVR.12
Аппаратный ШИМ

Fast PWM на таймере T1

AVR.13
Часы в режиме CTC

Ровно секунда без подбора констант

AVR.14
Термометр LM35

Внутреннее опорное 2,56 В

AVR.15
EEPROM по I²C (TWI)

Старт, адресация, повторный старт, стоп

AVR.16
Сервопривод SG90

Fast PWM с вершиной ICR1, период 20 мс

AVR.17
Клавиатура 4×4

Сканирование строк, внутренние подтяжки

AVR.18
Термометр DS18B20

Протокол 1-Wire вручную по таймингам

AVR.19
Сон и пробуждение

Power-down, микроамперы, INT0

AVR//
Все проекты

Каталог проектов на ассемблере AVR: схемы, листинги, прошивки HEX

VHD//

Проекты на VHDL

50

Практические модули для программируемой логики на языке VHDL: задача, алгоритм, полный код с построчными комментариями и разбор особенностей языка. Весь код проверен компилятором и готов к синтезу.

VHD.01
Логические вентили

Entity, architecture, параллельные операторы

VHD.02
Мультиплексор 4 в 1

Оператор with-select и векторы

VHD.03
Дешифратор 3 в 8

Процесс, case, список чувствительности

VHD.04
D-триггер и регистр

rising_edge и асинхронный сброс

VHD.05
Двоичный счётчик

numeric_std, unsigned, приведение типов

VHD.06
Сдвиговый регистр

Конкатенация и параллельная загрузка

VHD.07
Делитель частоты

Из 50 МГц в 1 Гц, параметр generic

VHD.08
Конечный автомат

Перечислимый тип и два процесса

VHD.09
Семисегментный дешифратор

Таблица кодов, общий анод

VHD.10
ШИМ на ПЛИС

Счётчик и компаратор, generic

VHD.11
Передатчик UART

Автомат кадра и делитель скорости

VHD.12
Буфер FIFO

Кольцевая очередь, empty и full

VHD.13
Частотомер

Счёт импульсов в секундном окне

VHD.14
Генератор DDS

Накопитель фазы и таблица синуса

VHD.15
Развёртка VGA

640×480, hsync/vsync, координаты

VHD//
Все проекты

Каталог модулей на VHDL: код, пояснения, файлы .vhd

SW//

Программирование

04

Программирование для радиотехники и цифровой техники: среды C++Builder 6 и Delphi 6, язык JavaScript. В разделе — приёмы разработки прикладных программ, работы с портами и устройствами, а также учебные материалы и литература для самостоятельного освоения.

MCU//

Микроконтроллеры и ПЛИС

05

Микроконтроллеры PIC (Microchip) и AVR (Atmel): программирование, ассемблер, среды MPLAB и AVR Studio, обвязка и прошивка. Здесь же программируемая логика — ПЛИС (FPGA) и языки описания аппаратуры VHDL и AHDL для проектирования цифровых схем.

TL//

Онлайн-инструменты

22

Калькуляторы и справочники для расчётов по электронике и микроконтроллерам — прямо в браузере, без установки: маркировка резисторов, закон Ома, таймеры, UART, распиновки, ASCII, CRC и осциллограф.

TL.01
Резистор по цвету

Номинал, допуск и ТКС по цветным полосам

TL.02
Закон Ома

U · I · R · P по любым двум величинам

TL.03
Резистор для LED

Гасящий резистор и ближайший номинал E24

TL.04
Таймер NE555

Частота, период и скважность генератора

TL.05
UART / кварц

Значение UBRR для AVR и ошибка скорости

TL.06
Распиновки

COM, LPT, USB, SPI, I²C, JTAG

TL.07
Таблица ASCII

128 символов с быстрым поиском

TL.08
Осциллограф

Генератор сигналов на canvas

TL.09
Азбука Морзе

Текст ↔ код со звуком, латиница и кириллица

TL.10
Карта Карно

Минимизация логики на 2–4 переменных

TL.11
Конденсатор

Маркировка 104, буквы допуска → ёмкость

TL.12
Стабилитрон

Балластный резистор и мощности

TL.13
Цоколёвки микросхем

NE555, 7805, LM317, 74xx, ATmega…

TL.14
Антенна по частоте

Диполь, четвертьволновый штырь, рамка

TL.15
dBm · Вт · КСВ

Мощности, уровни, КСВ и обратные потери

TL.16
CAN bit timing

BRP и сегменты под битрейт шины

TL.17
Глоссарий

Термины радиотехники с поиском

TL.18
Диаграмма Смита

Импеданс и авторасчёт LC-согласования

TL.19
Временные диаграммы

Осциллограммы шин из текста (WaveDrom)

TL.20
АЧХ / ФЧХ (Bode)

Отклик фильтра по частоте с фазой

TL.21
7-сегментный индикатор

Сегменты ↔ HEX, катод/анод

TL.22
Все инструменты

Хаб: калькуляторы, справочники, поиск и карта тем

RF//

Связь и телеком

06

Связь и телекоммуникации: сотовая связь GSM и управление AT-командами, беспроводной интерфейс Bluetooth, работа с телефонной линией, частотные планы и распределение радиочастот, а также схемотехника домофонных систем. Справочные материалы для радиоинженера.

DOC//

Документация и драйверы

04

Техническая документация и драйверы: стандарты и нормативы в PDF, драйверы устройств для Windows NT, описания плат и карт расширения, подборка FTP-архивов с материалами по радиотехнике. Всё необходимое для работы и учёбы собрано в одном месте.

SOFT//

Проги для РЭА

04

Полезные программы для радиоэлектронной аппаратуры (РЭА): расчёт номинала резистора по цветовой маркировке, расчёт трансформатора, программный осциллограф и расчёт фильтров. Небольшие утилиты для проектирования и ремонта электроники — доступны для скачивания.