Главная » Просмотр файлов » А.П.Евдокимов, Л.Л.Владимиров Программирование микроконтроллера К1986ВЕ92QI компании Миландр

А.П.Евдокимов, Л.Л.Владимиров Программирование микроконтроллера К1986ВЕ92QI компании Миландр (1186478), страница 9

Файл №1186478 А.П.Евдокимов, Л.Л.Владимиров Программирование микроконтроллера К1986ВЕ92QI компании Миландр (А.П.Евдокимов, Л.Л.Владимиров Программирование микроконтроллера К1986ВЕ92QI компании Миландр) 9 страницаА.П.Евдокимов, Л.Л.Владимиров Программирование микроконтроллера К1986ВЕ92QI компании Миландр (1186478) страница 92020-08-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 9)

Занесите программу в микроконтроллер с помощью программатора. Наблюдайте результат на экране ЖК-модуля. Измените числозначащих цифр после запятой числа на экране.636. Предельно аккуратно вставьте наконечник тонкой отвертки вшлиц винтового стержня построечного резистора R1 и сделайте несколько оборотов по движению или против движения часовой стрелки. Наблюдайте за изменениями значений оцифрованного напряженияна экране ЖК-модуля.КОНТРОЛЬНЫЕ ВОПРОСЫ1. Какой сигнал называют аналоговым?2. Какой сигнал называют цифровым?3.

Что такое дискретизация сигнала?4. Что такое квантование сигнала?5. Что понимают под кодированием при аналого-цифровом преобразовании?6. Сколько каналов у встроенного аналого-цифрового преобразователя микроконтроллера К1986ВЕ92QI?7. Сколько разрядов содержит код на выходе АЦП?8. Поясните логику работы программы, приведенной в даннойлабораторной работе.64ЛАБОРАТОРНАЯ РАБОТА 9.МОДУЛЬ УНИВЕРСАЛЬНОГО АСИНХРОННОГОПРИЕМОПЕРЕДАТЧИКАЦЕЛЬ РАБОТЫИзучить работу модуля универсального асинхронного приемопередатчика UART и научиться его настраивать.ТЕОРЕТИЧЕСКАЯ ЧАСТЬВ данной работе мы осуществим вывод информации из микроконтроллера на монитор персонального компьютера (ПК).

Одним извозможных вариантов такой передачи является схема, показанная нарисунке 9.1.Рисунок 9.1 – Схема соединений отладочной платы с персональнымкомпьютеромРасположение разъема для интерфейса RS-232 (COM-порт) отладочной платы показана на рисунке 1.3, поз. 3. Если персональныйкомпьютер имеет аналогичный разъем, то отладочная плата соединяется с ПК напрямую кабелем RS-232 9F-9F если у компьютера имеется только разъем для интерфейса USB, потребуется преобразовательинтерфейсов, который выполнен также в виде кабеля.

В последнемслучае после установки программного обеспечения у ПК появитсявиртуальный COM-порт, с которым можно работать также, как сCOM-портом, существующим физически.Для обмена информацией между компьютером и внешним терминалом существуют различные программы – мы воспользуемся свободно распространяемой программой Terminal v1.9b, интерфейс которой весьма прост и интуитивно ясен.65Рисунок 9.2 – Настройка интерфейса программы Terminal v1.9bПосле подключения кабелей и запуска программы следуетнастроить режим обмена: скорость обмена Baud rate, допустим, 115200 бод; количество бит в одном пакете данных Data bits – 8; проверка данных на четность Parity – none (отсутствует); количество стоповых битов Stop bits – 1; управление потоком данных Handshaking – none (отсутствует).Далее следует нажать кнопку Connect (соединить) и выбрать из выпадающего меню COM-порт, по которому будет осуществляться обмен.Поле, в котором будет располагаться получаемая компьютероминформация, также подлежит настройке.Рисунок 9.3 – Настройка поля приема информацииДля того чтобы передаваемые символы (буквы, цифры, пробелыи т.п.) отображались привычным для нас образом, выберем кодировкуASCII; для контроля приходящих кодов, которые будут располагатьсяв правой части экрана, можем выбрать Dec (десятеричный), Hex(шестнадцатеричный), Bin (двоичный) либо не выбирать ничего.Счетчик Counter подсчитывает, сколько раз тот или иной символ былполучен компьютером.

Код подсчитываемого символа, например, 13(перевод строки), выставляется вручную. Сбрасывается счетчик подсчета символов кнопкой Reset Counter. Очистить поле приема информации можно кнопкой CLEAR.Теперь поговорим о микроконтроллере. Модуль универсальногоасинхронного приемопередатчика UART (Universal AsynchronousReceiver-Transmitter) представляет собой периферийное устройствомикроконтроллера (найдите его на рисунке 1.1). Модуль передает информацию побитно, для чего преобразует данные, передаваемые напериферийное устройство, из параллельной в последовательную фор66му. Получает информацию также побитно, для чего преобразует данные, полученные от периферийного устройства, из последовательнойв параллельную форму.Микроконтроллер содержит два однотипных блока: UART1 иUART2.

Для передачи информации от каждого блока необходимо трипроводника: по одному осуществляется передача данных (transmit), повторому – прием (receive); третий провод – земля (ground). В таблице9.1 приведено распределение функций UART по выводам микроконтроллера. Обратим внимание на то, что функции UART относятсяк альтернативным либо переопределенным функциям порта и нуждаются в настройке.Таблица 9.1 – Распределение функций UART по линиям портови выводам микроконтроллера К1986ВЕ92QIЛинияпортаВыводмикроконтр.PA6PA7PB0PB1PB5PB6PD0PD1PD7PF0PF157564344505131322923Цифровая функцияАльтернативная––––UART1_TXDUART1_RXDUART2_RXDUART2_TXD–––ПереопределеннаяUART1_RXDUART1_TXDUART1_TXDUART2_RXD––––UART1_RXDUART2_RXDUART2_TXDДля обмена данными с компьютером выберем блок UART2 инастроим линии PF0 и PF1 порта F соответственно на прием (переопределенная цифровая функция UART2_RXD) и на передачу (переопределенная цифровая функция UART2_TXD).Наша первая программа будет совсем простой: передача по одному байту от микроконтроллера на ПК, тем не менее прием данныхот ПК микроконтроллером также будет описан.Для работы с блоком UART будет использована библиотекаMDR32F9Qx_uart.h, которая описывает структуру UART_InitTypeDef.Структура UART_InitTypeDef имеет следующие поля: UART_BaudRate – скорость передачи данных; UART_WordLength – длина слова в пакете; UART_StopBits – количество стоп-битов;67 UART_Parity – контроль четности; UART_FIFOMode – определяет режим работы буфера FIFO: осуществлять передачу по нескольку байт или побайтно; UART_HardwareFlowControl – включает/выключает аппаратныйконтроль потока.При работе с UART-контроллером применяются функции записи данных UART_SendData и чтения UART_ReceiveData.Рассмотрим программу, которая периодически посылает на ПКтекст «UART», переводит строку и делает «возврат каретки», т.е.

ставит курсор в начало строки.// Подключение необходимых библиотечных файлов#include <MDR32F9Qx_uart.h>#include <MDR32F9Qx_port.h>#include <MDR32F9Qx_rst_clk.h>// Определение функции задержки#define DELAY(T) for (i = T; i > 0; i--)int i; // Глобальная переменная счетчика в макроса DELAY()// Процедура инициализации портаvoid PortsInit(){// Включение тактирования порта FRST_CLK_PCLKcmd(RST_CLK_PCLK_PORTF, ENABLE);// Объявление структуры для инициализации портаPORT_InitTypeDef Nastroyka;// Инициализация порта B для функции UART// Настройка порта по умолчаниюPORT_StructInit(&Nastroyka);// Переопределение функции портаNastroyka.PORT_FUNC = PORT_FUNC_OVERRID;// Установка короткого фронтаNastroyka.PORT_SPEED = PORT_SPEED_MAXFAST;// Цифровой режим работы выводаNastroyka.PORT_MODE = PORT_MODE_DIGITAL;// Инициализация вывода PF1 как UART_TX (передача)Nastroyka.PORT_Pin = PORT_Pin_1;Nastroyka.PORT_OE = PORT_OE_OUT;PORT_Init(MDR_PORTF, &Nastroyka);// Инициализация вывода PF0 как UART_RX (прием)Nastroyka.PORT_Pin = PORT_Pin_0;Nastroyka.PORT_OE = PORT_OE_IN;PORT_Init(MDR_PORTF, &Nastroyka);}// Процедура инициализации контроллера UARTvoid UARTInit()68{// Включение тактирования UART2RST_CLK_PCLKcmd(RST_CLK_PCLK_UART2, ENABLE);// Объявление структуры для инициализации контроллера UARTUART_InitTypeDef UART_InitStructure;// Делитель тактовой частоты UART = 1UART_BRGInit(MDR_UART2, UART_HCLKdiv1);// Конфигурация UART// Скорость передачи данных – 115200 бодUART_InitStructure.UART_BaudRate = 115200;// Количество бит в посылке – 8UART_InitStructure.UART_WordLength = UART_WordLength8b;// Один стоп-битUART_InitStructure.UART_StopBits = UART_StopBits1;// Без проверки четностиUART_InitStructure.UART_Parity = UART_Parity_No;// Выключить работу буфера FIFO приемника и передатчика,// т.е.

передача осуществляется по одному байтуUART_InitStructure.UART_FIFOMode = UART_FIFO_OFF;// Разрешить прием и передачу данныхUART_InitStructure.UART_HardwareFlowControl =UART_HardwareFlowControl_RXE| UART_HardwareFlowControl_TXE;// Инициализация UART2 с заданными параметрамиUART_Init(MDR_UART2, &UART_InitStructure);// Включить сконфигурированный UARTUART_Cmd(MDR_UART2, ENABLE);}// Объявление главной функцииint main(void){PortsInit(); // Вызов функции инициализации портаUARTInit();// Вызов функции инициализации UART// Бесконечный циклwhile (1){UART_SendData(MDR_UART2, 'U'); // Передать символDELAY(50000);// ЗадержкаUART_SendData(MDR_UART2, 'A'); // Передать символDELAY(50000);// ЗадержкаUART_SendData(MDR_UART2, 'R'); // Передать символDELAY(50000);// ЗадержкаUART_SendData(MDR_UART2, 'T'); // Передать символDELAY(50000);// ЗадержкаUART_SendData(MDR_UART2, '\n'); // Перевод строкиDELAY(50000);// Задержка69UARTUART_SendData(MDR_UART2, '\r');DELAY(500000);}// Возврат каретки// Задержка}ПРАКТИЧЕСКАЯ ЧАСТЬ1.

Подключите отладочную плату к компьютеру так, как это делалось в предыдущих лабораторных работах.2. Соедините COM-порт отладочной платы с компьютером так,как это показано на рисунке 9.13. Подайте питание на плату.4. Запустите среду программирования Keil μVision.5. Запустите и настройте программу Terminal v1.9b.6. С помощью программатора занесите в микроконтроллер программу передачи информации на монитор компьютера. Наблюдайтерезультат на экране.7. Внесите изменение в передаваемое сообщение.8.

Измените скорость передачи сообщения.КОНТРОЛЬНЫЕ ВОПРОСЫ1. Как организовать обмен данными между микроконтроллероми персональным компьютером? Какие интерфейсы при этом используются?2. Как настроить интерфейс программы Terminal v1.9b для обмена данными между микроконтроллером и персональным компьютером?3. Как настроить порты микроконтроллера для приема и передачи информации с помощью UART?4. Как изменить скорость обмена данными между микроконтроллером и персональным компьютером?5. Поясните логику работы программы, приведенной в даннойлабораторной работе.70ЗАКЛЮЧЕНИЕПостоянно и стремительно развиваясь, микроконтроллерыпредоставляют разработчику систем управления всё бо́льшие возможности, но при этом и освоение микроконтроллеров становится сложнее.

За отведенное на изучение дисциплины время мы сумели сделатьлишь первые робкие шаги, но, уверен, что и они вызывают определенные затруднения.В последнее время издано немало методических пособий, помогающих освоить микроконтроллеры, названия некоторых из них приведены в библиографическом списке.Работа в среде проектирования Keil μVision, в том числе вопросы отладки программ, которые совсем не затрагиваются в настоящемпрактикуме, прекрасно изложены в работах [1], [2] и [4].Сведения о языке Си, в объеме, достаточном для программирования микроконтроллеров, приведены в учебно-методических пособиях [3] и [4].В работе [5] более подробно, чем обычно, описывается структура микроконтроллера, хотя, конечно, наиболее полное описание приведено в фирменной спецификации [9].Познакомиться с применением микроконтроллера в системахавтоматического регулирования можно в учебном пособии [6].Учебное пособие [7] поможет глубже понять механизмы прерываний в микроконтроллере.Расширить свои знания об аналого-цифровых преобразователяхможно, прочитав работы [1], [3], [6], [7], [8].Принцип действия универсального асинхронного приемопередатчика описан в работах [3], [4], 5], [8].Однако надо понимать, что сведения, изложенные в указанныхпособиях, невозможно зазубрить, они будут полезны лишь при условии активного освоения микроконтроллера путем написания собственных программ в среде программирования и проверки их на отладочной плате.Дальнейшее, более углубленное, изучение микропроцессорнойтехники предполагается в рамках магистерской программы подготовки.

Характеристики

Список файлов лабораторной работы

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6455
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее