Задачи курса -
http://avr123.nm.ru/06.htm
Задача 1 - знакомство с компилятором Си CodeVisionAVR, схема, алгоритм, написание и компиляция первой рабочей программы. Операции над отдельными битами !
Задача 2 - знакомство с эмулятором электронных устройств - VMLAB - симулятором МК AVR на примере файла-прошивки полученной в задаче 01.Мигаем светодиодами, измеряем длительность сигналов на
экране виртуального осциллографа (окно scope)
Задача 3 - Закрепить навыки программирования и
работы в компиляторе CodeVisionAVR очень подробно и с картинками учимся моделировать работу электронного устройства в симуляторе VMLAB. Делаем универсальный таймер на микроконтроллере ATmega8, с дискретной установкой времени.
Задача 4 - Адаптер для связи вашего МК устройства с COM-портом ПК по rs232. Метод отладки вашего устройства - нахождение ошибок программы и
"железа" с помощью вставки контрольных сообщений в текст программы. Программы для ПК позволяющие вести, отслеживать и сохранять на жестком диске обмен по COM-портам.
Задача 5 - Создаём программу для ATmega16 принимающую и передающую данные обмениваясь ими с ПК через COM-порт по интерфейсу rs232 с помощью USART встроенного в МК серии ATmega. Углубляем навыки создания программы в CVAVR и продолжаем использовать Си для микроконтроллеров. Подключаем и управляем символьным ЖКИ LCD 16x2 (2 строки по 16 символов)
Задача 6 - Тщательное знакомство с компилятором ICC и подробный рассказ с картинками о применении его мастера начального кода. Создаем программу 50 раз в секунду прерывающуюся по Таймеру_0 и посылающую данные на ПК. Точная подгонка временных интервалов создаваемых с помощью таймеров. Различные режимы работы таймеров. В симуляторе VMLAB проверяем правильность времени прерываний и
сохраняем принятые от МК данные в файл.
Задача 7 - Помнить все! добавляем 2 Мб памяти - быстрой и не забывающей информацию при отключении питания - стоит всего 5 баксов. Подключение AT45DB161 к МК AVR по SPI со схемой и программой на Си с подробными комментариями. Там же "исходники" для памяти поменьше и подешевле на 512 Кб AT45DB041.
Задача 8 - Что такое ШИМ (PWM) сигнал. Как аппаратно сделать ШИМ. Как сделать ЦАП с помощью ШИМ и отфильтровать сигнал - т.е. получить аналоговый сигнал из цифрового. Программа к задаче написана в компиляторе Си CodeVisionAVR, симуляция выполнена в VMLAB.
Задача 9 Электронный вольтметр - измеритель вибрации. Цель задачи: разработать устройство и программу для МК ATmega16 для измерения напряжения и частоты сигнала от датчика вибрации и отображения результата на 2х разрядном 7-ми сегментном светодиодном индикаторе. Задача знакомит с АЦП ATmega16 (такой же в ATmega32 ATmega64 ATmega12
используется компилятор CodeVisionAVR - дан пошаговый пример создания программы с нуля. Симуляция в VMLAB с комментарием.
Задача 9 часть 2 Проектирование входной цепи для сигнала
Цель задачи:
- расчет уилителя-фильра сигнала перед подачей на АЦП
- применение ОУ (операционных усилителей) для изменения
параметров входного сигнала
- защита устройства от внешних электрических воздействий !
Задача 10 Устройство изменяющее состояние нагрузки при громком звуке длительностью от 5 до 20 мС. Цель задачи: разработать устройство и программу для МК ATmega16 которое будет анализировать длительность сигнала от микрофона и если она будет лежать в пределах 5-20 мС то будет менять состояние подключенной нагрузки: если была выключена - то включит и наоборот. Задача повторяет-закрепляет навык генерации начального кода программы в компиляторе CodeVisionAVR для ATmega16.
Задача 11 АЦП - аналоговый сигнал преобразуем в Цифровой код при помощи 10 битного АЦП встроенного (там целых 8 каналов!) в МК AT90s8535. Программу пишем на CodeVisionAVR, компилируем и затем отладим в эмуляторе с наблюдением движения программы по тексту на Си.
Задача 12 Последовательная передача и прием данных - программная реализация диаграмм из даташитов. Использование интерфейса SPI на примере управления PLL синтезатором частоты LMX2316. Быстрое создание приложений в CVAVR и отладка в VMLAB заготовка - шаблон codevisionavr_vmlab.rar
Задача 13 Делаем контроллер на ATmega16 для 8 servo модельных с управлением по последовательному протоколу с ПК или другого устройства с UART или с интерфейсом RS232. Схемы и компоненты для сопряжения МК с COM-портом ПК, так же программы для управления и лога данных смотрите в задаче 4 и в задаче 5