Em vez de lidar com nomes de alunos, notas e médias, vamos montar um dispositivo parecido com um semáforo utilizando 1 protoboard, 3 LED’s, 3 resistores, 4 fios e um hardware de placa única, como o Arduino Uno e o Raspberry Pi. Teremos então um projeto experimental com 3 fatores (LED vermelho, LED amarelo, LED verde) e 2 níveis (aceso e apagado), o que proporciona 8 situações, conforme ilustrado a seguir em uma tabela de 8 linhas e 3 colunas.
Definimos um vetor contendo 3 LED’s e uma matriz contendo 8 vetores, cada um contendo como elementos os estados de cada um dos LED’s.
Design-time – Arduino IDE:
Design-time – Snap4Arduino:
Runtime:
Observações:
Com o Arduino, foram utilizados como saídas digitais os pinos 9, 6 e 3. Em Wiring (a linguagem C/C++ usada pelo Arduino IDE), a função pinMode definiu os pinos como saída (OUTPUT). Isto fica implícito no Snap4Arduino, já que um valor booleano (verdadeiro ou falso – equivalentes a 1 e 0) foi colocado no pino. Essa atribuição ocorre em Wiring com a função digitalWrite.
Com o Raspberry Pi, foram utilizados como saídas digitais os pinos 12 (GPIO18), 16 (GPIO23) e 18 (GPIO24). Em Python 3, a função setmode utiliza BOARD se a identificação dos pinos for 12, 16 e 18; ou BCM, se for 18, 23 e 24. A função setup define os pinos como saída (OUT). E a função output atribui ao pino um valor que pode ser 0 ou 1.
Design-time – Python 3:
Design-time – Scratch 2:
Em Scratch 2 os pinos são identificados pelos números BCM: GPIO18, GPIO23 e GPIO24, e os valores atribuídos são (output) high ou low.
Runtime:
Observações:
Com o Raspberry não foi utilizado um PC Desktop rodando Windows, como no caso do Arduino; e o código em Python 3 e Scratch 2 não incluiu nem vetores e nem matrizes.
Dúvidas? A única certeza é de que o golpe vai ficando mais claro a cada dia e, logo, a narrativa da mídia sonegadora e golpista terá que mudar.