Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная 4 USART.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
51 Кб
Скачать
☆

Задание

  1. Написать программу, которая отправляет заданный байт на ПК с периодом 1 секунда.

  2. Написать функцию, отправляющую на ПК строку. И на её основе написать передачу на ПК строки вида: «i=x», где х увеличивается на 1 каждую секунду.

  3. Написать программу, которая по команде с ПК зажигает заданный светодиод.

Порядок выполнения задания.

Задание 1:

  1. Запустить файл «lab5DMA.uvproj» в папке «lab4».

  2. Разобраться в структуре программы и найти функцию main().

  3. Внутри цикла while(1) отправить любой байт с помощью функции send_to_USART (см. пункт «Отправка байта по USART»).

  4. В следующей строке вызвать функцию задержки программы на 1 секунду: delay_ms(1000);

  5. Проверить работоспособность программы. Для этого необходимо выполнить следующие действия:

    1. Подключить соединительные провода от модуля USART к соответствующим выводам отладочной платы. Порт и номер ножки порта можно определить, посмотрев, какие выводы использованы для инициализации USART в функции «USART_ini(void)» в коде программы.

    2. Запустить на ПК программу «ComMon.exe», которая находится в папке «ПО\Работа с COM портом\ComMon». Выбрать COM-порт и снять обе галочки «text».

Задание 2:

  1. Написать функцию передачи строки по USART как описано в «Отправка строки с текстом по USART».

  2. Написать счётчик, который увеличивает значение i на 1 каждую секунду.

  3. С помощью функции sprintf из раздела «Использование функции sprintf» создайте строку вида «i=x», где вместо х вставляется значение i.

  4. С помощью написанной функции по передаче строки, отправьте полученную строку на ПК.

Задание 3:

  1. Выяснить номера выводов, к которым подключены светодиоды, как описано в разделе «Определение подключения светодиодов» лабораторной работы 1.

  2. В функцию main() после строки USART_ini(); добавить код инициализации выводов, к которым подключены светодиоды. Код скопировать из программы для лабораторной работы 1.

  3. Найти в программе функцию обработки прерываний USART3_IRQHandler(void). После строки, которая реализует сохранение принятого байта в переменную Res_data, добавить проверку следующих условий (условную конструкцию if): если принятый байт равен 1, включить красный светодиод; если принятый байт равен 2, включить желтый светодиод; если принятый байт равен 3, включить зеленый светодиод; если принятый байт равен 4, включить синий светодиод. Если принят ноль, выключить все светодиоды.

  4. Проверить работоспособность программы. Для этого необходимо выполнить следующие действия:

    1. Подключить соединительные провода от модуля USART к соответствующим выводам отладочной платы. Порт и номер ножки порта можно определить, посмотрев, какие выводы использованы для инициализации USART в функции «USART_ini(void)» в коде программы.

    2. Запустить на ПК программу «ComMon.exe», которая находится в папке «ПО\Работа с COM портом\ComMon». Выбрать COM-порт и снять обе галочки «text». Для отправки данных на МК необходимо ввести данные в строку внизу окна программы в виде шестнадцатеричных чисел и нажать кнопку «Send».