>_ Hello, world!
Turma Trainee
Programando com Microbit
Bem vindo novamente, jovem Fuzzyer.
Turma Trainee
Programando com Microbit
Bem vindo novamente, jovem Fuzzyer.
Você consegue identificar oq ue são os dispositivos de entrada e saída?
Exercícios iniciais de programação com o Micorbit.
Crie a animação de um pesonagem se mexendo em loop
Usando animação, crie uma barra de carregamento com os LEDs
Crie um tamagochi, que quando receber uma entrada de dados, demostra a animação de uma emoção diferente (programa ao lado)
Crie um programa que, utilizando o acelerômetro, conte os pulos ou passos.
Usando animação, crie uma barra de carregamento com os LEDs
💡 Números Pseudoaleatórios (O jeito comum)
Como funciona: O computador usa uma fórmula matemática para chegar no resultado.
Ponto de partida: Ele precisa de um número inicial chamado "semente/seed", que costuma ser o horário exato do relógio da placa-mãe em milissegundos.
Resultado: A conta é tão complexa que o resultado parece aleatório para nós, mas se você souber a semente, pode repetir o mesmo resultado.
Uso: Serve bem para jogos, sorteios simples e testes comuns.
✨ Números Verdadeiramente Aleatórios (O jeito real)
Como funciona: O computador usa peças extras de hardware ligadas à natureza.
Fontes do mundo: Ele mede o barulho do vento, a luz do sol, o calor do chip ou dados de radiação.
Resultado: Coisas da natureza não têm padrão. O número gerado não pode ser previsto por nenhuma conta.
Uso: É usado em sistemas de segurança pesada e senhas de bancos.
Usando condicionais, crie um jogo de pedra - papel - tesoura.
Crie um app que ao agitar, mostre aleatoriamente a face de um dado, com 1 LED ligado, 2 LEDs ligados e assim sucessivamente. Lembre-se que será necessário criar uma variável e guardar um número aleatório gerado e ter um desenho de LEDs associado a ao número.
Pedra, papel, tesoura, lagarto e Spock é uma expansão do clássico jogo de pedra-papel-tesoura. Atua sob o mesmo princípio básico, mas inclui outras duas armas adicionais: o lagarto e Spock. Isso reduz as chances de uma rodada terminar em um empate.
Quem aqui já jogou Batata Quente? Tradicionalmente, usamos uma bola, uma batata de verdade ou qualquer objeto que possa ser passado de mão em mão enquanto a música toca. Mas e se nós transformássemos esse jogo tradicional em um brinquedo tecnológico e inteligente?
Hoje, nosso desafio será programar o micro:bit para ser a nossa 'batata quente digital'!
Questionamentos:
Para controlar o tempo do jogo, usaremos o comando de pausa. Porém, como ele mede o tempo em milissegundos, o que precisamos fazer para converter esse valor para segundos?
Imagine que você está em uma biblioteca, sala de estudos ou laboratório. Para ajudar as pessoas a manterem um ambiente tranquilo, seria possível criar um dispositivo que percebesse quando o som está ficando muito alto?
O microbit pode ler a altitude do som no ambiente. Com isso, podemos definir um limite entra alto e baixo (threshold), e quando estiver acima desse limite, deve disparar um alarme e mostra um alerta na tela. Depois de alguns segundos limpa a tela.
Mas existe um detalhe: quem decide o que é "barulhento" é você! Faça testes de barulho, use o projeto anterior para saber qual o limite ideal na sua sala.
Crie um programa que quando tocar palmas, acenda uma luz (ligue todos os leds) e quando tocar palma novamente, apague a luz.
Use uma variável booleana para alternar entre 0 e 1 (verdadeiro e falso)
Crie uma barra de som, em formato de gráfico, que vai aumentando a barra conforme aumenta o som.
Vamos criar um pequeno sistema de semáforo. Ele inicia em loop passando por ícones que simbolizem o significado de cada cor: 🟥 "ESPERE" → 🟩 "SIGA" → 🟨 "SIGA DEVAGAR"
Expansão: acrescentar um sinal sonoro diferente para cada mudança de sinal: 🟥 "3 bips longos" → 🟩 "3 bips curtos" → 🟨 "1 bip curto"
Comece explorando os sons do comando 'play music'.
Use diferentes inputs para programar cada música abaixo.
Get Weezered - 1/2
A, F, A, B, (High) C, B, A, F, E
Megalovania - 1/4
E, E, (High) E, Pausa, B, Pausa
A#, Pausa, A, Pausa, G(½),
E, G, A
No Surprises - 1
(High) E, G, (High) C, G,
(High) E, G, (High) C, G,
(High) E, G, (High) C, G,
F, A, (High) C, (High) D
Twinkle Twinkle Little Star - 1/2
(Low) G, (Low) G, D, D, E, E, D,
C, C, (Low) B, (Low) B, (Low) A, (Low) A, (Low) G,
D, D, C, C, (Low) B, (Low) B, A,
D, D, C, C, (Low) B, (Low) B, A,
(Low) G, (Low) G, D, D, E, E, D,
C, C, (Low) B, (Low) B, (Low) A, (Low) A, (Low) G,
A cifra de "What’s New Scooby Doo?" possui uma parte que se repete e está oculta. Tente encontrar essa parte e codificá-la por completo. Use a letra abaixo para ajudá-lo.
What’s New Scooby Doo? - 1/2
Pausa, G, A, G, A, F(1), Pausa
C, G, A, G, F, E(1), Pausa
C, F, G(1), A(1), Pausa A(1), G, F(1), F, D
Pausa, G, A, G, A(1), F(1)
PRIMEIRO PARÁGRAFO:
What's New Scooby-Doo?
We're coming after you
You're gonna solve that mystery
I see you Scooby-Doo
The trail leads back to you
What's new Scooby-Doo?
SEGUNDO PARÁGRAFO:
What's new Scooby-Doo?
We're gonna follow you
You're gonna solve that mystery
I see you Scooby-Doo
We're coming after you
What's new Scooby-Doo?
Cada item abaixo possui um desafio de programação. Tente criar um programa para cada um dos desafios.
Objetivo: Criar contador digital de pulos, usando o evento 'on shake'.
Botão A ou botão B: reseta a contagem de pulos;
Agitar: agitar o device adiciona 1 à contagem de pulos
Objetivo: Criar um timer que inicia em 9 segundos e decrementa até o 0, dando um aviso sonoro quando terminar os 10 segundos.
Botão A: inicia a cotagem em 9;
Botão B: interrompe a contagem;
Agitar: agitar o device limpa a tela e mostra o icone de uma ampulheta
Faça um programa que quando A pressionado, gere um aleatório de 1 a 9 e quando pressionado B mostre o dobro dele.
Imagine um programa que cada botão quando pressionado gere um número aleatório de 0 a 9. Quando os dois botões forem pressionados juntos, ele mostra a soma dos últimos números gerados para A e B.
Exemplo em pseudocódigo:
A => a=random(0,9)
B => b=random(0,9)
A+B => soma=a+b
Um cinema precisa de um contador de pessoas para garantir que o espaço não ultrapasse o limite de 15 pessoas. Cada pessoa aperta um botão qualquer, e quando forem contadas as 15 pessoas, a próxima pessoa a tentar registrar sua entrada recebe um sinal na tela indicando que a sala está cheia.
Patolino comprou uma cafeteira que tem 3 botões: start, "-" e "+".
Quando ele ligou pela primeira vez, viu que tinha o número "0" na tela dela. Se ele apertar "start" a cafeteira começa a passar o café na hora. Mas os botões "-" e "+" diminuem e aumentam o número da tela. Quando ele aumentou o tempo até 4, percebeu que a cafeteira levou 4 minutos para começar a passar o café. Agora ele sabe que pode programar a cafeteira para passar café quentinho quando ele voltar do almoço, depois de 30 minutos.
Crie esse programa usando os botões "A" e "B" do Microbit como "-" e "+".
Objetivo: Criar um cronômetro que comece a contar quando um botão for pressionado e pare quando outro botão for pressionado.
Botão A: inicia a cotagem a partir do zero;
Botão B: para a contagem e mantem na tela o número de segundos que se passaram
Agitar: agitar o device limpa a tela e mostra o icone de um cronômetro
Observe o programa abaixo e responda às questões do documento.
Deu a louca no professor! Ele preparou uma prova IMPOSSIVEL pra vocês, para passar nela, vocês precisarão se dividir em duplas para se ajudar a colar.
Cada um da dupla tera o gabarito da prova do outro. Seu objetivo deve ser usar sinais de radio para se comunicar durante a prova e passar o gabarito para o outro.
Vocês podem criar a sua estratégia como quiser e combinar seu plano, vocês terão 1 hora e meia para se organizar e fazer o código.
A prova tem questões de 1 a 10 com opções de marcar de A a E.
Crie um circuito elétrico com um labirinto de arame preso ao P0 e outro em formato de argola que deve ser usado para atravessar o labirinto. Ao tocar a argola, um sinal sonoro e luminoso deve ser emitido.
Crie um programa usando os pinos e uma fruta para testar a cndutibilidade elétrica entre vegetais. Use diversos dele para criar sons diferentes. Programa diferentes notas musicais para cada 'tecla'.
Crie um programa que quando pressionado o P0, ele gera um valor aleatório que 'calcule' o nível de amizade das duas pessoas que estão segurando as pontas. Use jacks e fios para conectar o GND ao P0 passando pelos usuários.
Se você possuir um motor microservo 9g pode criar o ponteiro manualmente.
_____________________________ . . . _____________________________
repeat = repetir
show = mostrar
button = botão
shake = agitar, balançar
wait = esperar
press = pressionar
pressed = pressionado
release = soltar
released = solto
run, execute = executar
if = se
then = então
else = senão
clock = relógio
stopwatch = cronômetro
timer = temporizador
clockwise = sentido horário
counterclockwise = sentido anti-horário