2 1. Цели и задачи дисциплины Дисциплина «Основы программирования МП и МК» является дисциплиной вариативной части математического - естественно научного цикла в подготовке бакалавров. Целью настоящей дисциплины является ознакомление бакалавров с типовыми интерфейсными и периферийными устройствами, работающими под управлением микроконтроллеров.. Задачи дисциплины: дать практический опыт написания программ на языке С для микропроцессоров популярного семейства MCS51. 2. Место дисциплины в структуре ООП Дисциплина «Основы программирования МП и МК» входит в цикл МЕН (вариативная часть, дисциплина по выбору) подготовки бакалавров. Бакалавр, начинающий изучение дисциплины «Основы программирования МП и МК», должен знать изученные им ранее дисциплины "Информационные технологии», «Инженерная и компьютерная графика», «Языки программирования С/С++» Последующие дисциплины: «Тракт обработки сигналов ЦРПУ», «Итоговая государственная аттестация» 3. Требования к результатам освоения дисциплины 3.1. В результате освоения дисциплины «Основы программирования МП и МК» должны быть сформированы следующие компетенции: способностью выявлять естественнонаучную сущность проблем, возникающих в ходе профессиональной деятельности, привлекать для их решения соответствующий физикоматематический аппарат (ПК-2); 3.2. В результате освоения дисциплины студент должен демонстрировать освоение указанными компетенциями по дескрипторам «знания, умения, владения», соответствующие тематическим модулям дисциплины, и применимые в их последующем обучении и профессиональной деятельности: - Знать: З1. принципы работы типовых периферийных устройств, работа которых основана на программном взаимодействии с микроконтроллерами: шаговые двигатели,сенсорные экраны, светодиодные матрицы ,валкодеры ,жидкокристаллические индикаторы ,аналого-цифровые и цифро-аналоговые преобразователи Уметь: У1. составлять программы управления периферийным оборудованием для процессоров семейства MCS51 на языке С; У2. задавать режимы работы встроенных периферийных устройств процессоров MCS51 (таймеры, последовательный порт, система прерываний); У3. формировать подпрограммы обслуживания прерываний. В1. принципами программирования процессоров с различными наборами встроенных периферийных устройств; 3 3.3. Проектируемые результаты и признаки формирования компетенций. Компетентностная модель дисциплины Проектируемые результаты освоения дисциплины «Основы программирования Средства и Индекс МП и МК» и индикаторы формирования технологии компетенции компетенций оценки Знания (З) Умения (У) Навыки (В) ПК-2 Д/зачет + + + контрольные работы, устный опрос, ДЗ Технологии формирования компетенции 6.1.-6.4. 4. Объем дисциплины и виды учебной работы в часах и зачетных единицах Очная форма обучения Вид занятий Всего Семестры (час./ 1 2 3 4 5 6 7 8 9 10 зач.ед. ) Всего аудиторных занятий: 48 48 Лекции 12 12 Практические занятия 24 24 Лабораторные работы 12 12 Самостоятельная работа: 72 72 Самостоятельное изучение материала дисциплины и подготовка к зачетам Курсовой проект Домашнее задание 10 10 Проработка лекций 62 62 Количество часов на экзамен Всего по дисциплине 180 180 Вид аттестации за семестр (зачет, д/зач д/за дифференцированный зачет, экзамен) ч 5. Содержание дисциплины по модулям и видам учебных занятий 5.1. Содержание дисциплины по модулям 5.1.1.Основные тенденции развития цифровой техники. Программируемые логические интегральные схемы, микроконтроллеры. Основные технические параметры, области использования, достоинства и недостатки. Средства программирования. Примеры использования. Процессоры семейства MCS51. История создания, достоинства и недостатки. Основные технические параметры. Принципы работы встроенных периферийных устройств, типовые встроенные периферийные устройства, обзор встроенных периферийных устройств, выпускаемых различными производителями. Структура микропроцессора, типы встроенной памяти, регистры специальных функций. Специальные регистры для организации работы программы. Порты вводавывода. 5.1.2. Элементы языка С для программирования микропроцессоров. Типы данных, их представление в памяти, области значений. Модификаторы типов (классы памяти). Производные типы данных. Структура программы. Специфические типы данных, учитывающие особенности микропроцессора. Управление встроенными периферийными устройствами. Организация функций - обработчиков прерываний. Заголовки, вектора прерываний. Принцип работы, особенности передачи данных в регистры периферийных устройств стенда, примеры кода на языке С для управления внешними периферийными устройствами. 4 5.1.3. Динамическая индикация. Принцип организации, устранение подсветки. Примеры программирования. Работа со светодиодными матрицами. Сканирование клавиатуры 5.1.4. Управление ЖКИ. Устройство шаговых двигателей, управление шаговыми двигателями. 5.1.5. Передача и прием данных через последовательный порт. Режимы работы последовательного порта, настройка скорости передачи. Примеры программ. 5.1.6.Сенсорные экраны. Валкодеры. Аналого-цифровые и цифро-аналоговые преобразователи. 5.1.7. Массивы программируемых счетчиков (PCA). Режимы работы, использование для реализации быстродействующей периферии. Формирователи ШИМ, детекторы внешних событий 1 Содержание модулей 2 Модуль 1. Введение. Основные тенденции развития цифровой техники. Программируемые логические интегральные схемы, микроконтроллеры. Основные технические параметры, области использования, достоинства и недостатки. Средства программирования. Примеры использования. Процессоры семейства MCS51. История создания, достоинства и недостатки. Основные технические параметры. Принципы работы встроенных периферийных устройств, типовые встроенные периферийные устройства, обзор встроенных периферийных устройств, выпускаемых различными производителями. Структура микропроцессора, типы встроенной памяти, регистры специальных функций. Специальные регистры дл Таймеры, их устройство и режимы работы. Регистры управления режимами работы таймеров. 3 Модуль 2. Элементы языка С для программирования микроконтроллеров MCS51. Типы данных, их представление в памяти, области значений. Модификаторы типов (классы памяти). Производные типы данных. Примеры использования указателей для обращения к различным типам памяти. Структура программы. Специфические типы данных, учитывающие особенности микропроцессора. Организация функций - обработчиков прерываний. Заголовки, векторы прерываний. Настройка системы прерываний. Примеры использования прерываний от таймеров для формирования звуковых сигналов. 4 Модуль 3. Динамическая индикация. Принцип организации, устранение подсветки. Примеры программирования. Работа со светодиодными матрицами. Типы светодиодных матриц, принципы формирования изображений. Сканирование клавиатуры. Принцип определения координат нажатой клавиши. Дребезг контактов, его характеристики. Методы борьбы с дребезгом (аппаратный, программный). Пример программы сканирования клавиатурной матрицы стенда 5 Модуль 4. Управление ЖКИ. Работа ЖКИ типа HT1613. Алгоритм последовательной загрузки данных. Схема сопряжения со стендом. Шаговые двигатели. Назначение, классификация, параметры. Устройство шагового двигателя с переменной намагниченностью. Устройство шагового двигателя с постоянными магнитами. Униполярные, биполярные, бифилярные двигатели. Алгоритм формирования управляющих напряжений. Режим шагов, режим полушагов, режим микрошагов. Аппаратные реализации схем управления. Стабилизация тока потребления. Форма обучения О Л,С Л,С Л,С Л,С 5 6 Модуль 5. Передача и прием данных через последовательный порт. Режимы работы последовательного порта, настройка скорости передачи. Примеры программ. 7 Модуль 6. Сенсорные экраны. Принципы работы, классификация, устройство. Работа 4-х проводных сенсорных экранов. Достоинства, недостатки. Работа 5-проводных сенсорных экранов. Достоинства, недостатки. Алгоритм определения координат точки касания. Валкодеры. Назначение валкодеров, принципы работы. Преобразователи угол поворота – код. Особенности формирования выходного кода. Код Грея. Импульсные валкодеры. Алгоритм определения угла поворота. Примеры программной реализации валкодеров различных типов Аналого-цифровые и цифро-аналоговые преобразователи. Устройство, принцип работы, примеры реализации и использования. 8 Модуль 7. Массивы программируемых счетчиков. Режимы работы, использование для реализации быстродействующей периферии. Формирователи ШИМ, детекторы внешних событий. (Л – лекции С- самостоятельная работа) Л,С Л,С 5.2. Содержание лабораторных и практических занятий 5.2.2. Содержание лабораторных и практических работ Цель лабораторных и практических работ формирование навыков самостоятельной работы студентов путём применения теоретических знаний, полученных на лекциях Лабораторные и практические работы выполняются группой. За период обучения студент выполняет 3 лабораторных и 5 практических работ из предложенного перечня Содержание лабораторных и практических работ 1 Модуль 1,2 Лабораторная работа 1. Определение базовых адресов всех периферийных устройств стенда по его электрической схеме (регистр данных семисегментного индикатора, регистр данных ЦАП, регистр выходного параллельного порта). Лабораторная работа 2. Определение базовых адресов дополнительных устройств (второй регистр данных ЦАП, второй выходной регистр), входы записи данных которых подключены к заданным выходам дешифратора адреса. Лабораторная работа 3. Вычисление кодов изображения типовых символов на семисегментных индикаторах. 2 Модуль 3, 4,5,6,7 Практическая работа 1. Динамическая индикация. Модернизация типового алгоритма динамической индикации для формирования бегущей строки. Практическая работа 2. Программирование встроенных таймеров для формирования звукового сигнала заданной частоты и длительности Практическая работа 3. Расчет сопротивлений схемы ключей управления шаговым двигателем Практическая работа 4. Расчет сопротивлений схемы сопряжения ЖКИ со стендом Практическая работа 5. Динамическая индикация. Модернизация заданного алгоритма динамической индикации программы секундомера для удвоения частоты мигания секундной точки. О + + + + + + + + 6 6. Образовательные технологии. 6.1.Для достижения планируемых результатов освоения дисциплины «Основы программирования МП и МК» используются следующие образовательные технологии: 6.1.1. Информационно-развивающие технологии. 6.1.2. Деятельностные практико-ориентированные технологии 6.1.3. Развивающие проблемно-ориентированные технологии. 6.1.4. Личностно ориентированные технологии обучения. ( Практические и Методы Лекция лабораторные СРС работы Метод IT + + Работа в команде + Case-study + Проблемное обучение + + Контекстное + + + обучение Обучение на основе + + + опыта Индивидуальное + обучение Междисциплинарное + + + обучение Опережающая самостоятельная + работа 6.2.Интерактивные формы обучения (в соответствии с положением П ОмГТУ 75.03-2012. «Об использовании в образовательном процессе активных и интерактивных форм проведения учебных занятий») № 1 Семестр, модуль Модуль 1- 2 2 Модуль 3-7 Применяемые технологии интерактивного обучения Лабораторный практикум. Интерактивный метод – «Inter». СРС. Опережающая самостоятельная работа Лабораторный практикум. Интерактивный метод – «Inter». СРС. Опережающая самостоятельная работа ИТОГО Кол-во часов 5 5 10 Самостоятельная работа студентов (указываются все виды работ в соответствии с учебным планом) Самостоятельная работа направлена на закрепление и углубление полученных теоретических и практических знаний, развитие навыков практической работы. 7. 7.1. Объем СРС и распределение по видам учебных работ в часах Вид СРС Количество часов Семестры 3 7 1. самостоятельное изучение отдельных тем дисциплины; поиск и обзор литературы и электронных источников; чтение и изучение учебника и учебных пособий. 2.Подготовка к лабораторным занятиям, оформление отчетов к лабораторным работам 3.Выполнение домашнего задания, оформление отчетов по ДЗ 4. Подготовка к Д/зачету ИТОГО по дисциплине 27 20 10 15 72 7.2. Темы выполнения домашнего задания (по вариантам) 7.2.1. Программирование функций управления выходными регистрами с использованием различных методов адресации (через указатели, через массив данных типа xdata, через массив данных типа pdata). (Модуль 2.) 8. Методическое обеспечение системы оценки качества освоения программы дисциплины К промежуточной аттестации студентов по дисциплине «Основы программирования МП и МК» могут привлекаться в качестве внешних экспертов: представители базовых предприятий радиотехнического профиля. 8.1. Фонды оценочных средств (в соответствии с П ОмГТУ 73.05 «О фонде оценочных средств по дисциплине») Фонд оценочных средств позволяет оценить знания, умения и уровень приобретенных компетенций. Фонд оценочных средств по дисциплине «Основы программирования МП и МК» включает: - вопросы к Д/зачету; - вопросы для допуска к выполнению лабораторных работ; - вопросы к итоговому заданию по лабораторному практикуму; - набор вариантов для выполнения домашнего задания; - задания для проведения занятий в интерактивной форме. Оценка качества освоения программы дисциплины «Основы программирования МП и МК » включает текущий контроль успеваемости, промежуточную аттестацию (по модулям), итоговую аттестацию. Студентам предоставлена возможность оценивания содержания, организации и качества учебного процесса. 8.2. Контрольные вопросы по дисциплине Модуль 1. 1. Какие периферийные устройства содержатся в микропроцессорах, используемых в учебном стенде? 2. Какие источники прерываний имеются в процессоре стенда? 3. Как различить прерывание при приеме данных в последовательный порт от прерывания при передаче данных? 4. Какова минимальная частота прерываний от таймера при работе в режиме 8-битного счетчика с автоперезагрузкой? 5. Какова минимальная частота прерываний от таймера при работе в режиме 16-битного счетчика? Модуль 2. 6. Как можно организовать в стенде измерение частоты сигнала, подаваемого на аналоговый вход? 7. Как можно организовать в стенде измерение периода сигнала, подаваемого на аналоговый вход? 8. Как можно организовать в стенде формирование на аналоговом выходе сигнала прямоугольной формы заданной частоты? 9. Как производится динамическая индикация в стенде? 10. Что такое «эффект подсветки» в динамической индикации и как он устраняется? 8 Модуль 3. 11. Как работает типовая программа обслуживания прерывания от таймера при организации динамической индикации? 12. Как можно организовать вывод данных на светодиодную матрицу? 13. Как производится сканирование клавиатурной матрицы? 14. Что такое «дребезг контактов» и каким параметром он характеризуется? 15. Как программно устраняется действие дребезга контактов? 16. Как производится формирование звукового сигнала в стенде? Модуль 4 17. Как выглядит временная диаграмма ввода данных в жидкокристаллический индикатор типа HT1613? 18. Как устроен типовой алгоритм ввода данных в ЖКИ HT1613? 19. Как работает шаговый двигатель? 20. Что такое «угловое разрешение» шагового двигателя? 21. Чем определяется величина углового разрешения шагового двигателя? 22. Что такое «режим полушагов» шагового двигателя? 23. Для чего нужна стабилизация тока потребления шагового двигателя? 24. В чем отличие шаговых двигателей с переменной намагниченностью от шаговых двигателей с постоянными магнитами? 25. Как устроен типовой алгоритм управления шаговым двигателем? Модуль 5. 26. Каков принцип действия резистивных сенсорных экранов? 27. Как работают 4-х проводные сенсорные экраны? 28. В чем состоит недостаток 4-х проводных сенсорных экранов? 29. Как работают 5-проводные сенсорные экраны? 30. В чем состоит достоинство 5-проводных сенсорных экранов? Модуль 6. 31. Что произойдет при одновременном касании резистивного сенсорного экрана в двух точках? 32. Как устроен алгоритм последовательного приближения при измерении входного напряжения с помощью ЦАП и компаратора? 33. Как устроен алгоритм дельта-модуляции при измерении входного напряжения с помощью ЦАП и компаратора? 34. Каковы достоинства и недостатки метода дельта-модуляции? 35. Что такое валкодер и как он работает? Модуль 7. 36. Как работают преобразователи угла поворота в код? 37. Почему в преобразователях угол поворота – код используют код Грея? 38. Чем определяется разрешающая способность по углу преобразователей угол – код? 39. В чем отличие синхронного и асинхронного режимов работы последовательного порта? 40. Каков формат передаваемых данных в асинхронном режиме работы последовательного порта? 9. Ресурсное обеспечение дисциплины. 9.1. Материально-техническое обеспечение дисциплины Данная дисциплина обеспечена персональными ЭВМ, расположенными в вычислительном классе кафедры РТУ и СД. На всех ЭВМ установлена интерфейсная программа для редактирования и компиляции программ и управления учебным стендом. Имеются учебные стенды MCS51, подключаемые к ЭВМ. Кроме этого имеется набор периферийных устройств, подключаемых к 9 10 11