- •Методичні вказівки
- •Лабораторная работа №2. Исследование работы цап.
- •Лабораторная работа №3. Программирование режимов обслуживания матричной клавиатуры.
- •Варианты индивидуальных заданий
- •Лабораторная работа №4. Программирование системы обработки данных.
- •Приложение а - Теоретические сведения
- •Приложение б - Система команд mk51
- •Перечень литературы
Лабораторная работа №2. Исследование работы цап.
Тема:Цифро-аналоговое преобразование. Обработка данных.
Цель работы:Научиться обрабатывать и выводить аналоговую величину.
Учебная задача:Разработка программ вывода аналоговых величин для различных методов измерения.
Порядок выполнения лабораторной работы.
Изучить комплекс МК-ЦАП.
Разработать алгоритм для выполнения индивидуального задания.
Разработать программу для выполнения индивидуального задания.
Ввести программу индивидуального задания на ПК.
С помощью ПОС проанализировать выполнение индивидуальной программы
Загрузить программу в стенд ОЭВМ. Убедиться в правильном выполнении индивидуального задания, при отрицательном результате осуществить изменение алгоритма либо программы. Повторить загрузку программы в стенд ОЭВМ
Распечатать листинг правильно работающей программы.
Ответить на контрольные вопросы преподавателя
Представить в отчете алгоритм работы программы.
Пример программы для работы с измерительным комплексом
Выполнить аналогово-цифровое преобразование сигнала на 0-ом входе мультиплексора АЦП. Результат вывести на правую пару знакомест индикатора.
$NOMOD51
$include (C:\Proteus_Lab\BIN\ASM51\mod51)
Org 0000h
Start:
;Вывод результата на индикатор
mov A,#128d ;Заносим в Асс значение
mov P2,#11101010b ;Разрешаем индикатор и ЦАП
mov P0,A ;Вывод результата
;Вывод результата на ЦАП
mov P2,#11101011b ;Разрешаем ЦАП, запрещаем индикатор
mov P0,A ;Вывод результата
jmp start
End
- Варианты индивидуальных заданий л.р. №2
№.вар |
Текст индивидуального задания |
Не четный вариант |
Занести в Регистр R0 число0Xd, в регистрR1 число0Yd. Найти их сумму, затем умножить эту сумму на число 20d. Результат вывести на левую пару знакомест индикатора и ЦАП. Организовать вывод сигнала на индикатор с периодомX,Yсек, на ЦАП с периодомXY/Y сек. Использовать таймер 0 для отсчета времени индикации, таймер 1 для отсчета времени вывода данных в ЦАП. Вывод данных и индикацию выполнять последовательно.Организовать запуск системы по кнопкеSW1 и остановкуSW2. |
Четный вариант |
Занести в Регистр R3 число0Xd, в регистрR4 число0Yd. Найти их сумму, затем умножить эту сумму на число 20d. Результат вывести на правую пару знакомест индикатора и ЦАП. Организовать вывод сигнала на индикатор с периодомX,Yсек, на ЦАП с периодомXY/Y сек. Использовать таймер 1 для отсчета времени индикации, таймер 0 для отсчета времени вывода данных в ЦАП. Вывод данных и индикацию выполнять последовательно. Вывод данных и индикацию выполнять последовательно.Организовать запуск системы по кнопкеSW1 и остановкуSW3. |
Где X– первая цифра номера варианта,Y– вторая цифра номера варианта.
Рисунок 2 - Схема для лабораторной работы №2.
Лабораторная работа №3. Программирование режимов обслуживания матричной клавиатуры.
Тема:Программирование режимов обслуживания матричной клавиатуры.
Цель работы:Научиться выполнять опрос матричной клавиатуры.
Учебная задача:Освоение методов программирования и работы с матричной клавиатурой.
Порядок выполнения лабораторной работы.
Изучить систему работы матричной клавиатуры.
Разработать алгоритм для выполнения индивидуального задания.
Разработать программу для выполнения индивидуального задания.
Ввести программу индивидуального задания на ПК.
С помощью ПОС проанализировать выполнение индивидуальной программы
Загрузить программу в виртуальный стенд ОЭВМ. Убедиться в правильном выполнении индивидуального задания, при отрицательном результате осуществить изменение алгоритма либо программы. Повторить загрузку программы в стенд ОЭВМ
Распечатать листинг правильно работающей программы.
Ответить на контрольные вопросы преподавателя.
Представить в отчете алгоритм работы программы.
Пример выполнения лабораторной работы №3
Задание: используя АЦП на основе ЦАП выполнять преобразование аналогового сигнала. Результат выводит в правую пару знакомест статического индикатора.
$NOMOD51
$include (C:\Proteus_Lab\BIN\ASM51\mod51)
Org 0000h
Start:
movP1, #11111110b;Выбираем первый столбик клавиатуры
mov A,P1
jbACC.3,m11 ;Если бит равен 0 – нажата кнопка 1
mov R3, #1h
m11:
jbACC.4,m12 ;Если бит равен 0 – нажата кнопка 4
mov R3, #4h
m12:
jbACC.5,m13 ;Если бит равен 0 – нажата кнопка 7
mov R3, #7h
m13:
jbACC.6,m14 ;Если бит равен 0 – нажата кнопка *
mov R3, #0Ah
m14:
movP1, #11111101b;Выбираем второй столбик клавиатуры
mov A,P1
jb ACC.3,m21
mov R3, #2h
m21:
jb ACC.4,m22
mov R3, #5h
m22:
jb ACC.5,m23
mov R3, #8h
m23:
jb ACC.6,m24
mov R3, #0h
m24:
movP1, #11111011b;Выбираем третий столбик клавиатуры
mov A,P1
jb ACC.3,m31
mov R3, #3h
m31:
jb ACC.4,m32
mov R3, #6h
m32:
jb ACC.5,m33
mov R3, #9h
m33:
jb ACC.6,m34
mov R3, #0Bh
m34:
movP2,#11110101b;Разрешаем левую пару знакомест индикатораmovP0,R3 ;Выводим значение
jmp start
End