Главная страница
Навигация по странице:

  • Таймеры микроконтроллера КМ1816Е51

  • Цель работы

  • Лабораторная работа 6 На тему " Таймеры микроконтроллера км1816Е51 " Выполнил студент гр. 3755 Сидорович Е. М проверил преподаватель


    Скачать 15.27 Kb.
    НазваниеЛабораторная работа 6 На тему " Таймеры микроконтроллера км1816Е51 " Выполнил студент гр. 3755 Сидорович Е. М проверил преподаватель
    Дата07.03.2022
    Размер15.27 Kb.
    Формат файлаdocx
    Имя файла6_laba.docx
    ТипЛабораторная работа
    #385919

    ПРАВИТЕЛЬСТВО САНКТ-ПЕТЕРБУРГА

    КОМИТЕТ ПО НАУКЕ И ВЫСШЕЙ ШКОЛЕ

    СПб ГБОУ СПО “Петровский колледж”

    Лабораторная работа №6

    На тему: “Таймеры микроконтроллера КМ1816Е51

    Выполнил студент гр. 3755

    Сидорович Е.М

    Проверил преподаватель:

    Рудаков А.В.

    Санкт-Петербург

    2021

    Цель работы:

    Изучение организации службы времени МК КМ1816ВЕ51, а также приобретение навыков программирования временных задержек в кодах микроконтроллера с использованием службы времени.

    Задание:

    Написать систему программ, которая выполняет следующие функции:

    Обработчик прерывания от таймера 0 инкрементирует содержимое ячейки ADRT и загружает начальное состояние в регистр TL0.

    Первая программа выполняет циклический анализ содержимого ADRT и вызывает подпрограмму вывода массива кодов в порт. Программа располагается в CSEG, начиная с адреса ADR0. Программа должна состоять из двух частей. Первая часть – инициализация системы, вторая – анализ содержимого ADRT и вызов подпрограммы.

    Вторая программа – должна располагаться в памяти CSEG, начиная с адреса ADR1. Она должна при каждом обращении передавать в порт P1 массив кодов длиной N, расположенный в CSEG, начиная с адреса ADR2.

    Начальный код в таймере и константа сравнения должны быть выбраны так, чтобы вызов подпрограммы выполнялся каждые 1 мкс. Считаем, что частота OSC/12 = 1 Мгц.

    Вход в систему программ по команде LJMP ADR0, расположенной в CSEG по адресу 0000H

    Массив кодов должен соответствовать массиву программы 2 из лабораторной работы номер 5.

    Номер

    ADRT

    ADR0

    ADR1

    ADR2

    N

    T

    21

    35

    2BE

    4BE

    782

    D

    1500



    Код лабораторной работы

    ORG 0000H

    LJMP M1

    ORG 000BH

    MOV T10, #9BH

    INC 35H

    RETI

    ORG 02BEH

    M1: MOV DPTR, #0782H

    MOV TL0, 9BH

    MOV TMOD, #02H

    MOV IE, #82H

    MOV TCON, #10H

    NOP

    M2: MOV A, 35H

    CJNE A, #0FH, M2

    MOV 35H, #00H

    LCALL prog

    SJMP M2

    NOP

    ORG 04BEH

    prog: SETB PSW.3

    SETB PSW.4

    MOV R0, #00H

    M3: MOV A, R0

    MOVC A, A+DPTR

    INC R0

    MOV P1, A

    CJNE R0, #0DH, M3

    RET

    ORG 0782H

    DB 00H,01H,02H,03H,04H,05H,06H,07H,08H,09H,10H,11H,12H

    Вывод: в ходе выполнения данной лабораторной работы я приобрел навыки программирования временных задержек в кодах микроконтроллера с использованием службы времени, а также произвел проверку кода на правильность в специальном компиляторе FD51


    написать администратору сайта