Эта книга — сборник примеров программ на языке С для микроконтроллеров производства ATMEL. В качестве средств разработки и имитации использованы компилятор WinAVR, среда AVR Studio и имитатор схем Proteus ISIS. Синтаксические особенности языка С и методы работы с перечисленными выше инструментальными средствами в книге подробно не рассматриваются, поскольку автор преследовал цель дать максимальное число практических примеров использования тех или иных периферийных устройств микроконтроллера: таймеров/счетчиков, приемопередатчика U(S)ART, аналогового компаратора, АЦП, интерфейсов SPI и TWI, памяти Flash и EEPROM. Отдельная глава посвящена взаимодействию с ЖК-модулем. Таким образом, это издание рассчитано на тех читателей, которые, обладая базовыми познаниями языка С, желают научиться применять их в работе с микроконтроллерами ATMEL.
Author(s): Прокопенко В. С.
Publisher: МК-Пресс
Year: 2012
Language: Russian
Tags: Библиотека;Компьютерная литература;Микроконтроллеры;AVR / ATtiny / ATmega / ATxmega;
Введение
ЧАСТЬ I. ПРИСТУПАЯ К РАБОТЕ
Глава 1. Средства разработки/имитации
Среда разработки WinAVR
Среда разработки AVR Studio
Имитатор схем Proteus ISIS
Глава 2. Работа с разрядами в языке С
Оператор >
Оператор ~
Оператор а
Оператор &
Запись лог. 1 в некоторый разряд с обнулением остальных разрядов
Запись лог. 1 в некоторый разряд без обнуления остальных разрядов
Запись лог. 0 в некоторый разряд без обнуления остальных разрядов
Запись лог. 0 в некоторый разряд с записью в остальные разряды лог. 1
Проверка некоторого разряда переменной на наличие лог. 0
Проверка некоторого разряда переменной на наличие лог. 1
Ожидание появления лог. 1 в некотором разряде
Ожидание появления лог. 0 в некотором разряде
Проверка состояния определенных разрядов
ЧАСТЬ II. МИКРОКОНТРОЛЛЕР AT90S2313
Глава 3. Таймеры/счетчики AT90S2313
Таймер/счетчик 0
Схема
Программа
Таймер/счетчик 0 в режиме счета импульсов на внешнем выводе ТО
Схема
Программа
Таймер/счетчик 1
Схема
Программа
Таймер/счетчик 1 в режиме счета импульсов на внешнем выводе Т1
Схема
Программа
Регистр захвата ICR1 таймера/счетчика 1
Схема
Программа
Регистр совпадения OCR1 таймера/счетчика 1
Схема
Программа
Использование таймера/счетчика 1 в режиме ШИМ
Настройка ШИМ
Расчеты и формулы
Схема
Программа
Изменение коэффициента заполнения в режиме ШИМ
Схема
Программа
ЦАП с применением ШИМ
Сторожевой таймер
Схема
Программа
Глава 4. Память EEPROM AT90S2313
Запись/чтение одного байта
Запись/чтение заданного количества байт
Работа с EEPROM с помощью функций WinAVR
Глава 5. Работа с UART в AT90S2313
Передача байта данных через UART
Схема
Программа
Передача заданного числа байт через UART
Прием данных через UART
Схема
Настройка виртуального терминала в Proteus
Создание подключения в программе HyperTerminal
Программа
Прием и передача байта данных через UART
Прием байта, отправка строки через UART
Использование потока stdout
Использование потоков stdout и stdin для передачи и приема символа
Использование потоков stdout и stdin для передачи и приема строки
Сравнение строки, принятой через UART
Управление выводами с помощью UART
Реализация приглашения командной строки
Глава 6. Аналоговый компаратор AT90S2313
Глава 7. Работа с прерываниями в AT90S2313
Прерывание при переполнении счетного регистра TCNT0
Работа таймера/счетчика 0 в режиме счетчика импульсов на внешнем выводе
Прерывание при переполнении счетного регистра TCNT1
Работа таймера/счетчика 1 в режиме счетчика импульсов на внешнем выводе
Прерывание по сигналу на входе захвата
Прерывание при совпадении регистра OCR1
Внешние прерывания INTO и INT1
Прерывание при очистке регистра UDR
Прерывание по окончанию приема данных
Прерывание по окончанию передачи данных
Прерывание от аналогового компаратора
Использование таймера/счетчика 1 в режиме ШИМ
Передача данных через UART с использованием буфера
ЧАСТЬ III. МИКРОКОНТРОЛЛЕР ATMEGA16
Глава 8. Таймеры/счетчики ATmega16
Таймер/счетчик 0 в режиме «Normal»
Схема
Программа
Таймер/счетчик 0 в режиме «СТС»
Схема
Программа
Таймер/счетчик О в режиме «Fast PWM»
Схема
Программа
Таймер/счетчик О в режиме «Phase Correct PWM»
Схема
Программа
Таймер/счетчик 1 в режиме «Normal»
Схема и программа
Таймер/счетчик 1 в режиме «Normal» и с регистром сравнения
Схема и программа
Таймер/счетчик 1 в режиме «СТС»
Схема и программа
Таймер/счетчик 1 в режиме «Fast PWM»
Схема и программа
Таймер/счетчик 1 в режиме «Phase Correct PWM»
Схема и программа
Изменение частоты и коэффициента заполнения
Таймер/счетчик 1 в режиме «Phase and Frequency Correct PWM»
Схема и программа
Изменение частоты и коэффициента заполнения
Сторожевой таймер
Программа
Глава 9. Аналоговый компаратор и АЦП ATmega16
Аналоговый компаратор
АЦП в режиме непрерывного преобразования
АЦП в режиме одиночного преобразования
АЦП в режиме дифференциального входа
Глава 10. Интерфейсы передачи данных ATmega16
Интерфейс USART
Программа
Интерфейс SPI. Подключение 12-разрядного ЦАП МСР4821
Программа
Интерфейс SPI. Работ а с памятью EEPROM
Внешние функции, используемые в программе
Описание микросхемы М95040
Программа
Интерфейс SPI. Работа с датчиком температуры ТС77
Преобразование значения температуры из двоичной в десятичную форму
Программа
Интерфейс SPI. Работа с Flash-памятью
Описание микросхемы AT25F2048
Программа
Интерфейс SPI. Работа с температурным преобразователем МАХ6675
Программа
Интерфейс SPI. Работа с температурным преобразователем МАХ6674
Программа
Интерфейс SPI. Работа с АЦП МАХ 1241
Процесс приема данных
Программа
Интерфейс TWI
Схема
Значение регистра Temperature
Программа
Глава 11. Использование ЖК-экрана
Подключение текстового ЖК-экрана 16x2 на базе контроллера KS0066U
Программа
Применение стандартных функций вывода при работе с ЖК-дисплеем
Вывод на ЖК-экран результатов аналого-цифрового преобразования
Измерение тока, напряжения, температуры
Программа
Подключение клавиатуры 3x4
Содержимое прилагаемого к книге компакт-диска