Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Функциональная организация программы↑ ⇐ ПредыдущаяСтр 2 из 2 Содержание книги
Поиск на нашем сайте
Программа предназначена для работы с микроконтроллером ArduinoUNO. Программа, загружается на микроконтроллер и предназначается для управления им и управления его периферийными устройствами, необходимыми для передачи данных об измерениях температуры на персональный компьютер Функционально программа состоит из: Выводящее на персональный компьютер данные о температуре и количество секунд, прошедших с момента запуска микроконтроллера. Параметр конкретного типа термистора (из datasheet): #define TERMIST_B 4300
#define VIN 5.0
void setup() { // мы хотим передавать информацию на компьютер через USB, а // точнее через последовательный (англ. serial) порт. // Для этого необходимо начать (англ. begin) передачу, указав // скорость. 9600 бит в секунду — традиционная скорость. // Функция «begin» не является глобальной, она принадлежит // объекту с именем «Serial». Объекты — это «продвинутые» // переменные, которые обладают собственными функциями, // к которым обращаются через символ точки. Serial.begin(9600); // передаём заголовок нашей таблицы в текстовом виде, иначе // говоря печатаем строку (англ. print line). Символы «\t» — // это специальная последовательность, которая заменяется на // знак табуляции (англ. tab): 8-кратный выровненный пробел Serial.println("Minute\tMeteostantion\tTemperature\tMillis"); }
void loop() { // вычисляем температуру в °С с помощью магической формулы. // Используем при этом не целые числа, а вещественные. Их ещё // называют числами с плавающей (англ. float) точкой. В // выражениях с вещественными числами обязательно нужно явно // указывать дробную часть у всех констант. Иначе дробная // часть результата будет отброшена mil=millis(); float voltage = analogRead(A0) * VIN / 1024.0; float r1 = voltage / (VIN - voltage);
float temperature = 1./(1./(TERMIST_B)*log(r1)+1./(25. + 273.)) - 273; // печатаем текущую минуту и температуру, разделяя их табом. // println переводит курсор на новую строку, а print — нет Serial.print(minute); Serial.print("\t"); Serial.print("\t"); Serial.print("\t"); Serial.print(temperature); Serial.print("\t"); Serial.print("\t"); Serial.println(mil);
delay(5000); // засыпаем на минуту ++minute; // увеличиваем значение минуты на 1 // откроем окно Serial Monitor в среде Arduino, оставти на // сутки, скопируем данные в Excel, чтобы построить графики } ЗАКЛЮЧЕНИЕ
Микроконтроллер — это устройство наподобие микропроцессора. Отличие заключается в том, что память, цифровые и аналоговые входы/выходы и т.д. у микроконтроллера интегрированы в одном единственном чипе так, что микроконтроллерное устройство зачастую состоит из небольшого количества компонентов. Микроконтроллеры отличаются в первую очередь по ширине внутренней шины данных (по количеству бит шины данных): 4-х, 8-ми, 16-ти и 32-х битные. Это количество бит можно интерпретировать как размер (длину) данных, которые микропроцессор может обработать в одной команде. Самое большое число, которое можно закодировать 8-ю битами (одним байтом), равно 255. Таким образом, 8-битный микроконтроллер, например, за один вызов команды сложения может обрабатывать только числа меньше или равные 255. Для обработки б о льших чисел необходимо исполнить команду сложения б о льшее количество раз, что, конечно же, увеличивает время сложения чисел. Микроконтроллер, как и любой другой процессор, нуждается в задании такта. Максимальная тактовая частота процессор различается от 1МГц у старых контроллеров до 100МГц у дорогих 32-х битных микроконтроллеров. Однако эта частота еще ни что не говорит о действительной скорости микропроцессора. Так, например, у большинства 8051-микроконтроллеров частота делится на 12; получается, что микроконтроллер с частотой 24МГц работает в действительности с частотой 2МГц. Например, если для одной команды этот микроконтроллер требует двух тактов, то получается, что за секунду может быть обработан «всего» 1 миллион таких команд. В то же время микроконтроллер с частотой 8МГц без внутреннего деления частоты, которому требуется для такой же команды всего один такт, может за секунду обработать 8 миллионов команд. В процессе выполнения данной работы были выполнены все поставленные задачи, были приобретены навыки работы с микроконтроллерами семейства Arduino и управлением ими, работа с термистором. Так же получены навыки при написании программы на языке С семейства Arduino. Результаты работы представлены на рисунке ниже.
Рисунок 8- Задание 1
Рисунок 8.1- Задание 2
|
||||
Последнее изменение этой страницы: 2016-12-27; просмотров: 96; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 13.58.34.132 (0.005 с.) |