Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
products:aruno:exp13 [2020/06/08 18:59] – создано alexnikproducts:aruno:exp13 [2020/06/20 13:21] (текущий) alexnik
Строка 26: Строка 26:
 катодом». катодом».
  
 +{{ :products:esp-iot:7s.1.png?nolink |}}
 +
 +==== Схема эксперимента ====
 +
 +{{ :products:ardu:exp13_sch.png?nolink |}}
 +//Рисунок 1. Электрическая принципиальная схема эксперимента//
 +
 +<WRAP center round alert 60%>
 +Токоограничительные резисторы обязательны!
 +</WRAP>
 +
 +В схеме мы использовали токоограничительные резисторы на каждом светодиоде. Казалось бы проще поставить один резистор на катод, чем по резистору на каждый анод, но нет, такой вариант не является правильным. Дело в том, что ток через резистор будет зависеть от количества включенных сегментов, что будет влиять на их яркость. Иными словами — при переключении цифр на дисплее их яркость будет меняться в зависимости от количества включенных сегментов. Выглядит это очень некрасиво.
 +
 +{{ :products:ardu:exp13.png?direct&600 |}}
 +//Рисунок 2. Монтажная схема эксперимента//
 +
 +
 +==== Программный код эксперимента ====
 +
 +<file cpp Exp13[enable_line_numbers="2", start_line_numbers_at="1"]>
 +int a = 8; 
 +int b = 9;
 +int c = 11;
 +int d = 5;
 +int e = 4;
 +int f = 7;
 +int g = 6;
 +int h = 10;
 +
 +void setup() { 
 +    int i;
 +    for(i=4; i<=11; i++) pinMode(i,OUTPUT);
 +   
 +void loop() {     
 +    digitalWrite(a,HIGH);
 +    digitalWrite(f,HIGH);
 +    digitalWrite(g,HIGH);
 +    digitalWrite(c,HIGH);
 +    digitalWrite(d,HIGH);
 +   }
 +</file>
 +
 +Программа эксперимента довольно простая, назначаем переменным пины контроллера, устанавливаем их в режим вывода и подаем сигнал на нужные.
 +
 +==== Дополнительное задание ====
 +<WRAP center round tip 60%>
 +  * Измени код программы, чтобы получить другие цифры на дисплее.
 +</WRAP>