Название: Программирование на языке С для AVR и PIC микроконтроллеров, 2-е издание + CD
Издательство: МК-Пресс, КОРОНА-ВЕК
Автор: Ю.А. Шпак
ISBN: 978-966-8806-67-4, 978-5-7931-0842-3
Год: 2011
Страниц: 544
Формат: djvu
Размер: 700 Мб
Язык: русский
О книге:Книжка
Программирование на языке С для AVR и PIC микроконтроллеров посвящается программированию на языке C, как микроконтроллеров AVR с применением компиляторов CodeVisionAVR и WinAVR, так и микроконтроллеров PIC с применением mikroC, CCS-PICC и СЗО/32. В ней дано аппаратное обеспечение, архитектура и восьмиразрядных микроконтроллеров PIC и AVR, и семейств ATxmega, PIC32 и PIC24 и многое другое. На CD, прилагаемом к ней, приведены технические описания микроконтроллеров и устройств, представленных в книге, примеры программ и установочные пакеты программных средств.
ПРЕДИСЛОВИЕ КО 2-МУ ИЗДАНИЮ
ВВЕДЕНИЕ
ЧАСТЬ I. АРХИТЕКТУРА МИКРОКОНТРОЛЛЕРОВ AVR
ГЛАВА 1. ВОСЬМИРАЗРЯДНЫЕ МИКРОКОНТРОЛЛЕРЫ AYR
СЕМЕЙСТВА ВОСЬМИРАЗРЯДНЫХ МИКРОКОНТРОЛЛЕРОВ AVR
ОТЛАДОЧНАЯ ПЛАТА
Платы STK500 и STK600
СХЕМА БАЗОВОГО МОНТАЖА
СТРУКТУРА МИКРОКОНТРОЛЛЕРОВ AYR
Организация памяти
Память SRAM
Память программ
Память данных типа EEPROM
Порты
Подтягивающее сопротивление
Регистры управления портом
Таймеры/счетчики
Т/СО
T/C1
Т/С2
Сторожевой таймер
Обработка прерываний
Управление прерываниями
Сброс
"Спящие" режимы процессора
Последовательный ввод/вывод
Приемопередатчик UART
Приемопередатчик USART
Синхронная передача данных по интерфейсу SPI
Работа приемопередатчика US ART в режиме SPI
Синхронная передача данных по интерфейсу I2C (TWI)
Универсальный последовательный интерфейс USI
Модули последовательного ввода/вывода в семействах AT90S, ATtiny и ATmega
Аналого-цифровое преобразование
Встроенный аналоговый компаратор
ПРОГРАММИРОВАНИЕ ПАМЯТИ
Разряды предохранения
Параллельное программирование
Переход в режим параллельного программирования
Очистка кристалла
Программирование и чтение памяти программ
Программирование разрядов блокировки и предохранения
Последовательное программирование
ТЕХНОЛОГИЯ PICOPOWER
ГЛАВА 2. СЕМЕЙСТВО AVR ATXMEGA
ОБЗОР ВОЗМОЖНОСТЕЙ МИКРОКОНТРОЛЛЕРОВ ATXMEGA А
ОРГАНИЗАЦИЯ ПАМЯТИ СЕМЕЙСТВА ATXMEGA
Область ввода/вывода семейства ATxmega
Арбитраж шины данных
Память программ
КОНТРОЛЛЕР ПРЯМОГО ДОСТУПА К ПАМЯТИ
СИСТЕМА ОБРАБОТКИ СОБЫТИЙ
Генерирование событий вручную
Фильтрация
Квадратурный дешифратор
СИСТЕМА СИНХРОНИЗАЦИИ
Выбор источника тактового сигнала системной синхронизации
СЧЕТЧИКИ РЕАЛЬНОГО ВРЕМЕНИ
Счетчик RTC
Счетчик RTC32
МОДУЛЬ ПИТАНИЯ ОТ БАТАРЕИ
ОБРАБОТКА ПРЕРЫВАНИЙ
Немаскируемые прерывания
Регистр управления контроллером прерываний
АНАЛОГО-ЦИФРОВОЕ ПРЕОБРАЗОВАНИЕ
Конфигурирование АЦП
Выбор разрешения преобразования
Выбор очередности преобразований в каналах
Выбор режима измерения
Выбор опорного напряжения
Выбор коэффициента деления частоты тактирования
Результаты измерения
Прерывание от АЦП
ЦИФРО-АНАЛОГОВОЕ ПРЕОБРАЗОВАНИЕ
Начало преобразования
Ограничения на время преобразования
АНАЛОГОВЫЙ КОМПАРАТОР
Режимы работы компаратора
СРЕДСТВА ШИФРОВАНИЯ
Модуль шифрования AES
МОДУЛЬ ОБМЕНА ДАННЫМИ ПО ИНФРАКРАСНОМУ КАНАЛУ
ЧАСТЬ II. КОМПИЛЯТОРЫ И СРЕДСТВА РАЗРАБОТКИ ДЛЯ МИКРОКОНТРОЛЛЕРОВ AVR
ГЛАВА 3. КОМПИЛЯТОР WINAVR
ГЛАВА 4. СРЕДА РАЗРАБОТКИ AVR STUDIO
ЭМУЛЯЦИЯ
Окно MEMORY
Окно REGISTER
Окно WATCH
ОТЛАДКА ПРОГРАММЫ
НАСТРОЙКА ПАРАМЕТРОВ ИМИТАТОРА
СОЗДАНИЕ ПРОЕКТА И КОМПИЛЯЦИЯ ПРОГРАММЫ
Компиляция проекта
ГЛАВА 5. СРЕДА РАЗРАБОТКИ CODEVISIONAVR
КОМПИЛЯЦИЯ И ПОСТРОЕНИЕ ПРОЕКТА
СОЗДАНИЕ ПРОЕКТА С ПОМОЩЬЮ МАСТЕРА CODEWIZARDAVR
Сохранение и открытие проекта CodeWizardAVR
СОЗДАНИЕ НОВЫХ ФАЙЛОВ С ИСХОДНЫМ КОДОМ
ОТЛАДКА ПРОГРАММЫ
Использование терминала
ГЛАВА 6. ПРОГРАММАТОРЫ ДЛЯ МИКРОКОНТРОЛЛЕРОВ AVR
ПРОГРАММНЫЕ СРЕДСТВА ДЛЯ ПРОГРАММИРОВАНИЯ МИКРОКОНТРОЛЛЕРОВ
Программирование устройства в среде A VR Studio 4
Программирование устройства в среде CodeVisionAVR
ЧАСТЬ 111. АРХИТЕКТУРА МИКРОКОНТРОЛЛЕРОВ PIC
ГДАВА 7. ВОСЬМИРАЗРЯДНЫЕ МИКРОКОНТРОЛЛЕРЫ PIC
ОБЩИЕ АСПЕКТЫ АРХИТЕКТУРЫ ВОСЬМИРАЗРЯДНЫХ МИКРОКОНТРОЛЛЕРОВ PIC
Организация памяти
Организация тактирования
Порты
Таймеры
TMR0 и сторожевой таймер
TMR1
TMR2
Модуль ССР
Обработка прерываний
Микроконтроллеры серии Р1С17Сх
Микроконтроллеры серии Р1С18Сх
Сброс
Последовательный обмен данными
Приемопередатчик USART
Синхронная передача данных по интерфейсу SPI
Синхронная передача данных по интерфейсу 12С
Аналого-цифровое преобразование
Встроенный аналоговый компаратор
СЕМЕЙСТВО МИКРОКОНТРОЛЛЕРОВ PIC16
Микроконтроллер 16F84A
Регистр состояния
Организация памяти
Слово конфигурации
Память EEPROM
МИКРОКОНТРОЛЛЕРЫ СЕРИИ 12F50X
ГЛАВА 8. СЕМЕЙСТВО PIC18F
ОРГАНИЗАЦИЯ ПАМЯТИ
Конфигурационные регистры
ОРГАНИЗАЦИЯ ТАКТИРОВАНИЯ
Внутренний осциллятор
Переключение источника тактирования
ТАЙМЕРЫ
TMR0
TMR1
TMR3
АЦП:
ОБРАБОТКА ПРЕРЫВАНИЙ
ГЛАВА 9. СЕМЕЙСТВО PIC24
ПОРТЫ
ТАЙМЕРЫ
ПРЕРЫВАНИЯ
Вложение прерываний
Системные прерывания
Окно PROGRAM SPACE VISIBILITY
ИНТЕРФЕЙС SPI
ПОРТ РМР
АЦП
МОДУЛЬ CTMU
Измерение заряда конденсатора
Измерение времени
Формирование импульсных последовательностей и задержек
ГЛАВА 10. СЕМЕЙСТВО PIC32
ПОРТЫ
ТАЙМЕРЫ
СИСТЕМНАЯ ШИНА
ОРГАНИЗАЦИЯ ПАМЯТИ
ПРЕРЫВАНИЯ И ИСКЛЮЧЕНИЯ
СИСТЕМА ТАКТИРОВАНИЯ
ИНТЕРФЕЙС SPI
ПОРТ РМР
АЦП
МОДУЛЬ СРАВНЕНИЯ НА ВЫХОДЕ
ЧАСТЬ IV. КОМПИЛЯТОРЫ И СРЕДСТВА РАЗРАБОТКИ ДЛЯ МИКРОКОНТРОЛЛЕРОВ PIC
ГЛАВА 11. КОМПИЛЯТОР CCS-PICC
СОЗДАНИЕ ПРОЕКТОВ CCS-PICC ВРУЧНУЮ
СОЗДАНИЕ ПРОЕКТОВ CCS-PICC с помощью PIC WIZARD
СОЗДАНИЕ ПРОЕКТОВ CCS-PICC с помощью PIC24 WIZARD
ОТКРЫТИЕ И ДОБАВЛЕНИЕ В ПРОЕКТ ФАЙЛОВ С ИСХОДНЫМ КОДОМ КОМПИЛЯЦИЯ ПРОЕКТА
МЕНЮ TOOLS
ГЛАВА 12. ЭМУЛЯЦИЯ И ОТЛАДКА ПРОГРАММ В СРЕДЕ MPLAB
РАБОЧАЯ ОБЛАСТЬ И ПРОЕКТ MPLAB
КОМПИЛЯЦИЯ ПОД УПРАВЛЕНИЕМ MPLAB
НАСТРОЙКА РЕЖИМА ОТЛАДКИ/ЭМУЛЯЦИИ
РАБОТА В РЕЖИМЕ ОТЛАДКИ/ЭМУЛЯЦИИ
ОКНА ОТЛАДЧИКА
ГЛАВА 13. КОМПИЛЯТОР MIKROC
СОЗДАНИЕ ПРОЕКТА MIKROC
Компиляция ПРОЕКТА
ДОБАВЛЕНИЕ В ПРОЕКТ ФАЙЛОВ С ИСХОДНЫМ КОДОМ
ЭМУЛЯЦИЯ ВЫПОЛНЕНИЯ ПРОГРАММЫ
ВСПОМОГАТЕЛЬНЫЕ ИНСТРУМЕНТЫ СРЕДЫ MIKROC
ГЛАВА 14. КОМПИЛЯТОРЫ СЗО И С32
КОМПИЛЯТОР СЗО
КОМПИЛЯТОР С32
ГЛАВА 15. ПРОГРАММАТОРЫ ДЛЯ МИКРОКОНТРОЛЛЕРОВ PIC
ПРОГРАММНЫЕ СРЕДСТВА ДЛЯ ПРОГРАММИРОВАНИЯ МИКРОКОНТРОЛЛЕРОВ
Программирование устройства в среде mikroC
ЧАСТЬ V. ЯЗЫК С И ДИРЕКТИВЫ ПРЕПРОЦЕССОРА
ГЛАВА 16. Основы ЯЗЫКА С
ВВОДНЫЕ ПОНЯТИЯ
СТРУКТУРА ПРОГРАММЫ НА С
Типы ДАННЫХ, ПЕРЕМЕННЫЕ, КОНСТАНТЫ
Правила преобразований из одной системы счисления в другую
Тип char
Пользовательские типы
Переменные
Область видимости переменных
Константы
Перечислимые типы
Приведение типов
Оператор sizeof
ФУНКЦИИ
Возвращаемые значения
Прототипы функций
Классы памяти при объявлении локальных переменных
Рекурсия
СТРУКТУРЫ
УКАЗАТЕЛИ И АДРЕСА ПЕРЕМЕННЫХ
Передача в функции параметров по ссылке
Указатели на структуры
МАССИВЫ И СТРОКИ
Строки
Многомерные массивы
ОПЕРАТОРЫ ВЕТВЛЕНИЯ
Оператор if-else
Условные выражения
Оператор switch-case
ЦИКЛИЧЕСКИЕ КОНСТРУКЦИИ
Конструкция while
Конструкция for
Конструкция do-while
Организация бесконечных циклов
Операторы break и continue
СТАНДАРТНЫЕ ФУНКЦИИ ВВОДА/ВЫВОДА
Ввод/вывод символов с помощью функций getcharQ и putcharQ
Функции вывода строк putsQ и printfO
Функции ввода строк getsQ и scanfO
ДИРЕКТИВЫ ПРЕПРОЦЕССОРА
Директива #include
Директива Mefine
Директивы условной компиляции
Директива terror
Директива ftpragma компилятора CodeVisionA VR
Директивы, характерные для компилятора CCS-PICC.
Директива #bit
Директива #byte
Директива #case
Директива #device
Директива #fiise
Директива #locate
Директива #org
Директива #opt
Директива #priority
Директива #reserve
Директива #г6ш
Директива #type
Директива #use delay
Директива #use xxxjo
Директива #use i2c
Директива #use rs232
Директива #zero_ram
ОБРАБОТКА ПРЕРЫВАНИЙ
Обработка прерываний в среде WinA VR
Обработка прерываний в среде CodeVisionAVR
Обработка прерываний в среде CCS-PICC
Обработка прерываний в среде mikroC
Обработка прерываний в среде С30
Обработка прерываний в среде С32
ИСПОЛНЕНИЕ АССЕМБЛЕРНОГО КОДА
Использование ассемблера в компиляторе WinAVR
Ассемблерный код
Входные и выходные операнды
Резервирование регистров
Использование ассемблера в компиляторе CodeVisionAVR
Использование ассемблера в компиляторе CCS-PICC
Использование ассемблера в компиляторе mikroC.
Использование ассемблера в компиляторах СЗО и С32
ГЛАВА 17. ФУНКЦИИ И МАКРОСЫ ЯЗЫКА С для РАЗЛИЧНЫХ КОМПИЛЯТОРОВ
СТАНДАРТНЫЕ ФУНКЦИИ ЯЗЫКА С
Функции для работы со строками
Функции для работы с символами
Функции для работы со случайными числами
Функции для работы с памятью
ФУНКЦИИ И МАКРОСЫ КОМПИЛЯТОРА WIN AVR
Математические макросы и функции
Функции для работы со строками
Функции для работы с символами
Макросы и функции для организации ввода/вывода
Функции управления микроконтроллером
Макросы для работы со сторожевым таймером
Функции для работы со случайными числами
Функции для работы с памятью
Макросы для обработки прерываний.
Макросы и функции для работы с памятью EEPROM.
ФУНКЦИИ И МАКРОСЫ КОМПИЛЯТОРА CODEVISIONAVR
Математические макросы и функции
Функции для работы со строками
Функции для работы с символами
Функции управления микроконтроллером
Функции для организации ввода/вывода.
Функции для работы с памятью
Функции для работы с интерфейсом fC
ФУНКЦИИ И МАКРОСЫ КОМПИЛЯТОРА CCS-PICC
Математические макросы
Функции для работы со строками
Функции для организации ввода/вывода.
Функции управления микроконтроллером
Функции для работы с таймерами и модулем ССР
Функции для работы с разрядами и памятью
Функции для работы с памятью EEPROM
Функции для работы с интерфейсом SPI
Функции для работы с интерфейсом PSP
Функции для работы с интерфейсом fC
Функции для работы с аналоговыми сигналами
ФУНКЦИИ КОМПИЛЯТОРА MIKROC
Математические функции
Функции для работы со строками
Функции преобразований
Функции управления микроконтроллером
Функции для работы с периферийными устройствами
Функции для работы с памятью EEPROMu Flash
Функции для работы с интерфейсом fC
Функции для работы с интерфейсом SPI
ЧАСТЬ VI. ПРОГРАММНЫЕ ПРИМЕРЫ ДЛЯ МИКРОКОНТРОЛЛЕРОВ AVR
ГЛАВА 18. ПРИМЕРЫ ДЛЯ КОМПИЛЯТОРА WINAVR
УПРАВЛЕНИЕ ЖК-ДИСПЛЕЕМ
GPS-НАВИГАТОР
ГЛАВА 19. ПРИМЕРЫ ДЛЯ КОМПИЛЯТОРА CODEVISIONAVR
УПРАВЛЕНИЕ АНАЛОГО-ЦИФРОВЫМ ПРЕОБРАЗОВАНИЕМ
ИЗМЕРЕНИЕ ТЕМПЕРАТУРЫ
ЧАСТЬ VII. ПРОГРАММНЫЕ ПРИМЕРЫ ДЛЯ МИКРОКОНТРОЛЛЕРОВ PIC
ГЛАВА 20. ПРИМЕРЫ ДЛЯ КОМПИЛЯТОРА CCS-PICC
ОТОБРАЖЕНИЕ СОСТОЯНИЯ ВЫВОДОВ ПОРТА
УПРАВЛЕНИЕ ЧАСТОТОЙ МЕРЦАНИЯ СВЕТОДИОДОВ С ПОМОЩЬЮ РАЗЛИЧНЫХ ТАЙМЕРОВ
УПРАВЛЕНИЕ СВЕТОФОРАМИ НА ПЕРЕКРЕСТКЕ
ОБМЕН ДАННЫМИ В РЕЖИМЕ PSP
КОНТРОЛЬ ПРЕДЕЛЬНОЙ СКОРОСТИ ВРАЩЕНИЯ ДВИГАТЕЛЯ
ГЛАВА 21. ПРИМЕРЫ ДЛЯ КОМПИЛЯТОРА MIKROC
ИГРАЛЬНЫЕ "КОСТИ"
ВОЛЬТМЕТР С ЖК-ДИСПЛЕЕМ
КАЛЬКУЛЯТОР
ГЛАВА 22. ПРИМЕРЫ для КОМПИЛЯТОРА СЗО
ИСПОЛЬЗОВАНИЕ ПОРТА РМР
Небольшая библиотека функций для доступа к ЖК-модулю
Расширенное управление ЖК-дисплеем
РАБОТА С АЦП
Считывание уровня напряжения с потенциометра
Измерение температуры
ГЛАВА 23. ПРИМЕРЫ ДЛЯ КОМПИЛЯТОРА С32
РАБОТА С ИНТЕРФЕЙСОМ SPI
РАБОТА С МОДУЛЕМ UART
ЧАСТЬ VID. ПРИЛОЖЕНИЯ
ПРИЛОЖЕНИЕ А. ТАБЛИЦА СИМВОЛОВ ASCH
ПРИЛОЖЕНИЕ Б. ПРЕОБРАЗОВАНИЕ ИЗ ОДНОЙ СИСТЕМЫ СЧИСЛЕНИЯ В ДРУГУЮ
ПРИЛОЖЕНИЕ В. СИСТЕМА КОМАНД МИКРОКОНТРОЛЛЕРОВ AVR
НАЛИЧИЕ КОМАНД В РАЗЛИЧНЫХ МИКРОКОНТРОЛЛЕРАХ AVR
КОМАНДЫ ПО КАТЕГОРИЯМ
ПРИЛОЖЕНИЕ Г. СИСТЕМА КОМАНД МИКРОКОНТРОЛЛЕРОВ PIC
КОМАНДЫ ВОСЬМИРАЗРЯДНЫХ МИКРОКОНТРОЛЛЕРОВ (Команды по категориям)
СИСТЕМА КОМАНД МИКРОКОНТРОЛЛЕРОВ PIC24
ПРИЛОЖЕНИЕ Д. ОБЛАСТЬ ВВОДА/ВЫВОДА МИКРОКОНТРОЛЛЕРОВ AVRATXMEGAA
Список ЛИТЕРАТУРЫ
Купить/скачать Программирование на языке С для AVR и PIC микроконтроллеров, 2-е издание + CD