Primeiro passo: o projeto
O que é?
Transforme seu micro:bit em uma lâmpada, que pode ser desligada batendo palmas ou por meio de qualquer som alto.
Introdução
Código
O que você aprenderá:
- Como mudar os resultados (saídas) em resposta às entradas do sensor;
- Como usar a lógica booleana para fazer um interruptor ligar e desligar ao ser acionado pelo mesmo evento.
Como funciona:
- O programa usa uma variável chamada lightsOn (luzLigada) para monitorar o status da luz: se está ligada ou não. Nós a definiremos como um tipo especial de variável, uma variável booleana. Variáveis booleanas só podem ter dois valores: verdadeiro (ligado) ou falso (desligado);
- Quando o microfone captar um som alto, o código muda o valor de lightsOn para not lightsOn (a luz não está ligada);
- Isso significa que se o valor da variável lightsOn for falso (e as luzes estiverem apagadas), este mudará para verdadeiro ao bater palmas, fazendo com que o programa acenda os LEDs;
- Mas, se o valor da variável lightsOn fosse verdadeiro (e as luzes estivessem ligadas), este mudaria para falso, então o programa desligaria os LEDs limpando a tela.
Itens necessários:
- Um micro:bit;
- Editor MakeCode ou Python;
- Conjunto de baterias (opcional).
Segundo passo: é hora de programar
Terceiro passo: vamos deixar o código ainda melhor
- Você pode tornar o bloco "on loud sound" (som alto ligado) mais ou menos sensível adicionando o bloco "set loud sound threshold" (definir limiar de som) ao bloco "on start". Use números menores para sons mais baixos e números maiores para sons mais altos. O segundo vídeo, fixado no primeiro passo, ensina como fazer isso;
- Em Python, para mudar o limiar de sons altos, use o
microphone.set_threshold(SoundEvent.LOUD, 128)
mudando o número 128 para o valor de som que quiser entre 0 e 255 - Também é possível fazer as luzes tocarem uma melodia quando são ligadas;
- Use o som em outros projetos, tais como aqueles com LEDs ou servomotores conectados aos pinos do seu micro:bit.
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.