Skip to content

Atividade

Animal de estimação

Intermediário | MakeCode, Python | Acelerômetro, Alto-falante, Logotipo sensível ao toque, Visor LED | Iteração, Seleção, Variáveis

Primeiro passo: o projeto

O que é?

Programe e personalize seu próprio animal de estimação eletrônico (para chamar de seu). O novo alto-falante integrado do micro:bit, com expressivos e novos sons, o deixa ainda mais divertido.

Introdução

Código

O que você aprenderá:

  • Como usar variáveis e laços de repetição para criar um simples temporizador;
  • Como usar a seleção para fazer eventos diferentes acontecerem em momentos diferentes;
  • Um truque para parecer que um programa micro:bit parou de funcionar.

Como funciona:

  • Os animais de estimação eletrônicos foram inventados no Japão, na década de 90, e logo se tornaram um brinquedo popular em todo o mundo;
  • Eles são pequenos gadgets que você pode manter em seu chaveiro. Uma criatura é exibida em uma tela simples. Você tem que cuidar dele e interagir com ele pressionando botões e jogando simples joguinhos. Se você ignorá-lo, não alimentá-lo ou dar banho, ele ficará triste, doente e se comportará mal;
  • O programa usa uma variável chamada timer (temporizador) para monitorar por quanto tempo o seu animal de estimação foi ignorado. Um loop permanente acrescenta 1 ao temporizador a cada 1 segundo (1000 milissegundos);
  • Se o timer chegar a 20, seu animal de estimação exibirá uma carinha triste no visor LED e emitirá um som triste pelo alto-falante integrado;
  • Se chegar a 30, ele adormece;
  • Se chegar a 40, seu animal de estimação emitirá um som misterioso e morrerá. O código usa o bloco "set built-in speaker off" para impedir que outros sons sejam emitidos pelo alto-falante. Um laço "while true" (enquanto for verdadeiro) certifica-se de que apenas o ícone do crânio é mostrado na exibição do visor LED.
  • Seu animal de estimação continuará vivo e feliz se você interagir com ele. Toque no logo do micro:bit para deixá-lo feliz ou agite-o para ele dar risadinhas. Além disso, o temporizador é reiniciado (zerado);
  • Se o animal morrer, você pode trazê-lo de volta à vida pressionando o botão reiniciar na parte de trás do micro:bit.

Itens necessários:

  • Micro:bit V2 com som (ou simulador MakeCode)
  • Editor MakeCode ou Python;
  • Conjunto de baterias (opcional).

Segundo passo: é hora de programar

1from microbit import *
2import audio
3
4timer = 0
5display.show(Image(
6    "00000:"
7    "09090:"
8    "00000:"
9    "09990:"
10    "00000"))
11audio.play(Sound.HELLO)
12
13while True:
14    if pin_logo.is_touched():
15        timer = 0
16        display.show(Image.HAPPY)
17        audio.play(Sound.HAPPY)
18    elif accelerometer.was_gesture('shake'):
19        timer = 0
20        display.show(Image.SURPRISED)
21        audio.play(Sound.GIGGLE)
22    else:
23        sleep(500)
24        timer += 0.5
25        # sleep for half a second only to make it react more quickly to logo touch & shake
26        
27    if timer == 20:
28        display.show(Image.SAD)
29        audio.play(Sound.SAD)
30    elif timer == 30:
31        display.show(Image.ASLEEP)
32        audio.play(Sound.YAWN)
33    elif timer == 40:
34        display.show(Image.SKULL)
35        audio.play(Sound.MYSTERIOUS)
36        break
37    

Terceiro passo: vamos deixar o código ainda melhor

  • Experimente diferentes valores de tempo para cada etapa de sua vida;
  • Crie suas próprias expressões faciais usando o visor LED do micro:bit;
  • Adicione mais variáveis para monitorar a fome ou a sujeira do seu animal de estimação e adicione novas interações para alimentá-lo ou limpá-lo, por exemplo, pressionando botões ou emitindo um som alto captado pelo microfone integrado do micro:bit.