Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Программирование аналогового ввода-вывода




 

Среда разработки Energia и язык Arduino предоставляют следующие функции для программирования аналогового ввода и вывода.

Функция int analogRead().

Описание. Читает значение определенного аналогового вывода. Микроконтроллеры MSP430, входящие в комплект отладочного модуля LaunchPad, имеют 10-битный АЦП. Это означает, что входные напряжения в диапазоне между 0В и +5В переводятся в цифровые значения от 0 до 1023. Дискретность преобразования в таком случае составляет 5/1024 = 0,0049В.
Выполнение преобразования занимает порядка 100мкс, т.е. максимальная скорость считывания составляет 10 000 раз в секунду.

Синтаксис: analogRead(pin).

Параметры: pin - номер контакта микроконтроллера, с которого следует прочесть значение входного аналогового сигнала (обычно от 0В до +5В). Доступные контакты для аналогового ввода показаны на рис. 1.9 и 1.10.

Возвращает: значение целого типа в диапазоне от 0 до 1023.

Примечание: е сли аналоговый вход ни к чему не подключен, то возвращаемое значение будет зависеть от различных факторов, в том числе от уровней напряжения на соседних выводах и заканчивая расстоянием от рук до вывода.

Функция analogWrite().

Описание: Пишет аналоговое значение (заполнение ШИМ) в порт. Может использоваться, например, для установки различной яркости свечения светодиодов, регулирования скорости двигателей. После вызова этой функции на выводе будет присутсвовать меандр с определенным коэффициентом заполнения импульсов до нового вызова этой или другой функции в применении к этому порту. Частота сигнала ШИМ состовляет примерно 490Гц.

Синтаксис: analogWrite(pin, value).

Параметры:

pin - номер контакта микроконтроллера, на который нужно выдать аналоговый сигнал. Доступные контакты для аналогового ввода показаны на рис. 1.9 и 1.10.;

value - коэффициент заполнения ШИМ-сигнала: между 0 (всегда низкий уровень) и 255 (всегда высокий уровень).

Примечание: функция analogWrite не имеет никакого отношения к портам АЦП и функции analogRead. Перед использованием функции analogWrite() не нужно вызывать pinMode() для установки вывода как выходного.

 

 

  1. Меры безопасности

 

Во время выполнения лабораторной работы необходимо:

· соблюдать правила включения и выключения вычислительной техники;

· не подключать кабели, разъемы и другую аппаратуру к компьютеру, не относящиеся к лабораторной установке;

· при включенном напряжении сети не отключать, не подключать и не трогать кабели, соединяющие различные устройства компьютера;

· в случае обнаруженной неисправности в работе оборудования или нарушения правил техники безопасности сообщить руководителю лабораторной работы;

· не пытаться самостоятельно устранить неисправности в работе аппаратуры;

· по окончании работы привести в порядок рабочее место.

ВНИМАНИЕ! При работе за компьютером необходимо помнить: к каждому рабочему месту подведено опасное для жизни напряжение. Поэтому во время работы надо быть предельно внимательным и соблюдать все требования техники безопасности!

 

  1. Описание лабораторной установки

 

Лабораторная установка состоит из:

· платы отладочного модуля MSP430 LaunchPad (MSP-EXP430G2),

· платы расширения с набором внешних устройств.

Плата LaunchPad подключается к порту USB компьютера с помощью прилагаемого кабеля.

Плата расширения подключается к разъему платы LaunchPad (выводы 11… 20). Питание +5В на плату расширения подается от другого свободного порта USB компьютера с помощью кабеля. Питание на плату расширения следует подавать после того, как она подключена к плате LaunchPad. Принципиальная электрическая схема платы расширения приведена на рис. 3.4.


Рис. 3.4. Принципиальная электрическая схема платы расширения

 

Разъем X1 подключается к плате LaunchPad. Разъем X2, распаянный на кабеле, подключается к свободному USB-порту компьютера. Инвертор на транзисторе VT1, выполненный по схеме с общим эмиттером, получает входной сигнал с вывода 11 микроконтроллера (линия порта P2.3). Светодиод VD1 в цепи коллектора транзистора служит для индикации состояния инвертора. Выходное напряжение инвертора, снимаемое с коллектора транзистора VT1, подается на вход фильтра низкой частоты – интегрирующей цепочки R4C1. Выходное напряжение фильтра, снимаемое с конденсатора C1, подается на вывод 15 микроконтроллера (линия порта P1.7, аналоговый вход A7). Напряжение с движка потенциометра R6 подается на вывод 14 микроконтроллера (линия порта P1.6, аналоговый вход A6). Резисторы R5 и R7 предназначены для защиты линий портов. На плате LaunchPad к линии порта P1.6 подключены зеленый светодиод и балластный резистор, они образуют вместе с резисторами R6, R7 делитель напряжения, из-за чего максимальное напряжение на линии P1.6 будет отличаться от напряжения питания 5В. Для устранения влияния цепи зеленого светодиода следует удалить его перемычку J5-1, рис. 1.9, оставив ее на одном контакте.

 

  1. Описание используемых программных комплексов

 

Для программирования отладочного модуля MSP430 LaunchPad (MSP-EXP430G2) в лабораторной работе используется среда разработки Energia. Для поддержки операций с последовательным интерфейсом в составе среды Energia имеется специализированный модуль Serial Monitor. Вызов окна Serial Monitor производится либо из меню Tools/Serial Monitor, либо с помощью кнопки Serial Monitor на панели инструментов.

 

  1. Задание

 

7.1. Подключить отладочный модуль MSP430 LaunchPad с установленным в DIP-гнездо микроконтроллером MSP430G2452 при помощи кабеля к разъему порта USB компьютера. Запустить среду разработки Energia. Произвести настройку связи среды разработки Energia с отладочным модулем LaunchPad.

7.2. Написать, отладить и протестировать программу управления яркостью свечения зеленого светодиода. Переключение яркости на следующий уровень должно происходить при нажатии кнопки. Количество уровней яркости – не менее четырех. Для каждой градации яркости с помощью вольтметра измерить напряжение на соответствующем выводе микроконтроллера. Результаты измерений свести в таблицу.

7.3. Подключить плату расширения к плате LaunchPad. Подключить плату расширения к свободному порту USB компьютера.

7.4. Написать, отладить и протестировать программу управления частотой мигания красного светодиода. Управление осуществить с помощью потенциометра R6 (рис. 3.4): положение движка потенциометра должно управлять частотой мигания.

7.5. Написать, отладить и протестировать программу чтения значения аналогового сигнала с движка потенциометра R6. Интервал времени между двумя последовательными чтениями:

· вариант 1 – 200 мс,

· вариант 2 – 300 мс,

· вариант 3 – 400 мс,

· вариант 4 – 500 мс.

Считанное значение сигнала должно передаваться в последовательный порт в двух видах:

· в виде значения выходного кода АЦП,

· в виде значения напряжения, с двумя знаками в дробной части числа, единица измерения [В].

7.6. Написать, отладить и протестировать программу измерения меняющегося во времени аналогового сигнала и передачи измеренных значений в последовательный порт. Измеряемый сигнал – выходной сигнал фильтра низкой частоты R4C1 (рис. 3.4). Период измерения сигнала – 50 мс. Входной сигнал для фильтра формировать последовательностью импульсов, подаваемых на вход инвертора на транзисторе VT1. Параметры импульсов:

· вариант 1 – период 5с, коэффициент заполнения 0.5, количество импульсов 5;

· вариант 2 – период 6с, коэффициент заполнения 0.3, количество импульсов 4;

· вариант 2 – период 7с, коэффициент заполнения 0.7, количество импульсов 3;

· вариант 2 – период 8с, коэффициент заполнения 0.4, количество импульсов 5.

В последовательный порт передавать значения:

· время от момента старта программы, единица измерения – миллисекунда;

· напряжение на выходе фильтра, 2 знака в дробной части числа, единица измерения – В.

После отработки заданного количества импульсов остановить последовательный порт. Скопировать таблицу значений из окна Serial Monitor, вставить скопированные данные в лист Microsoft Excel и средствами Microsoft Excel построить график изменения выходного напряжения фильтра во времени.

 

  1. Методика выполнения задания

 

8.1. Настройку программной среды Energia производить в соответствии с указаниями раздела 5 Лабораторной работы № 1.

8.2. Изучить примеры Examples/Basics/Fade, Examples/Analog/Fading. Прошить примеры в микроконтроллер и проверить их работу. Для управления уровнем выходного сигнала использовать функцию analogWrite().

8.3. Плата расширения подключается к разъему J2 платы LaunchPad. Вывод 20 (GND) разъема J2 должен совпасть с широкой общей шиной на плате расширения.

8.4. Изучить пример Examples/Analog/AnalogInput. Для чтения значения аналогового сигнала с движка потенциометра использовать функцию analogRead(), аналоговый вход A6.

8.5. Изучить примеры Examples/Basics/AnalogReadSerial, Examples/Basics/ReadAnalogVoltage. Использовать функции analogRead(), Serial.print(), Serial.println(). Использовать аналоговый вход A6 микроконтроллера. Для вычисления значения напряжения измерить вольтметром напряжение питания платы расширения. Снятия показаний АЦП произвести:

· при удаленной перемычке J5 зеленого светодиода LED2;

· при установленной перемычке.

8.6. Использовать цифровой выход 11 и аналоговый вход A7 микроконтроллера. Длительность импульса и паузы рассчитать по варианту задания. Для управления длительностью импульса и паузы использовать функцию millis(). Для выдачи импульсного сигнала в плату расширения, чтения аналогового сигнала и передачи данных в последовательный порт использовать функции digitalWrite(), analogRead(), Serial.print(), Serial.println().

 

 

  1. Требования к содержанию и оформлению отчета

 

Отчет по лабораторной работе должен содержать:

· краткие теоретические сведения;

· формулировку задания на лабораторную работу;

· описание последовательности выполнения работы;

· изображения рабочих окон с текстами программ;

· тексты программ, не помещающихся в рабочем окне;

· выводы по лабораторной работе.

 

 

  1. Контрольные вопросы

 

10.1. Какие модули микроконтроллеров MSP430 используются для ввода и вывода аналоговых сигналов?

10.2. Каково назначение и режимы работы модуля операционного усилителя в микроконтроллерах MSP430?

10.3. Каково назначение модуля аналогового компаратора в микроконтроллерах MSP430?

10.4. Каково назначение и режимы работы модулей аналого-цифровых преобразователей в микроконтроллерах MSP430?

10.5. Каково назначение и режимы работы модулей цифро-аналоговых преобразователей в микроконтроллерах MSP430?

10.6. Как осуществляется программирование операций аналогового ввода-вывода для микроконтроллеров MSP430?

 

  1. Критерии оценки выполнения лабораторной работы

 

Лабораторная работа считается выполненной в том случае, если:

  • студент выполнил все задания в соответствии с представленной методикой;
  • результаты выполнения работы, представленные в виде отчета, соответствуют предъявленным к ним требованиям;
  • студент правильно ответил на все контрольные вопросы и может интерпретировать полученные результаты.

 

 





Поделиться с друзьями:


Дата добавления: 2016-03-27; Мы поможем в написании ваших работ!; просмотров: 475 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Что разум человека может постигнуть и во что он может поверить, того он способен достичь © Наполеон Хилл
==> читать все изречения...

2525 - | 2336 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.01 с.