Различия

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

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

Следующая версия
Предыдущая версия
products:laboratory_iot:exp12 [2020/05/16 18:20] – создано labuser29products:laboratory_iot:exp12 [2024/11/12 20:38] (текущий) labuser30
Строка 16: Строка 16:
 //Рисунок 2. Монтажная схема эксперимента// //Рисунок 2. Монтажная схема эксперимента//
  
 +==== Программный код эксперимента ====
  
 +<file python Exp11.py[enable_line_numbers="2", start_line_numbers_at="1"]>
 +from machine import Pin, PWM
 +import math
 +import time
 +_init()
 +
 +LedPinB = 15
 +LedPinG = 14
 +LedPinR = 13
 +
 +ledB = Pin(LedPinB, Pin.OUT)
 +ledG = Pin(LedPinG, Pin.OUT)
 +ledR = Pin(LedPinR, Pin.OUT)
 +
 +pwmB = PWM(ledB)
 +pwmG = PWM(ledG)
 +pwmR = PWM(ledR)
 +
 +pwmB.freq(500)
 +pwmG.freq(500)
 +pwmR.freq(500)
 +
 +while True:
 +    for i in range(100):
 +        pwmB.duty(int(math.sin(i / 50 * math.pi) * 500 + 500))
 +        time.sleep_ms(30)
 +</file>
 +
 +В этой программе мы разбили период синуса на 100 шагов и устанавливаем яркость синего цвета на каждом шаге в соответствии с формулой. После чего даем возможность светодиоду светить 30 миллисекунд с установленной яркостью прежде, чем мы ее изменим на следующем шаге.
 +
 +==== Дополнительные задания ====
 +
 +<WRAP center round tip 60%>
 +Попробуй ускорить или замедлить процесс изменения цвета с помощью изменения количества шагов и/или времени задержки на каждом шаге
 +</WRAP>