- •Для специальности 230401 Информационные системы (по отраслям)
- •Содержание
- •1. Паспорт
- •1.1 Область применения
- •1.2 Цели и задачи – требования к результатам освоения дисциплины:
- •1.3 Рекомендуемое количество часов:
- •2 Структура и методические указания к выполнению практических работ
- •2.1 Распределение компетенций по тематикам практических работ
- •2.2 Методические указания для выполнения практических работ Практическая работа №1 Тема: Кодирование информации в пк с использованием кодов аsсii
- •2 Краткие теоретические сведения
- •Восьмиразрядный код:
- •3 Задания
- •4 Порядок выполнения
- •5 Содержание отчёта
- •6 Контрольные вопросы
- •Практическая работа № 2
- •2 Теоретические сведения
- •3 Задания
- •4 Порядок выполнения
- •5 Содержание отчёта
- •6 Контрольные вопросы
- •Практическая работа № 3
- •Практическая работа № 4
- •3 Теоретические сведения
- •4 Задание
- •7 Контрольные вопросы
- •Практическая работа № 5
- •Практическая работа № 6
- •2 Оборудование и программное обеспечение
- •3 Теоретические сведения
- •4 Задание
- •5 Порядок выполнения
- •6 Содержание отчета
- •7 Контрольные вопросы
- •Практическая работа № 7
- •2 Материальное обеспечение
- •3 Теоретические сведения
- •4 Задания
- •5 Прядок выполнения
- •6 Содержание отчета
- •7 Контрольные вопросы
- •Практическая работа № 8
- •2 Оборудование и программное обеспечение
- •5 Порядок выполнения
- •6 Содержание отчета
- •Практическая работа № 9
- •3 Теоретические сведения
- •4 Задание
- •5 Порядок выполнения
- •7 Контрольные вопросы
- •Практическая работа № 10
- •Практическая работа № 11
- •Практическая работа № 12
- •4 Задание
- •5 Порядок выполнения
- •7 Контрольные вопросы
- •Практическая работа № 13
- •3 Теоретические сведения
- •4 Задание
- •6 Содержание отчета
- •7 Контрольные вопросы
- •Практическая работа № 14
- •Практическая работа № 15
- •3. Перечень рекомендуемых учебных изданий, Интернет-ресурсов, дополнительной литературы
7 Контрольные вопросы
7.1 Назначение и структура АЛУ.
7.2 Пояснить назначении блоков АЛУ в режиме сложения/вычитания.
7.3 Пояснить процесс сложения и вычитания двоичных чисел.
7.4 Пояснить назначении блоков АЛУ В режиме умножения.
7.5 Пояснить процесс умножения двоичных чисел.
Практическая работа № 10
Тема: Изучение языка АССЕМБЛЕР
Цель работы: Получить практические навыки работы с языком АССЕМБЛЕР на примере микроконтроллера КМ1816ВЕ48.
Краткие сведения из теории
Примеры написания программ на языке АССЕМБЛЕР реализующих передачу во внешнее устройство через порт BUS числа импульсов, поступивших в микроконтроллер за заданный интервал времени
Вариант 1.
В
зяты
два источника импульсов:
задаёт временной интервал (счет по положительному фронту);
Задаёт импульсы, подлежащие счёту;
Счётчик - узел таймер – счётчика микроконтроллера (TCNT), микросхема КМ1816ВЕ48.
Б
локи
алгоритма 2 и 4 фиксируют появление на
входе Т0 соответственно логическую 1
или 0.
Программа:
CLR A :сброс аккумулятора <A>-0
MOV T, A :сброс счётчика:<T>-<A>
M1: JNT0 M1 :ожидание импульса на входе Т0
STRT CNT :запуск счётчика
M2: JTO M2 :ожидание отрицательного
фронта на входе<T0>
STOP CNT :останов счётчика
MOV A, T :пересылка в аккумулятор
содержимого счётчика
OUT BUS, A :вывод данных
Вариант 2
Таймер-счетчик просчитывает импульсы, поступающие на вход Т1; временной интервал задается числовым значением
t-k-tц, где tц - время прохождения одного машинного цикла;
к - число циклов;
t - временной интервал.
П
усть
t
= 700
мкС, при тактовой частоте f
= 6 МГц tц
= 2f5
мкС, соответственно.
Каждая команда выполняется за два цикла, следовательно, tц ком=5мкС.
k=140 - число циклов
Программа:
CLR A : сброс аккумулятора
MOV T, A : сброс счётчика
STRT CNT : запуск счётчика
MOV R0, #140 :передача в R0 числа повторений
цикла
WAIT: DJNZ R0, WAIT:цикл, задающий временной
интервал
STOP CNT : останов счётчика
MOV A, T : пересылка в аккумулятор
содержимого счётчика
OUTL BUS, A : вывод данных
Временной интервал задается TCNT, работающим в режиме таймера.
Расчет сигналов машинного цикла: при f1= 6 МГц период поступления сигналов в таймер:
tmjn= 2,532 = 80 мкС
tmax = 80256 = 20480 мкс ~ 20 мС
В таймер вносят число 256 - t/80 ,
где t [мкС], и после запуска таймера ожидается момент его переполнения, т.е, установления числа 256; при этом происходит сброс в 0 и выдача переноса TF=1
Пусть нужно определить число импульсов, поступивших на вход микроконтроллера за 12.0 мс.
Вносимое в TCNT число будет 256-12000,0/80=106
Программа решения:
Программа:
MOV A, #106 :передача в аккумулятор числа 106
MOV T, A :пересылка содержимого аккумулятора в таймер
CLR A :сброс аккумулятора
START T :запуск таймера
M1: JTF M2 :выход из цикла при переполнении таймера (TF=1)
JT0 M1 :переход, если нет импульса (Т0=1)
WAIT: JTN0 WAIT :ожидание конца импульса
INC A :инкремент аккумулятора
JMP M1 :безусловный переход
M2: OUTL BUS, A :вывод результата в порт
Ход выполнения работы
Выписать в таблицу 1 команды АССЕМБЛЕРА из предыдущей части
Таблица 1
Мнемонический код команды |
Операнды |
Назначение команды |
|
1 |
2 |
||
|
|
|
|
Для приведенного ниже варианта алгоритма написать программу на языке ассемблер
1 |
Выполнить опрос сигнала на входе Т0 микроконтроллера с интервалом 100 мкС. После 10-кратного обнаружения «1» на входе Т0 содержимое аккумулятора вывести через порт 1. |
|
2 |
Определите длительность импульса, поступающего на вход ТО, приняв за единицу временного интервала 100 мкс |
|
3 |
Определите период импульсной последовательности, поступающей на вход ТО, приняв за единицу временного интервала 1 мс.
|
|
4 |
Подсчитайте количество импульсов, поступающих на входТ1 в течение времени, задаваемого длительностью импульса на входе ТО
|
|
5 |
Подсчитайте число импульсов, поступающих на вход Т1 за время 1 с. Используйте счетчш микроконтроллера.
|
|
Содержание отчёта:
Цель работы
Заполненная таблица 1
Условие задачи, алгоритм и написанная программа для варианта задания, определённого педагогом
Выводы по результатам работы
