Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
Топ:
Методика измерений сопротивления растеканию тока анодного заземления: Анодный заземлитель (анод) – проводник, погруженный в электролитическую среду (грунт, раствор электролита) и подключенный к положительному...
Генеалогическое древо Султанов Османской империи: Османские правители, вначале, будучи еще бейлербеями Анатолии, женились на дочерях византийских императоров...
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Интересное:
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
#define LED_PIN 13
#define LDR_PIN A0
#define POT_PIN A1
void setup()
{
pinMode(12, OUTPUT);
pinMode(LED_PIN, OUTPUT);
}
void loop()
{
digitalWrite(12,HIGH);
int lightness=analogRead(LDR_PIN);
int threshold=analogRead(POT_PIN);
boolean tooDark = (lightness>threshold);
if (tooDark){
digitalWrite(LED_PIN, HIGH);
}
else
{
digitalWrite(LED_PIN, LOW);
}
}
4.Допустим, у нас есть код if (условие) {действие;}. В каких случаях будет выполнено действие?
При истинности логического выражения в (условие).
5.При каких значениях y выражение x + y > 0 будет истинным, если x > 0?
При y (-x;+∞)
Обязательно ли указывать, какие инструкции выполнять, если условие в операторе if ложно?
Не обязательно, программа перейдет к следующему оператору, либо начнется заново.
7.Чем отличается оператор == от оператора =?
Оператор = это оператор присвоения, а == оператор сравнения.
Если мы используем конструкцию if (условие) действие1; else действие2;, может ли быть ситуация, когда ни одно из действий не выполнится? Почему?
Не может, так как в else условий мы никаких не задавали, он будет выполнятся во всех случаях когда if(условие) ложно.
Задания для самостоятельного решения
Перепишите программу без использования переменной tooDark с сохранением функционала устройства.
#define LED_PIN 13
#define LDR_PIN A0
#define POT_PIN A1
void setup()
{
pinMode(12, OUTPUT);
pinMode(LED_PIN, OUTPUT);
}
void loop()
{
digitalWrite(12,HIGH);
int lightness=analogRead(LDR_PIN);
int threshold=analogRead(POT_PIN);
if (lightness<threshold){
digitalWrite(LED_PIN, HIGH);
}
else
{
digitalWrite(LED_PIN, LOW);
}
}
Добавьте в схему еще один светодиод. Дополните программу так, чтобы при падении освещенности ниже порогового значения включался один светодиод, а при падении освещенности ниже половины от порогового значения включались оба светодиода.
#define LED_PIN 13
#define LED_PIN2 8
#define LDR_PIN A0
#define POT_PIN A1
void setup()
{
pinMode(12, OUTPUT);
pinMode(LED_PIN, OUTPUT);
pinMode(LED_PIN2, OUTPUT);
}
void loop()
{
digitalWrite(12,HIGH);
int lightness=analogRead(LDR_PIN);
int threshold=analogRead(POT_PIN);
if (lightness<threshold/2)
{
digitalWrite(LED_PIN, HIGH);
digitalWrite(LED_PIN2, HIGH);
}
else if (lightness<threshold)
{
digitalWrite(LED_PIN, HIGH);
}
else
{
digitalWrite(LED_PIN, LOW);
digitalWrite(LED_PIN2, LOW);
}
}
Измените схему и программу так, чтобы светодиоды включались по прежнему принципу, но светились тем сильнее, чем меньше света падает на фоторезистор.
#define LED_PIN 11
#define LED_PIN2 10
#define LDR_PIN A0
#define POT_PIN A1
void setup()
{
pinMode(12, OUTPUT);
pinMode(LED_PIN, OUTPUT);
pinMode(LED_PIN2, OUTPUT);
}
void loop()
{
digitalWrite(12,HIGH);
int val;
int lightness=analogRead(LDR_PIN);
int threshold=analogRead(POT_PIN);
if (lightness<threshold/2)
{
val=map(lightness, 0, 1023, 255, 0);
analogWrite(LED_PIN, val);
analogWrite(LED_PIN2, val);
}
else if (lightness<threshold)
{
val=map(lightness, 0, 1023, 255, 0);
analogWrite(LED_PIN, val);
}
else
{
analogWrite(LED_PIN, LOW);
analogWrite(LED_PIN2, LOW);
}
}
Эксперимент 6. Пульсар
В этом эксперименте мы плавно наращиваем яркость светодиодной шкалы, управляя большой нагрузкой через транзистор.
Схема
Код
#define CONTROL_PIN 9
int brightness = 0;
void setup()
{
pinMode(13, OUTPUT);
pinMode(CONTROL_PIN, OUTPUT);
}
void loop()
{
digitalWrite(13, HIGH);
brightness = (brightness + 1)% 256;
analogWrite (CONTROL_PIN, brightness);
delay (10);
}
Вопросы для проверки себя
Почему у светодиодной шкалы на 10 сегментов 20 ножек?
У каждого светодиода свой катод и свой анод.
Зачем в схеме биполярный транзистор?
Без него такое количество светодиодов будет потреблять больше тока, чем 40 мА, которые может себе позволить цифровой пин платы. Поэтому мы берем питание из порта 5V, рассчитанного на ток до 500 мА, а на цифровой порт ставим транзистор, чтобы с помощью малого тока управлять большим.
За счет чего увеличивается яркость шкалы?
За счёт прибавления единицы к int brightness = 0, каждый раз яркость будет увеличиваться на единицу.
|
|
|
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!