Книга представляет собой учебник по курсу с одноименным названием, который читается авторами в течение многих лет студентам радиотехнических специальностей в Сибирском государственном университете телекоммуникаций и информатики и Новосибирском государственном техническом университете. Даны основы проектирования цифровых устройств с упором на создание принципиальных схем устройств связи. Рассмотрены вопросы аналого-цифрового преобразования и обработки сигналов, в частности, случаи изменения частоты дискретизации цифрового сигнала и узлы, позволяющие изменять эту частоту. В качестве примеров цифровых устройств рассмотрены такие современные устройства, как схемы прямого цифрового синтеза DDS, цифрового преобразования частоты вверх DUC, цифрового понижения частоты приема DDC. Изложены основы микропроцессорной техники и особенности работы микроконтроллеров на примере семейства MCS-51. Даны основы программирования для микроконтроллеров на языках С и ассемблер. Две основные части курса иллюстрируются примером разработки одного и того же устройства — часов, на цифровых микросхемах и на микроконтроллере.
Для студентов, инженеров и специалистов радиотехнических специальностей.
Author(s): Микушин А.В., Сажнев А.М., Сединин В.И.
Publisher: БХВ-Петербург
Year: 2010
Language: Russian
Tags: Приборостроение;Схемотехника;
Введение
ЧАСТЬ I. ОСНОВЫ ЦИФРОВОЙ ТЕХНИКИ
Глава 1. Параметры цифровых микросхем
Уровни логического нуля и единицы
Входные и выходные токи цифровых микросхем
Параметры, определяющие быстродействие цифровых микросхем
Описание логической функции цифровых схем
Итоги
Глава 2. Основные логические функции и элементы
Функция «НЕ», инвертор
Функция «И», логическое умножение
Функция «ИЛИ», логическое сложение
Итоги
Глава 3. Основные схемотехнические решения цифровых микросхем
Диодно-транзисторная логика (ДТЛ)
Транзисторно-транзисторная логика (ТТЛ)
Логические уровни ТТЛ-микросхем
Семейства ТТЛ-микросхем
Логика на комплементарных МОП-транзисторах (КМДП)
Особенности применения КМОП-микросхем
Логические уровни КМОП-микросхем
Семейства КМОП-микросхем
Итоги
Глава 4. Согласование цифровых микросхем между собой
Согласование цифровых микросхем из различных серий между собой
Согласование микросхем по току
Согласование микросхем с различным напряжением питания
Согласование 3- и 5-вольтовых ТТЛ-микросхем
Согласование 3-вольтовых ТТЛ-микросхем и 2,5-вольтовых КМОП-микросхем
Регенерация цифрового сигнала
Итоги
Глава 5. Арифметические основы цифровой техники
Системы счисления
Десятичная система счисления
Двоичная система счисления
Восьмеричная система счисления
Шестнадцатеричная система счисления
Преобразование чисел из одной системы счисления в другую
Преобразование целой части числа
Преобразование дробной части числа
Итоги
Глава 6. Комбинационные цифровые схемы
Законы алгебры логики
Закон одинарных элементов
Законы отрицания
Комбинационные законы
Построение цифровой схемы по произвольной таблице истинности
Декодеры
Десятичный дешифратор
Семисегментный дешифратор
Шифраторы
Мультиплексоры
Особенности построения мультиплексоров на ТТЛ-элементах
Особенности построения мультиплексоров на КМОП-элементах
Демультиплексоры
Итоги
Глава 7. Генераторы
Усилительные параметры КМОП-инвертора
Осцилляторные схемы
Мультивибраторы
Особенности кварцевой стабилизации частоты генераторов
Одновибраторы
Укорачивающие одновибраторы
Расширяющие одновибраторы
Применение одновибраторов
Итоги
Глава 8. Цифровые схемы последовательностного типа
Триггеры
RS-триггеры
Синхронные RS-триггеры
Статические D-триггеры
Явление метастабильности
Динамические D-триггеры
Т-триггер
JK-триггер
Регистры
Параллельные регистры
Последовательные регистры
Универсальные регистры
Счетчики
Двоичные суммирующие асинхронные счетчики
Двоичные вычитающие асинхронные счетчики
Недвоичные счетчики с обратной связью
Недвоичные счетчики с предварительной связью
Синхронные счетчики
Синхронные счетчики на регистрах сдвига
Синхронные двоичные счетчики
Итоги
Глава 9. Индикаторы
Малогабаритные лампочки накаливания
Расчет транзисторного ключа
Газоразрядные лампы
Светодиодные индикаторы
Схемы подключения светодиодных индикаторов
Виды светодиодных индикаторов
Динамическая индикация
Жидкокристаллические индикаторы
Принципы работы жидкокристаллических индикаторов
Режимы работы жидкокристаллических индикаторов
Параметры жидкокристаллических индикаторов
Формирование цветного изображения на жидкокристаллических индикаторах
Формирование управляющего напряжения для жидкокристаллического индикатора
Особенности динамической индикации в жидкокристаллических индикаторах
Итоги
ЧАСТЬ II. ПРИМЕРЫ РЕАЛИЗАЦИИ ЦИФРОВЫХ УСТРОЙСТВ
Глава 10. Разработка цифрового устройства на примере электронных часов
Разработка структурной схемы часов
Разработка принципиальной схемы часов
Разработка схемы генератора эталонных интервалов времени
Разработка схемы счетчика интервалов времени
Разработка принципиальной схемы блока индикации
Разработка принципиальной схемы блока коррекции времени
Итоги
Глава 11. Синхронные последовательные порты
SSI-интерфейс (DSP-порт)
SPI-порт
I2С-порт
Итоги
Глава 12. Синтезаторы частоты
Схемы фазовой подстройки частоты
Схемы определения ошибки по частоте
Цифровой фазовый детектор
Фазовый компаратор
Умножители частоты
Частотные детекторы, построенные на основе ФАПЧ
Итоги
ЧАСТЬ III. СХЕМЫ ЦИФРОВОЙ ОБРАБОТКИ СИГНАЛОВ
Глава 13. Цифровая обработка сигналов
Структурная схема цифрового устройства обработки сигнала
Особенности аналого-цифрового и цифроаналогового преобразования
Квантование аналогового сигнала по времени
Погрешности дискретизатора
Погрешность хранения
Погрешность выборки
Погрешность временного положения стробирующего импульса
Фильтры для устранения эффекта наложения спектров (Антиалиасинговые фильтры)
Дискретизация сигнала на промежуточной частоте (субдискретизация)
Статическая передаточная функция АЦП и ЦАП и погрешности по постоянному току
Итоги
Глава 14. Виды аналого-цифровых преобразователей
Параллельные АЦП
Последовательно-параллельные АЦП
АЦП последовательного приближения
Сигма-дельта-АЦП
Итоги
Глава 15. Основные блоки микросхем цифровой обработки сигналов
Двоичные сумматоры
Цифровые умножители
Постоянные запоминающие устройства
Масочное ПЗУ
Программируемые постоянные запоминающие устройства
ПЗУ с ультрафиолетовым стиранием
ПЗУ с электрическим стиранием информации
Статические оперативные запоминающие устройства (ОЗУ)
Цифровые фильтры
Схемная реализация нерекурсивного фильтра
Однородный цифровой фильтр
Итоги
Глава 16. Реализация передатчиков радиосигналов в цифровом виде
Генераторы с цифровым управлением (NCO)
Микросхемы прямого цифрового синтеза (DDS)
Квадратурные модуляторы (Up converter)
Интерполирующие цифровые фильтры
Интерполирующий фильтр с конечной импульсной характеристикой
Параллельная реализация интерполирующего фильтра с конечной импульсной характеристикой
Интерполирующий однородный фильтр
Итоги
Глава 17. Реализация радиоприемников в цифровом виде
Цифровые преобразователи частоты
Цифровой квадратурный демодулятор
Децимирующие фильтры
Децимирующий фильтр с конечной импульсной характеристикой
Однородный децимирующий фильтр
Итоги
ЧАСТЬ IV. МИКРОПРОЦЕССОРЫ
Глава 18. Принципы работы микропроцессора
Виды двоичных кодов
Беззнаковые двоичные коды
Прямые знаковые двоичные коды
Знаковые обратные двоичные коды
Знаковые дополнительные двоичные коды
Представление рациональных чисел в двоичном коде
с фиксированной запятой
Представление рациональных чисел в двоичном коде
с плавающей запятой
Представление десятичных чисел
Суммирование двоично-десятичных чисел
Представление текстовых данных в памяти процессора
Арифметико-логические устройства
Классификация микропроцессоров
Типовые структуры операционного блока микропроцессора
Команды микропроцессора
Операционный блок микропроцессора
Блок микропрограммного управления
Микропрограммирование
Итоги
Глава 19. Принципы работы микропроцессорной системы
Подключение внешних устройств к микропроцессору
Системная шина
Адресное пространство микропроцессорного устройства
Принципы построения параллельного порта
Параллельный порт вывода
Параллельный порт ввода
Параллельный порт ввода-вывода
Примеры использования параллельных портов
Ввод информации с клавиатуры
Обмен данными между микропроцессорами при помощи параллельных портов
Принципы построения последовательного порта
Синхронные последовательные порты
Асинхронные последовательные порты
Принципы построения таймеров
Суммирующие и вычитающие таймеры
Таймеры с автозагрузкой
Реверсивные таймеры
Свободнобегущие таймеры
Способы расширения адресного пространства микропроцессора
Метод страничного расширения адресного пространства
Метод сегментного расширения адресного пространства
Метод расширения адресного пространства при помощи окон
Динамические оперативные запоминающие устройства (ОЗУ)
Согласование быстродействия системной памяти и микропроцессора (кэш-память)
Итоги
Глава 20. Принципы работы микроконтроллеров
Семейство микроконтроллеров MCS-51
Архитектура микроконтроллеров MCS-51
Система команд микроконтроллеров MCS-51
Арифметические команды
Логические команды с байтовыми переменными
Битовые команды
Команды ветвления и передачи управления
Способы адресации операндов
Устройство параллельных портов микроконтроллеров MCS-51
Особенности построения памяти микроконтроллеров семейства MCS-51
Память программ микроконтроллеров MCS-51
Внешняя память данных микроконтроллеров MCS-51
Внутренняя память данных микроконтроллеров MCS-51
Регистры специальных функций
Внутренние таймеры микроконтроллера, особенности их применения
Режим 0
Режим 1
Режим 2
Режим 3
Управление таймерами/счетчиками
Использование таймера в качестве измерителя длительности импульсов
Использование таймера в качестве частотомера
Последовательный порт микроконтроллеров семейства MCS-51
Скорость приема/передачи информации через последовательный порт
Режим 0. Синхронный режим работы последовательного порта
Режим 1. Асинхронный 8-битовый режим
Режим 2. Асинхронный 9-битовый режим с фиксированной скоростью передачи
Режим 3. Асинхронный 9-битовый режим
Итоги
ЧАСТЬ V. ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ
Глава 21. Принципы создания программ для микроконтроллеров
Виды программ-трансляторов
Виды компиляторов
Применение подпрограмм
Стек, его организация и структура
Подпрограммы-процедуры и подпрограммы-функции
Применение комментариев
Структурное программирование
Линейная цепочка операторов
Условное выполнение операторов
Конструкция управления циклическим выполнением оператора с проверкой условия после тела цикла
Структурная конструкция циклического выполнения оператора с проверкой условия до тела цикла
Понятие многофайлового и многомодульного программирования
Многофайловые программы
Многомодульные программы
Программа-монитор
Использование таймера для организации параллельных программных потоков
Использование прерываний для ввода информации о кратковременных сигналах и событиях, наступающих в произвольный момент времени
Итоги
Применение С-51
Отладка программ
Структура программ С-51
Идентификаторы
Ключевые слова
Константы
Выражения в операторах языка программирования С-51
Приоритеты выполнения операций
Операторы объявления
Исполняемые операторы
Оператор присваивания
Условный оператор
Структурный оператор {}
Оператор цикла/for
Оператор цикла с проверкой условия до тела цикла while
Оператор цикла с проверкой условия после тела цикла do while
Оператор break
Оператор continue
Оператор выбора switch
Оператор безусловного перехода goto
Оператор выражения
Оператор возвращения из подпрограммы return
Пустой оператор
Объявление переменных в языке программирования С-51
Категории типов данных
Целые типы данных
Числа с плавающей запятой
Переменные перечислимого типа
Структуры
Поля битов
Объединения (смеси)
Объявление указателей в языке программирования С-51
Нетипизированные указатели
Память-зависимые указатели
Объявление новых типов переменных
Инициализация данных
Использование функций в языке программирования С-51
Определение функций
Параметры функций
Предварительное объявление подпрограмм
Вызов функций
Рекурсивный вызов подпрограмм
Подпрограммы обработки прерываний
Области действия переменных и подпрограмм
Итоги
Исходный текст программы на языке программирования ASM-51
Идентификаторы
Ключевые слова
Встроенные имена
Определяемые имена
Числа и литеральные строки
Управляющие команды
Реализация подпрограмм на языке ASM-51
Реализация подпрограмм-процедур на языке ASM-51
Передача переменных-параметров в подпрограмму
Реализация подпрограмм-функций на языке ASM-51
Реализация подпрограмм обработки прерываний на языке ASM-51
Структурное программирование на языке ASM-51
Многомодульные программы
Использование сегментов в языке программирования ассемблер
Итоги
Глава 24. Работа с интегрированной средой программирования
Создание программных проектов
Создание программного проекта в интегрированной среде программирования keil-C
Настройка свойств программного проекта в интегрированной среде программирования keil-C
Работа с программным проектом в интегрированной среде программирования keil-C
Трансляция программных модулей и программных проектов
Трансляция программных модулей
Связывание объектных модулей и получение загрузочного файла
Трансляция программных проектов
Применение интегрированной среды программирования keil-C для трансляции программного проекта
Отладка программ во встроенном отладчике программ
Способы отладки программ
Использование встроенного отладчика программ
Итоги
Глава 25. Пример реализации микроконтроллерного устройства
Структурная схема часов
Разработка принципиальной схемы
Разработка программы устройства
Разработка генератора секундных импульсов
Разработка подпрограммы часов
Разработка подпрограммы индикации
Разработка подпрограммы семисегментного дешифратора
Разработка блока коррекции часов
Итоги
ПРИЛОЖЕНИЯ
Приложение 1. Система команд микроконтроллеров семейства MCS-51
Приложение 2. Таблица ASCII-кодов
Список литературы
Предметный указатель