Мировая электроника - Мартин Т. - Микроконтроллеры ARM7 семейств LPC2300/2400: Вводный курс разработчика

Скачать

Мировая электроника - Мартин Т. - Микроконтроллеры ARM7 семейств LPC2300/2400: Вводный курс разработчика

Микроконтроллеры ARM7 семейств LPC2300/2400. Вводный курс разработчика

Год: 2010

Автор: Мартин Т.

Переводчик: Евстифеева А. В.

Издательство: М.: Додэка XXI

ISBN: 978-5-94120-241-6

Серия: Мировая электроника

Язык: Русский

Формат: PDF

Качество: Изначально компьютерное (eBook) (59 стр.) + Отсканированные страницы (остальные)

Интерактивное оглавление: Нет

Количество страниц: 336 стр.

Описание: Книга представляет собой введение в архитектуру процессора ARM7 TDMI и микроконтроллеров семейств LPC2300 и LPC2400 компании NXP. В ней рассматриваются следующие вопросы: введение в ядро ARM7, средства разработки программного обеспечения, системная архитектура и периферийные устройства микроконтроллеров LPC2300/2400. Кроме того, в книгу включено полное учебное пособие, где на практических примерах закрепляются вопросы, изложенные в основном тексте. Изучая теоретический материал и выполняя сопутствующие упражнения, вы быстро освоите ядро ARM7 и микроконтроллеры семейств LPC2300/2400.

На компакт-диске, прилагаемом к книге, имеются справочные материалы и руководства пользователя по микроконтроллерам семейств LPC2300 и LPC2400, исходные коды всех упражнений и другие полезные материалы.

Предназначена для разработчиков радиоэлектронной аппаратуры, инженеров, студентов технических вузов и радиолюбителей.

Введение

Глава 1 Процессорное ядро ARM7

1.1. Основные положения

1.2. Конвейер

1.3. Регистры

1.4. Регистр текущего состояния программы

1.5. Режимы обработки исключительных ситуаций

1.6. Набор команд ARM7

1.6.1. Команды ветвления

1.6.2. Команды обработки данных

1.7. Команда обмена

1.8. Изменение регистров состояния

1.9. Программное прерывание

1.10. Модуль MAC

1.11. Набор команд THUMB

1.12. Резюме

Глава 2 Разработка программного обеспечения

2.1. Основные положения

2.1.1. Загрузка и установка пакета программ компании Keil

2.1.2. ИСР µVISION

2.1.3. ИСР HiTOP

2.1.4. Учебные примеры

2.2. Стартовый код

2.2.1. Определение карты памяти проекта

2.2.2. Определение карты памяти для компилятора GCC

2.3. Взаимодействие кодов ARM и THUMB

2.3.1. Обеспечение взаимодействия в компиляторе GCC

2.4. Библиотека STDIO

2.4.1. Библиотека STDIO и компилятор GCC

2.5. Организация доступа к периферийным устройствам

2.5.1. Организация доступа к периферийным устройствам в компиляторе GCC

2.6. Процедуры обработки прерываний

2.6.1. Обработка прерываний в компиляторе GCC

2.6.2. Отладка обработчиков системных ошибок

2.6.3. Программное прерывание

2.6.4. Программное прерывание и компилятор GCC

2.6.5. Размещение переменных по абсолютным адресам

2.6.6. Размещение кода в ОЗУ

2.6.7. Загрузка кода и данных в ОЗУ при использовании компилятора GCC

2.7. Встраиваемые функции

2.7.1. Встраиваемые функции в компиляторе GCC

2.8. Встроенный ассемблер

2.8.1. Встроенный ассемблер компилятора GCC

2.8.2. Импортирование программ для компилятора GCC

2.9. Аппаратные средства отладки

2.9.1. Важное замечание!

2.9.2. Еще более важное замечание!

2.10. Резюме

Глава 3 Системные периферийные устройства

3.1. Основные положения

3.2. Внутренние шины

3.3. Организация памяти

3.4. Программирование регистров

3.5. Модуль ускорения работы памяти

3.5.1. Пример конфигурирования модуля MAM

3.6. Программирование FLASH-памяти

3.6.1. Управление картой распределения памяти

3.6.2. Загрузчик

3.6.3. Внутрисхемное программирование (ISP)

3.6.4. Внутрипрограммное программирование (IAP)

3.6.5. Защита FLASH-памяти

3.6.6. Системные тактовые сигналы

3.6.7. Схема ФАПЧ

3.6.8. Тактовые сигналы периферийных устройств

3.7. Управление электропитанием

3.7.1. Группы потребителей

3.7.2. Режимы пониженного энергопотребления

3.8. Система прерываний LPC2300

3.8.1. Блок управления выводами

3.8.2. Выводы внешних прерываний

3.8.3. Структура прерываний

3.8.4. Прерывание FIQ

3.8.5. Выход из прерывания FIQ

3.8.6. Векторные прерывания IRQ

3.8.7. Выход из прерывания IRQ

3.8.8. Пример: прерывание IRQ

3.8.9. Программное прерывание

3.8.10. Вложенные прерывания

3.9. Контроллер DMA

3.9.1. Обзор модуля DMA

3.9.2. Синхронизация DMA

3.9.3. Пересылка из памяти в память

3.9.4. Пакетная передача

3.9.5. Поддержка модулем DMA периферийных устройств

3.9.6. Пересылка несмежных данных

3.10. Резюме

Глава 4 Периферийные устройства общего назначения

4.1. Основные положения

4.2. Порты ввода/вывода общего назначения

4.2.1. Быстрые регистры ввода/вывода

4.2.2. Прерывание от GPIO

4.3. Таймеры общего назначения

4.3.1. Режим захвата

4.3.2. Режим счетчика

4.3.3. Режим совпадения

4.4. Модуль ШИМ

4.4.1. Режим счетчика

4.5. Часы реального времени

4.5.1. Опорный сигнал модуля RTC

4.6. Сторожевой таймер

4.6.1. Период сторожевого таймера

4.7. Универсальный асинхронный приемопередатчик

4.7.1. Настройка скорости обмена

4.7.2. Автоопределение скорости обмена

4.7.3. Передача данных

4.7.4. Организация обмена по протоколу IrDA

4.8. Интерфейс I2C

4.9. Интерфейс SPI

4.10. Аналого-цифровой преобразователь

4.11. Цифро-аналоговый преобразователь

4.12. Синхронный последовательный порт

4.12.1. Контроллер I2S

4.13. Интерфейс карт FLASH-памяти

4.13.1. Модуль MCI микроконтроллеров семейства LPC2300

Глава 5 Развитые периферийные устройства

5.1. Ethernet MAC

5.2. Протокол TCP/IP

5.2.1. Сетевая модель

5.2.2. Ethernet и IEEE 802.3

5.2.3. Дейтаграммы TCP/IP

5.2.4. Модуль Ethernet MAC

5.2.5. Стек uIP

5.2.6. Создание веб-сервера с использованием коммерческого стека TCP/IP

5.3. Полноскоростной интерфейс USB 2.0

5.3.1. Введение в USB

5.3.2. Модуль контроллера USB

5.3.3. Заключение

5.4. Контроллер интерфейса CAN

5.4.1. Семиуровневая модель ISO

5.4.2. Структура узла сети CAN

5.4.3. Объекты сообщений CAN

5.4.4. Арбитраж на шине CAN

5.4.5. Тактовая синхронизация

5.4.6. Передача сообщений CAN

5.4.7. Ограничение распространения ошибок

5.4.8. Прием сообщений CAN

5.4.9. Фильтрация сообщений

Глава 6 Использование ОС компании Keil

6.1. Возможности ОСРВ

6.2. Настройка проекта

6.3. Процессы

6.4. Запуск ОСРВ

6.5. Создание процессов

6.6. Управление процессами

6.7. Множество экземпляров

6.8. Управление временем

6.8.1. Формирование задержки

6.8.2. Периодический запуск процесса

6.8.3. Виртуальный таймер

6.8.4. Демон ожидания

6.9. Межпроцессное взаимодействие

6.9.1. События

6.9.2. Обработка прерываний в ОСРВ

6.9.3. Семафоры

6.9.4. Предостережение по поводу семафоров

6.9.5. Мьютексы

6.9.6. Предостережение по поводу мьютексов

6.9.7 Буферы сообщений

6.10. Конфигурация

Глава 7 Использование ОС FreeRTOS

7.1. Портирование ОС FreeRTOS на LPC2300

7.1.1. Тики таймера

7.1.2. Процедура обработки прерывания от таймера

7.1.3. Переключение контекста

7.1.4. Инициализация стека

7.1.5. Управление памятью

7.2. Конфигурация FreeRTOS

7.2.1. Запуск FreeRTOS

7.2.2. Процессы

7.2.3. Управление процессами

7.2.4. Ловушка на тики

7.2.5. Семафоры

7.2.6. Управление ядром

Глава 8 Учебное пособие

Введение

Упражнение 1. Знакомство с ИСР Keil.

Установка аппаратных средств.

Отладчик Keil.

Редактирование проекта.

Управление процессом выполнения программы.

Просмотр данных.

Упражнение 2. Стартовый код.

Упражнение 3. Совместное использование команд ARM и THUMB.

Упражнение 4. Программное прерывание.

Упражнение 5. Модуль MAM.

Упражнение 6. Использование загрузчика от NXP.

Упражнение 7. Схема ФАПЧ.

Упражнение 8. Конфигурирование системы тактирования.

Упражнение 9. Быстрое прерывание.

Упражнение 10. Векторное прерывание.

Упражнение 11. Пересылка данных из памяти в память при помощи DMA.

Упражнение 12. Пересылка несмежных данных при помощи DMA.

Упражнение 13. Порты ввода/вывода общего назначения.

Упражнение 14. Прерывание от порта GPIO.

Упражнение 15. Функция захвата (capture).

Упражнение 16. Функция совпадения (match).

Упражнение 17. ШИМ.

Упражнение 18. Часы реального времени.

Упражнение 19. UART.

Упражнение 20. Аналого-цифровой преобразователь.

Упражнение 21. Цифро-аналоговый преобразователь.

Упражнение 22. Драйвер Ethernet.

Упражнение 23. TCP/IP стек uIP.

Упражнение 24. Передача по интерфейсу CAN.

Упражнение 25. Прием по интерфейсу CAN.

Упражнение 26. Прием в режиме FullCAN.

Упражнение 27. Запуск двух процессов в ОСРВ.

Упражнение 28. Управление временем.

Упражнение 29. Приостановка и запуск процесса.

Упражнение 30. Возобновление процесса из обработчика прерывания.

Упражнение 31. Процесс Idle.

Упражнение 32. Семафор.

Упражнение 33. Очередь сообщений.

Приложения

Список литературы.

Полезные ссылки.

Оценочные платы и модули.

Доп. информация:

Название на языке оригинала

The Insider’s Guide To The NXP LPC2300/2400 Based Microcontrollers. An Engeneer’s Introduction To The LPC2300 & LPC2400 Series

ISBN оригинала - 0-95499-883-9

Скачать