МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УДМУРТСКОЙ РЕСПУБЛИКИ

 

Автономное профессиональное образовательное учреждение Удмуртской Республики «Техникум радиоэлектроники и информационных технологий

имени А.В. Воскресенского»

 

 

 

 

 

 

 

 

 

Практические работы

по профессиональному модулю 04 «Программирование встраиваемых систем с использованием интегрированных сред разработки»

 

специальность 11.02.17 Разработка электронных устройств и систем

 

 

 

 

 

 

 

 

 

Разработал

Мастер п/о:                                                                В. Г. Масалёв

 

 

 

 

 

 

 

 

 

Ижевск, 2023

Практическая работа №1

По теме: «Основные этапы разработки МПС»

Задание: Найти информацию по теме «Этапы разработки микропроцессорных систем». Использовать не менее 3-х источников информации.

Найденную информацию предоставить в виде блок-схемы с подробным описанием каждого элемента.

Работу оформить в текстовом редакторе.

Практическая работа №2

По теме: «Использование МПС при автоматизации производства»

Задание: Найти информацию по теме «Использование МПС при автоматизации производства». Использовать не менее 3-х источников информации.

Найденную информацию предоставить в виде презентации.

Практическая работа №3

По теме: «Применение МПС в социальной сфере»

Задание: Найти информацию по теме «Применение МПС в социальной сфере». Использовать не менее 3-х источников информации.

Найденную информацию предоставить в виде реферата(не менее 10 страниц).

Работу оформить в текстовом редакторе с указанием списка источников.

Практическая работа №4

По теме: «Применение МПС в глобализации информационных процессов»

Задание: Найти информацию по теме «Применение МПС в глобализации информационных процессов». Использовать не менее 3-х источников информации.

Найденную информацию предоставить в виде блок-схемы с подробным описанием каждого элемента.

Работу оформить в текстовом редакторе с указанием списка источников.

Практическая работа №5

По теме: «Применение МПС в системе «Умного дома»»

Задание: Найти информацию по теме «Применение МПС в системе «Умного дома»». Использовать не менее 3-х источников информации.

Найденную информацию предоставить в виде презентации.

Практическая работа №6

По теме: «Применение МПС в системах управления БПЛА»

Задание: Найти информацию по теме «Применение МПС в системах управления БПЛА». Использовать не менее 3-х источников информации.

Найденную информацию предоставить в виде реферата с подробным описанием каждого элемента.

Работу оформить в текстовом редакторе с указанием списка источников.

Практическая работа №7

По теме: «Применение МПС в робототехнике»

Задание: Найти информацию по теме «Применение МПС в робототехнике». Использовать не менее 3-х источников информации.

Найденную информацию предоставить в виде блок-схемы с подробным описанием каждого элемента.

Работу оформить в текстовом редакторе с указанием списка источников.

Практическая работа №8

По теме: «Основные характеристики и особенности архитектуры МК»

Задание: Найти информацию по теме «Основные характеристики и особенности архитектуры МК». Использовать не менее 3-х источников информации.

Найденную информацию предоставить в виде презентации.

 

Практическая работа №9

По теме: «Виды памяти МК»

Задание: Найти информацию по теме «Виды памяти МК». Использовать не менее 3-х источников информации.

Найденную информацию предоставить в виде блок-схемы с подробным описанием каждого элемента.

Работу оформить в текстовом редакторе с указанием списка источников.

Практическая работа №10

По теме: «Подключение внешней памяти и ее тестирование»

  1. 1.Подключить к МК внешнее ОЗУ емкостью кбайт (табл. 10.1) и используя тестовый набор ХХ, произвести тестирование области памяти 1 кбайт, начиная с адреса ZZZ. Включить светоиндикатор, если записанный и считанный из ячейки памяти наборы не совпадают. Подключить осциллограф и снять осциллограмму с вывода 0 ALE МК. 

Таблица 10.1 Задание 1

Параметры

1

2

З

4

5

6

N, кбайт

8

2

8

8

8

2

XX

0AAh

55h

00h

0FFh

55h

0AAh

zzz

800h

100h

0COOh

lOOOh

1400h

400h

 

  1. 2.Подключить к МК внешнее ПЗУ емкостью Кбайт (табл. 2.10). Подсчитать контрольную сумму области памяти емкостыо Кбайт, начиная с адреса ZZZ и сравнить ее с константой, находящейся в резидентном ПЗУ. Если сравниваемые величины совпадают, тестирование ПЗУ прошло успешно, иначе включить светоиндикатор. Подключить осциллограф, как показано на рис. 2.28, и снять осциллограмму с вывода ALE МК. 

Таблица 10.2 Задание 2

Параметры

7

8

9

10

11

12

N, Кбайт

8

16

32

8

16

32

K, байт

100

300

500

150

350

650

ZZZ

800h

1000h

2000

0COOh

1000h

400h

Содержание отчета

  1. 1.Наименование и цель работы. 

  2. 2.Описание микросхемы памяти с назначением выводов и осциллографа, использованного в эксперименте, с его краткими характеристиками. 

  3. 3.Копия схемного файла во время моделирования с указанием позиционных обозначений элементов и шин. 

  4. 4.Копия программного файла на С с подробными комментариями. 

  5. 5.Полученные результаты и выводы по работе. 

Практическая работа №11

По теме: «Организация заданных интервалов времени»

Требуется подключить светодиод к одной из линии порта РХ. У (Х — номер порта, У— номер вывода порта) и обеспечить загорание светодиода в течение S с, затем выключение светодиода в течение К с; организовать попеременное включение/выключение светодиода в течение Т мин. Произвести подключение мультиметра к светодиоду и измерить его ток Тили напряжение во время работы. Варианты заданий приведены в табл. 11.

Таблица11

Варианты заданий

Параметры

1

2

З

4

5

6

7

8

9

10

РХ.У

P1.3

Pl.7

P2.5

P2.l

РЗ.5

Pl.6

РЗ.2

Pl.4

Р2.6

РЗ.З

S, с

2

З

1

0.5

4

6

0.7

5

6

7

K, с

1

2

0.5

1

З

4

0.3

4

5

6

N, мин

З

5

2

1

8

10

2

1

5

15

Содержание отчета

  1. 1.Наименование и цель работы. 

  2. 2.Описание схемных особенностей линии порта МК, используемой для подключения светодиода и мультиметра, применяемого в эксперименте, с его краткими характеристиками. 

  3. 3.Описание особенностей программирования таймера МК, используемого для реализации временного интервала. 

  4. 4.Копия схемного файла во время моделирования с указанием позиционных обозначений элементов. 

  5. 5.Копия программного файла (на ассемблере или на С) с подробными комментариями. 

  6. 6.Полученные результаты и выводы по работе. 

Практическая работа №12

По теме: «Основы организации последовательного порта»

Необходимо принять/передать (R/T) N байт информа- ции, настроив последовательный порт на К-режим работы со скоро- стью обмена S Кбит/с. Требуемые для передачи байты находятся в резидентной памяти данных, начиная с адреса XX.

В режиме приема XX — началъный адрес резидентной памяти данных, где размещаются принятые байты. При моделировании при- ема будем использовать два микроконтроллера MK-51, один из кото- рых передает информацию в заданном режиме работы, а другой при- нимает.

Варианты заданий на лабораторную работу представлены в табл. 2.13.

Таблица 12

Варианты задания

Параметры

1

2

3

4

5

6

7

8

9

10

R/T

Т

Т

R

Т

R

R

Т

Т

R

Т

К

0

1

2

3

О

1

2

3

1

1

Ѕ. Кбит/с

1000

19,2

375

2,4

1000

4,8

187,5

62.2

9.6

1.2

XX

50h

30h

40h

50h

40h

60h

30h

40h

30h

50h

N

10

6

15

8

20

10

20

15

20

10

 

Практическая работа №13

По теме: «Оперативное запоминающее устройство»

Работая с микросхемой, определите, как нарушена логика работы при организации микросхемы в процессе её проектирования.

1. Исследовать адресное ОЗУ.

1.1. В произвольном порядке, перебирая адреса с использованием параллельного занесения информации в счетчик, записать в ОЗУ 16 произвольных четырехразрядных чисел и составить таблицу загрузки.

1.2. Подавая на вход CS уровень единицы и меняя адреса, определить поведение выходных сигналов ОЗУ.

1.3. Провести чтение записанной ранее информации, последовательно перебирая адреса с помощью входа (+I) или (-I) счетчика. Результат занести в специальную графу таблицы загрузки. Сделать выводы по результатам сравнения записанной и считанной информации. Построить поясняющие временные диаграммы сигналов E, CS, информационных сигналов, показав режимы чтения и записи при произвольных трех адресах.

1.4. Отключив на короткое время питание стенда, убедиться, что информация в ОЗУ разрушена. Записать в таблицу содержимое ОЗУ при включении питания.

1.5. Предложить схему измерения времени задержки микросхемы К155РУ2 от какого-либо адресного входа до выхода, используя имеющиеся на стенде импульсные сигналы F, F2,..., возможности счетчика и, при необходимости, логические элементы или узлы стенда. Осуществить измерение времени задержки.

1.6. Предложить схему измерения задержки микросхемы К155РУ2 от входа выборки кристалла и от входа режима записи до информационных выходов и реализовать схемы на стенде.

2.1. На основе микросхемы К155РУ2 разработать устройство, способное после сброса счётчика адреса в ноль по следующим за сигналом сброса n импульсам синхронизации принять (записать в память) n=(14-N) чисел, где N-номер бригады. Следующие синхроимпульсы после достижения счётчиком состояния n не должны приводить к записи чисел, устройство должно не реагировать на них. Собрать по возможности устройство с использованием в качестве сигнала сброса и синхросигналов импульсы с кнопок и проверить работоспособность. Построить временные диаграммы работы, представив на них управляющие сигналы, состояние счётчика адреса, состояния информационной шины и информацию на выходах микросхемы памяти.

2.2. С помощью импульсов с частотами F, 2F, 4F, 8F, 16F и, при необходимости, триггеров сформировать управляющие и информационные сигналы с таким расчётом, чтобы возможна была работа устройства в динамике.

2.3. Усложнить устройство добавлением сумматора с таким расчётом, чтобы в выходном регистре после цикла приёма информации сохранялась сумма всех принятых чисел. Исходное состояние выходного регистра считать равным нулю. Построить временные диаграммы работы разработанного устройства. По возможности собрать устройство на стенде, формируя сигналы управления с кнопок, и проверить работоспособность.

2.4. Предложить в разработанной схеме способ автоматического приведения регистра в нулевое состояние вместе со счётчиком адреса.

Практическая работа №14

По теме: «Таймеры и процессоры событий МК»

1. С помощью одного из таймеров общего назначения сгенерировать задержку длительностью 1 с (на основе данных о рабочей частоте). Задержку генерировать на основе прерываний таймера. Продемонстрировать расчеты, подтверждающие правильность задания задержки.

2. Реализовать с помощью прерывания по переполнению таймера временную задержку с поочередным включением светодиодов на плате по кругу.

Практическая работа №15

По теме: «Сравнительная характеристика МК ведущих фирм»

Задание: Найти информацию по теме «Сравнительная характеристика МК ведущих фирм».

Найденную информацию предоставить в виде таблицы(не менее 4 сравниваемых характеристик) с подробным описанием каждого элемента.

Работу оформить в текстовом редакторе с указанием списка источников.

 

Практическая работа №16

По теме: «Основные этапы разработки МПС»

Задание 1.

Составьте набор команд на C, для вычисления значение выражения с использованием арифметических команд.

Исходные данные

    1. 1.a+b/(2-c)*d-1 

    1. 2.(a-b)/(2+c)*d 

    1. 3.a*b/(c*d)-5 

    1. 4.a-b*c*(3+d)+2 

    1. 5.(a-4)/(b+c)-d 

    1. 6.a-b/(c+d*2) 

    1. 7.a*5—(b+c+d)/2 

    1. 8.(a-b*c)/(d+5) 

    1. 9.a+b/c-d*5+1 

    1. 10.a/(3*b-c)+d 

    1. 11.(a-b)/2+(c+d)/3 

    1. 12.(a+1)/(b-1)+c*d 

    1. 13.(a-b*(c-d))/4 

    1. 14.a*b+(c-1)/d+1 

    1. 15.a/(b*(c+1))-d 

    1. 16.(a+b)*(c+3)/(d-1) 

    1. 17.(a-b+c*2)/(d+5) 

    1. 18.(a-b/c)*(d-3)+1 

    1. 19.a+2*b-3*(c-d) 

    1. 20.a*(3+b)-2*(c+d) 

    1. 21.(a+b/2-c*d-1 

    1. 22.a-b/(2+c)*d 

    1. 23.a*(b/c+3)*d-5 

    1. 24.(a-b)*c/4+(d*2) 

    1. 25.a-4/(b+c)*d 

    1. 26.a-b/(c+d*2) 

    1. 27.a*(5—b)+c+d/2 

    1. 28.a-b*(c/d+5) 

    1. 29.a+b/(c-d)*3+1 

    1. 30.a/3*(b-c)+d 

    1. 31.(a-b/2)*(c+d)/3 

    1. 32.a+8/b-(1+c)*d 

    1. 33.a-b*(c-d)/4 

    1. 34.a*b+(c-2)/(d+3) 

 

Задание 2: F(a,b,c) = avb&(avc&¬b)

Вычислите значение функции 

а) При a = 0, b = 1, c = 1;

б) При a = 1, b = 0, c = 1;

Задание 3:

Докажите, что функции f1 и f2 эквивалентны.

F1(x,y)= xvy

F2(x,y)=xvy v x&y

Результаты вычислений представить в виде отчета.

Практическая работа №17

По теме: «Выполнение циклических конструкций и операторов ветвления»

  1. 1.Дано целое число N>0. Если оно является степенью числа 3, то вывести True, если не является — вывести False.  

  2. 2.Дано целое число N>0, являющееся некоторой степенью числа 2: N=2K. Найти целое число K — показатель этой степени.  

  3. 3.Даны два целых числа A и B (A<b< em="" style="box-sizing: border-box;">). Вывести в порядке убывания все целые числа, расположенные между A и B (не включая числа A и B), а также количество N этих чисел.</b<>  

  4. 4.Дано целое число N>0. Найти произведение 1.11.21.3… (N сомножителей)  

Результаты вычислений представить в виде отчета.

Практическая работа №18

По теме: «Работа с цифровыми портами ввода-вывода»

Задание: Найти информацию по теме «Работа с цифровыми портами ввода-вывода».

Найденную информацию предоставить в реферата с подробным описанием примеров использования кода операторов.

Работу оформить в текстовом редакторе с указанием источников.

Практическая работа №19

По теме: «Организация циклов и временных задержек»

Решите следующие задачи:

  1. 1.Подсчёт числа импульсов за заданный промежуток времени на основе двух таймеров/счётчиков 

  2. 2.Опрос группы импульсных датчиков 

  3. 3.Измерение временных интервалов программным способом 

  4. 4.Измерение временных интервалов на основе таймера 

  5. 5.Подсчёт числа импульсов между двумя событиями 

Результаты вычислений представить в виде отчета.

Практическая работа №20

По теме: «Организация подпрограмм»

Решите следующие задачи:

  1. 1.Составить программу для нахождения наибольшего общего делителя четырех натуральных чисел. 

  2. 2.Составить программу для нахождения наименьшего общего кратного трех натуральных чисел. 

  3. 3.Написать программу для нахождения суммы большего и меньшего из трех чисел. 

  4. 4.Вычислить площадь правильного шестиугольника со стороной а, используя подпрограмму вычисления площади треугольника. 

  5. 5.На плоскости заданы своими координатами п точек. Составить программу, определяющую, между какими из пар точек самое большое расстояние. Указание. Координаты точек занести в массив. 

Результаты вычислений представить в виде отчета.

Практическая работа №21

По теме: «Работа с макросами»

Решите следующие задачи:

Задача 1. Разработать программу, которая реализует 3 макросы:

Задача 2. вычисления площади треугольника по сторонам a, b, c. Если из сторон a, b, c невозможно образовать треугольник, то макрос возвращает 0.

Задача 3. С помощью директивы #define написать следующие макросы:

a) возведение числа в степень;

b) проверка числа на четность;

с) нахождение меньшего из двух чисел.

Задача 4. Задать константы M1,M2,...,M5 и вычислить M1+ 2M2 + 3M3 + 4M4 + 5M5

Задача 5. С помощью директив #if, #else, #elif осуществлять выбор строк программы для вычисления либо (a+b)^2 , либо (a-b)^2.

Результаты вычислений представить в виде отчета.

Практическая работа №22

По теме: «Обработка прерываний»

1. Построить программу реализации "бегущего огня" на основе программно-аппаратной задержки .

Внешний сигнал прерывания INT0/ вызывает программу вывода в порт Р1 "решетки", например код 55H.

Изучить отличия формирования сигнала прерывания по фронту и уровню. Замаскировать прерывание INT0/ , а затем и прерывание от TF0, объяснить поведение программы (отсутствие индикации ).

2. Построить программу "бегущего огня" справа налево. По сигналу прерывания INT0/ обеспечить изменение направления перемещения огней. Запрограммировать формирование сигнала прерывания по срезу.

Убедится, что при формировании сигнала прерывания по уровню программа может работать неустойчиво.(При программировании регистров управления прерыванием обеспечить разрешение прерывания от T/C0 и INT0/).

3. Изучить режимы обработки запросов прерываний с различными приоритетами. Для этого назначить сигналу INT0/ приоритет, равный и меньше приоритета сигнала прерывания F0 от T/C0. Убедится, что программа, запускаемая от таймера/счечика 0, не прерывается.

Содержание отчета

1.Привести форматы и назначение управляющих слов, используемых при программировании подсистемы прерывания микроконтроллера.

2. Привести схемы алгоритмов, межпрограммные переходы при обработке прерываний.

3. Представить выводы по выполненным заданиям.

 

Практическая работа №23

По теме: «Сравнительный анализ IDE»

Задание: Найти информацию по теме «Сравнительный анализ IDE».

Найденную информацию предоставить в виде таблицы(не менее 4 сравниваемых характеристик) с подробным описанием каждого элемента.

Работу оформить в текстовом редакторе с указанием списка источников.

Практическая работа №24

По теме: «Создание типового проекта в IDE»

Создать проект в STM32 CubeIDE:

  1. 1.подключить светодиоды: RED1, YELLOW2, GREEN2; 

  2. 2.подключить семисигментный индикатор; 

  3. 3.подключить нижний ряд кнопок; 

  4. 4.сгенерировать программный код проекта. 

  5. 5.Составить подробную инструкцию по созданию проекта в STM32 CubeIDE. 

Практическая работа №25

По теме: «Построение программируемого счетчика-таймера на микроконтроллере»

Задание.

  1. 1.Создайте функцию задержки с использованием прерывания по переполнению таймера T0. Время задержки и частоту контроллера укажет преподаватель.  

  2. 2.Программа для демонстрации работы счетчика таймера в режиме прерываний выполняет инициализацию оборудования (тактовый генератор, порты вывода, счетчик-таймер и контроллер векторных прерываний). При этом тактовый генератор и счетчик-таймер программируются для выработки временного интервала длительностью примерно 1 с. Контроллер прерываний необходимо запрограммировать на обработку прерывания, соответствующего заданному событию в счетчике-таймере. Обработчик прерывания каждую секунду осуществляет перезапуск счетчика-таймера с выводом состояния на светодиодные индикаторы. 

Результаты представить в виде отчета.

Практическая работа №26

По теме: «Подключение к микроконтроллеру семисегментного светодиодного индикатора»

Задание:

  1. 1.Разработать обратный таймер на 5 секунд. Обратный отсчет должен начинаться при подаче питания схемы. При окончании счета на индикаторе должна мигать цифра  0 с частотой 1Гц. 

  2. 2.Разработать таймер на 10 секунд. Счет должен производиться на индикаторе D3, начинаться при подаче питания схемы и производиться от 0 до 9 включительно.  

  3. 3.Разработать программу индикации бегущего огня на семисегментном дисплее. Переключение индикации должно производиться с интервалом 500 мс. 

  4. 4.Разработать программу индикации состояния остановки воспроизведения для медиаплеера на семисегментном дисплее. На индикаторе должна отображаться надпись “Stop”. 

  5. 5.Разработать программу, формирующую алгоритм работы светофора с таймером обратного отсчета. 

Результаты представить в виде отчета.

Практическая работа №27

По теме: «Подключение к микроконтроллеру светодиодной матрицы»

Задание:

  1. 1.Разработать программу, формирующую алгоритм работы светофора с дополнительной секцией со стрелкой. 

  2. 2.Разработать программу адресной светодиодной матрицы для визуального отображения информации. 

Результаты представить в виде отчета.

 

Практическая работа №28

По теме: «Подключение к микроконтроллеру RGB-светодиода»

Задание:

  1. 1.Написать программу для контроля яркости RGB-светодиода. 

  2. 2.Написать программу плавного перехода между любыми цветами. 

  3. 3.Написать программу цветового колеса. 

Результаты представить в виде отчета.

Практическая работа №29

По теме: «Подключение к микроконтроллеру светодиодного шкального индикатора»

Задание:

  1. 1.Написать программу анализатора спектра на основе шкального индикатора. 

  2. 2.Написать программу визуального отображения сигнала на потенциометре. 

Результаты вычислений представить в виде отчета.

Практическая работа №30

По теме: «Подключение к микроконтроллеру аналогового датчика температуры»

Задание: Написать программу для измерение температуры контактным методом, обработки измерительного сигнала с помощью микроконтроллера и вывода значения температуры на 7-сегментный дисплей

Результаты представить в виде отчета.

 

Практическая работа №31

По теме: «Подключение к микроконтроллеру энкодера»

Задание:

  1. 1.Написать программу для исследование характеристик реверсивного оптического инкрементного энкодера. 

  2. 2.Написать программу для исследование характеристик реверсивного оптического инкрементного энкодера с функцией сброса. 

Результаты представить в виде отчета.

Практическая работа №32

По теме: «Подключение к микроконтроллеру модуля знакосинтезирующего ЖКИ»

Задание:

  1. 1.Разработать программу, которая выводит в верхнюю строку модуля ЖКИ название группы и показания часов в формате ЧЧ:ММ:СС, а в нижнюю – фамилию студента. 

  2. 2.Обеспечить включение подсветки ЖКИ нажатием кнопки. Подсветка должна автоматически выключаться по истечении 5 с 

Практическая работа №33

По теме: «Подключение к микроконтроллеру модуля графического ЖКИ с сенсорным экраном»

Задание:

Написать программу для иллюстрации работы с сенсорным экраном.

Практическая работа №34

По теме: «Основные этапы разработки МПС»

Задание: Написать программу для регулировки положения сервомотора с использоваться потенциометра, угол поворота оси сервомотора будет отображаться на экране ЖК дисплея 16х2

Практическая работа №35

По теме: «Подключение к микроконтроллеру шагового двигателя»

Задание:

  1. 1.Написать программу для управления униполярным шаговым двигателем. 

  2. 2.Написать программу для управления биполярным шаговым двигателем. 

Результаты представить в виде отчета.

Практическая работа №36

По теме: «Подключение к микроконтроллеру датчика по цифровому интерфейсу SPI»

Задание:

  1. 1.Написать программу для подключения датчика влажности по протоколу SPI. 

  2. 2.Написать программу для подключения датчика давления по протоколу SPI. 

  3. 3.Написать программу для подключения датчика температуры по протоколу SPI. 

  4. 4.Всю информацию с датчиков вывести на семисегментный индикатор. 

Практическая работа №37

По теме: «Подключение к микроконтроллеру датчика по цифровому интерфейсу I2C»

Задание:

  1. 1.Написать программу для подключения датчика влажности по протоколу I2C. 

  2. 2.Написать программу для подключения датчика давления по протоколу I2C. 

  3. 3.Написать программу для подключения датчика температуры по протоколу I2C. 

  4. 4.Всю информацию с датчиков вывести на семисегментный индикатор. 

 

Примечания:

  1. 1.При написании программ студентам разрешается использовать справочную литературу(xabr, datasheet и т.д.). 

  2. 2.Критерии оценивания отражены в методических указаниях.