Continuamos com nossa série de artigos na placa de micro:bit que agora abordam como os dados são processados. Para mais informações, sugerimos consultar os artigos anteriores.

 

Nota: O autor é natural de país de língua hispânica. Assim, para as figuras e variáveis mantivemos os nomes originais em espanhol.

 

 

DADOS

A placa micro: bit pode ser dividido em 4 partes principais:

- Saídas.

- Processos.

- Dados.

- Entradas.

Observe o seguinte diagrama de blocos, onde essas peças são mostradas:

 


| Clique na imagem para ampliar |

 

 

Neste texto estudaremos os “Dados”, conforme destacado na figura a seguir:

 


| Clique na imagem para ampliar |

 

 

Dados e informações são dois conceitos muito semelhantes. A placa micro: bit salva ou armazena dados nas memórias. Daí a importância de compreender como funcionam as memórias. A imagem a seguir mostra um chip de memória ou circuito integrado:

 


 

 

 

As memórias digitais têm uma relação com o que o cérebro do corpo humano faz, que também armazena informações ou dados. Por exemplo, se eles perguntarem seu nome, você acessará sua memória e lembrará seu nome. Esse é o papel ou trabalho da memória: armazenar informações.

 

 

MEMÓRIAS

 

As memórias podem ser comparadas a um conjunto de gavetas ou gavetas onde algo é guardado ou armazenado. Observe a figura a seguir, onde representamos um armário ou conjunto de gavetas:

 


| Clique na imagem para ampliar |

 

 

Em cada gaveta alguns dados ou informações podem ser armazenados. A placa micro: bit possui uma memória semelhante à mostrada na figura anterior, embora a quantidade de bolas seja muito grande (16 Kilobytes). Para começar a usar uma gaveta de memória, é necessário dar um nome a essa gaveta. Para isso crie um projeto e clique na função: "Variáveis", conforme figura a seguir:

 


 

 

 

Observe que é exibida uma janela na qual existe um botão denominado: "Criar uma variável ...", conforme mostrado na figura a seguir:

 

 


 

 

 

Ao clicar neste botão, aparecerá uma janela como a seguinte:

 


 

 

 

No qual podemos digitar o nome da variável. Vamos imaginar que vamos criar um projeto para contar o “número de passos” que uma pessoa dá ao caminhar. É necessário criar uma gaveta ou variável que armazene esses dados ou informações. Por exemplo, se criarmos uma variável chamada "Passos", a memória criará uma gaveta ou gaveta com esse nome, conforme mostrado na figura a seguir:

 


 

 

 

O editor MakeCode cria a variável "Passos", que pode ser vista nesta figura:

 

 


 

 

 

Para usar variáveis, selecione a variável que deseja usar e arraste-a para o editor, deixando-a em uma função que aceita variável. Observe que o editor reconhece variáveis ​​na forma de um retângulo arredondado, conforme mostrado na figura a seguir:

 


 

 

 

 

ATRIBUIÇÃO DE UMA VARIÁVEL.

 

Junto com a variável, mais duas funções também são criadas. A função "definir passo para", que permite atribuir um valor à variável "Passos". Veja esta função na figura a seguir:

 


 

 

 

 

Atribuir um valor a uma variável é uma das funções mais utilizadas na programação, e o que esta função faz é: armazenar ou salvar dados na gaveta indicada ou gaveta (variável). Por exemplo, o código a seguir atribui ou armazenará o valor “7”, na gaveta ou gaveta de memória “Passos”.

Na memória da placa micro: bit, os dados serão configurados conforme mostrado na figura a seguir:

 

 


 

 

 

Se quisermos atribuir outro valor à variável "Passos", ele é atribuído executando a função: "definir Passo para" e atribuindo-lhe outro valor. Por exemplo, o seguinte código:

 

 


 

 

 

defina a variável "Passos" para ser igual a "89". A memória da placa micro: bit salvará o valor "89" assim:

 


 

 

 

 

AUMENTE UMA VARIÁVEL.

 

Quando MakeCode cria uma variável, ele também cria a função: "set to", como mostra a figura a seguir:

 

 


 

 

 

O que esta função faz é aumentar a variável, de acordo com o valor dado na função: Por exemplo, se a variável "Passos" tem um valor armazenado de "89", após executar esta função, a variável passo terá um valor de " 90 ".

 

 

TIPOS DE VARIÁVEIS.

 

Para programar a placa micro: bit, podemos utilizar diversos tipos de variáveis, entre as mais importantes e as mais utilizadas podemos encontrar:

- Números inteiros.

- Números decimais.

- Texto ou cadeia de caracteres.

Números inteiros são números, sem nenhuma parte fracionária que representa uma quantidade positiva e negativa e inclui zero. Eles podem ser representados assim:

….-6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8,…

com a placa micro: bit, podemos usar toda a matemática de números inteiros aprendida na escola ou faculdade. Em um próximo capítulo, estudaremos com mais profundidade as operações aritméticas com números inteiros: adição, subtração, multiplicação, etc.

Para usá-los no MakeCode, veremos alguns exemplos. O programa a seguir mostra o inteiro -3 no visor da placa:

 


 

 

 

Ele será exibido primeiro em um sinal negativo, conforme mostrado na imagem a seguir:

 


 

 

 

e depois em número inteiro, como mostra a figura a seguir:

 


 

 

 

O programa a seguir atribuirá o valor de 178 à variável "Passos" e a seguir mostrará no display de LED 5x5.

 


 

 

 

O display mostra os números sequencialmente, conforme mostrado na figura a seguir:

 

 


 

 

 

Assim, podemos exibir qualquer número inteiro, o resultado de uma leitura do sensor, operações aritméticas ou dados armazenados na memória.

Os números decimais também podem ser usados ​​com a placa micro: bit. Para isso é necessário usar um ponto para separar as unidades da parte decimal. Os números decimais podem representar quantidades como décimos, centésimos, milésimos, etc. Em outras palavras, com números decimais podemos representar números menores que um.

Vejamos o seguinte número:

 

 


 

 

A parte inteira do valor anterior é formada pelos números "37" e a parte decimal pelos números "892", separados pela vírgula decimal conforme mostrado na imagem a seguir:

 

 


 

 

 

Vejamos alguns exemplos práticos. O programa a seguir mostrará o número decimal 37,89 no display:

 

 


 

 

 

O programa a seguir mostrará o número decimal "1,3" no display.

 

 


 

 

 

O outro tipo de dados que a placa micro: bit trata são "textos ou cadeias de caracteres", que são compostos de letras e vogais. O programa a seguir exibirá a palavra "Hello!" no display LED.

 

 


 

 

 

Existem outros tipos de dados, mas os veremos em outra seção.

 

 

INICIALIZAÇÃO DE DADOS.

 

Muitos aplicativos precisam inicializar variáveis com algum valor específico, que é chamado de "variáveis de inicialização". Isso é feito no bloco de código "na inicialização", conforme mostrado na figura a seguir:

 

 


 

 

 

No qual inicializamos a variável "Distância" para 58 e a variável "Passos" para 0 (Zero). Também é conhecido como setup ou configuração, pois normalmente é neste bloco onde são configuradas as entradas, saídas, variáveis, valores máximo e mínimo da aplicação.

 

 

MOVIMENTO DE DADOS.

 

Os dados podem ser movidos de uma gaveta de memória para outra, conforme necessário. Isso é muito comum na programação. Por exemplo, criamos uma variável chamada "Distância" e outra chamada "Passos", conforme mostrado na figura a seguir:

 

 


 

 

 

Agora inicializamos a variável “Distância” para 37 e a variável “Passos” para 0 (Zero) conforme mostrado na figura a seguir:

 

 


 

 

 

Ao executar o bloco "na inicialização", a memória da placa micro: bit terá os seguintes valores:

 

 


 

 

 

Então, no bloco “para sempre”, vamos mover o valor da variável “Distância” para a variável “Passos” conforme mostrado na figura a seguir:

 

 


 

 

 

e agora mostre-o no display LED conforme mostrado no seguinte programa:

 

 


 

 

 

Após a execução do programa anterior, a memória da placa micro: bit ficará com os seguintes valores:

 

 


 

 

 

O conteúdo (dados) de uma gaveta de memória foi movido para a outra gaveta. Como disse antes, isso é muito útil na programação e vamos usá-lo mais tarde, quando vermos programas mais práticos.

 

 

CONTADOR INCREMENTAL.

 

Podemos observar a versatilidade da função: "mudar por", criando contadores incrementais. Por exemplo, o programa a seguir irá incrementar a variável "Passos" em uma unidade, cada vez que o bloco de código for executado "para sempre"

 

 


 

 

 

Se quisermos que o incremento seja por exemplo 3, basta alterar o segundo parâmetro da função: “alterar em” para 3, conforme mostrado no seguinte programa:

 

 


 

 

 

Também podemos fazer incrementos decimais, por exemplo, o seguinte programa, aumenta a cada 0,5, como mostra a imagem a seguir:

 

 


 

 

 

Assim, qualquer forma incremental pode ser criada para ser usada em aplicações práticas.

 

 

CONTADOR DECRESCENTE

 

Da mesma forma, as variáveis podem ser decrementadas como mostraremos nos exemplos a seguir. O programa a seguir diminuirá a variável "Passos" em um. Veja a seguinte imagem:

 

 


 

 

 

Para diminuir um determinado valor, coloque-o no segundo parâmetro da função "alterar por". Por exemplo, o programa a seguir diminuirá ou subtrairá o valor -7 da variável "Passos", cada vez que o bloco for executado "para sempre":

 

 


 

 

 

Também podemos diminuir o valor decimal de uma variável. Por exemplo, o programa a seguir diminuirá ou subtrairá o valor -0,4 na variável "Passos":

 


 

 

 

Desta forma, podemos percorrer contadores, na quantidade ou medida que as aplicações necessitam.

 

 

FORMATO DE DADOS.

 

A formatação dos dados pode ser entendida como: a forma ou maneira como os dados são apresentados aos usuários. Para entender melhor esse conceito, podemos fazer um programa de exemplo que demonstra isso. Para começar, acreditamos na memória do micro: cartão de bits, mais uma variável, chamada “Idade”. Depois de criar a variável no MakeCode, veremos uma janela semelhante a esta:

 

 


 

 

 

Inicializamos as variáveis, conforme mostrado na imagem a seguir:

 

 


 

 

 

Agora a placa micro: bit apresentará os seguintes dados em sua memória:

 

 


 

 

 

e para formatar as informações, usaremos um programa semelhante ao seguinte:

 

 


 

 

 

No display de LED 5x5, uma mensagem semelhante à seguinte é exibida:

 

“João tem 35 anos, ele deu 89 passos e percorreu uma distância de 37 metros "

 

Este é um exemplo de como formatar informações a serem apresentadas aos usuários. Embora o display LED 5x5 não seja tão ideal para mostrar essas informações, se for necessário ter um conceito claro, ele é amplamente utilizado quando é necessário enviar informações, por exemplo, para um computador através de uma porta serial, bluetooth, internet, etc.

 

 

GRAVAÇÃO, LEITURA DE DADOS.

 

O conceito de escrever e ler dados tem a ver com a forma como usamos as gavetas ou gavetas de memória, ou seja, como usamos as variáveis. Por exemplo, se estamos alterando os dados contidos em uma gaveta ou variável, então dizemos que estamos escrevendo para a memória. Se estamos movendo dados para outra variável, dizemos que a memória está sendo lida. Muitas instruções ou códigos executam a leitura e a escrita na mesma função. Para entender melhor esse conceito, podemos fazer alguns exemplos. No programa a seguir o valor "17" está sendo escrito na variável "Passos":

 

 


 

 

 

Neste caso, o dado lido é o valor "17" e a variável escrita é "Passos".

No exemplo a seguir, vamos inicializar a variável "Distância" com o valor "58" e a variável "Passos" com 0 (Zero), conforme mostrado na imagem a seguir:

 

 


 

 

 

Então, no bloco de código "para sempre", vamos definir ou atribuir a variável "Distância" para a variável "Passos", conforme mostrado na imagem a seguir:

 

 


 

 

 

Agora, pode-se dizer que a variável "Distância" foi lida, enquanto a variável "Passos" foi escrita. É importante notar que quando lemos uma variável, ela não muda seu valor, enquanto quando escrevemos uma variável, ela muda.

Vamos ver o que acontece na memória da placa micro: bit. Ao iniciarmos o programa, a memória terá os seguintes valores:

 

 


 

 

 

Mas quando o bloco é executado "para sempre" e a função é executada: "definir Passos para Distância", o que se faz é ler a variável "Distância" e escrever este valor na variável "Passos"

 

 


 

 

 

A figura a seguir mostra a movimentação de valores ou dados nas variáveis:

 

 


 

 

 

Portanto, do ponto de vista da escrita e da leitura das variáveis, a figura a seguir mostra isso:

 

 


 

 

 

ou visto de memória seria assim:

 

 


 

 

 

Do ponto de vista dos "Dados", seria assim:

 

 


 

 

 

É importante levar em consideração este conceito de escrita ou leitura, pois na programação, as informações ou dados devem ser utilizados de forma correta. Os dois conceitos anteriores entre dados e variável são os mesmos, mas em alguns livros, um ou outro é usado.

 

 

SOMENTE LENDO OS DADOS.

 

Existem alguns dados que só podem ser lidos, mas não podem ser gravados. É o caso das Entradas, que geralmente representam sensores, interruptores, leitores de dados, etc. O seguinte diagrama de blocos mostra isso:

 

 


| Clique na imagem para ampliar |

 

 

Vejamos um exemplo. Clique na função: “Input”, conforme mostrado na figura a seguir:

 

 


 

 

 

E arraste a variável "Temperatura C" mostrada na figura a seguir:

 

 


 

 

 

para o bloco de código "para sempre", conforme mostrado no seguinte programa:

 

 


 

 

 

Neste exemplo a variável “Temperatura” está conectada a um sensor de temperatura que possui a placa micro: bit e por isso podemos ler a temperatura ambiente. Por se tratar de um sensor de entrada, esta variável somente pode ser lida.

 

 

SOMENTE GRAVAÇÃO DE DADOS.

 

O mesmo é verdadeiro para a gravação de dados, mas isso se aplica às saídas da placa micro: bit. Observe o seguinte diagrama de blocos:

 


| Clique na imagem para ampliar |

 

 

Muitas das "Saídas" só podem ser escritas. Nos capítulos posteriores, faremos exemplos disso.

 

 

RENOMEAR VARIÁVEIS OU DADOS.

 

É possível renomear uma variável que já recebeu um nome. Para fazer isso, selecione a variável que deseja alterar em uma função que está usando e exiba o menu que aparece, conforme mostrado na figura a seguir:

 


 

 

 

E clique em "Renomear a variável ...". Uma janela como a mostrada na figura a seguir aparecerá:

 


 

 

 

Observe que agora a variável "Distância" foi renomeada para "Caminho", conforme mostrado na seguinte imagem:

 

 


 

 

 

Também no menu suspenso aparece alterado o nome para "Rota" conforme mostrado na imagem a seguir:

 

 

 


 

 

 

 

APAGUE UMA VARIÁVEL OU DADOS.

 

Também é possível excluir uma variável que você não está mais usando em um programa ou projeto. Para isso, selecione a variável que deseja excluir no menu suspenso, conforme mostrado na imagem a seguir:

 

 


 

 

 

e selecione "Excluir variável". O editor MakeCode removerá todas as referências onde você está usando esta variável.

 

 

PROGRAMA DE MOVIMENTO DE DADOS PRÁTICOS.

 

O programa a seguir incrementará a variável "Passos" em uma quantidade (Módulo) quando o botão "A" da placa micro: bit for pressionado. Para este programa criaremos duas variáveis: a variável "Passos" e a variável "Módulo" conforme mostrado na figura a seguir:

 

 


 

 

 

Agora, clique na função: "Entrada" e selecione a função: "pressionando o botão A" conforme mostrado na figura a seguir:

 

 


| Clique na imagem para ampliar |

 

 

Arraste este bloco para o editor MakeCode e crie o seguinte programa:

 

 


 

 

 

Execute o programa e observe os resultados no simulador. Pressione o botão "A" encontrado no simulador conforme mostrado na imagem a seguir:

 

 


 

 

 

Altere o valor da variável “Módulo” e observe os resultados. Você pode usar números inteiros positivos ou negativos e também decimais positivos e negativos. Observe os resultados no simulador e tire suas próprias conclusões.