Pinout e ligações
Que pino está por trás de cada porta e — a parte que não está impressa em lado nenhum — para que serve na placa. Escolhe uma placa e, depois, uma porta.
Lê isto antes de escreveres o número de um pino
Seis números de pinos destroem esta placa
Os pinos 6 a 11 são o modo como o chip acede à memória onde o seu próprio programa está guardado. Se pedires um deles, o chip deixa de conseguir ler o seu próprio código: sem erro, sem mensagem, nada no ecrã — a placa simplesmente reinicia para sempre até alguém a recuperar através de um cabo. Isto já aconteceu aqui, numa placa real, com apenas uma linha.
- Escrever Pin(6) parece a porta P6. A porta P6 é na verdade o pino 16.
- Escrever Pin(7) parece a porta P7. A porta P7 é na verdade o pino 17.
- Escrever Pin(8) parece a porta P8. A porta P8 é na verdade o pino 26.
- Escrever Pin(9) parece a porta P9. A porta P9 é na verdade o pino 25.
- Escrever Pin(10) parece a porta P10. A porta P10 é na verdade o pino 36.
- Escrever Pin(11) parece a porta P11. A porta P11 é na verdade o pino 2.
O canvas de programação recusa-se a enviar um programa que faça isto. Qualquer coisa que escrevas diretamente para a placa não tem esta proteção.
Alguns pinos só podem ser lidos
Três portas conseguem medir algo, mas nunca conseguem ligar nada. Uma luz ligada a uma delas simplesmente nunca se vai acender e nada irá assinalar um erro.
Medir a tensão deixa de funcionar quando o Wi-Fi está ligado
O chip tem duas unidades de medição e o rádio utiliza uma delas. Apenas as portas listadas sob «lê uma tensão variável» usam a unidade que o rádio deixa livre, razão pela qual o editor de blocos oferece essas e nenhumas outras.
Um conector controla o ecrã
O ecrã, o sensor de gestos, o sensor de cor, o visor de 7 segmentos e o leitor de cartões partilham todos um único par de pinos. Se usares esse conector para algo teu, todos eles deixam de funcionar.
As portas
A etiqueta é o que está impresso junto ao conector. O número do pino é o que o teu programa pede — e os dois não são o mesmo número.
- P033
machine.Pin(33)Lê uma tensão variávelPartilha o conector com P1Já em utilização
- Motor M1src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_motion.js
- O segundo conector de série, P1/P0src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_ports_uart.js
- O módulo de reconhecimento de voz, P1/P0src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_voice_recognition.js
- P132
machine.Pin(32)Lê uma tensão variávelPartilha o conector com P0Já em utilização
- Motor M1src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_motion.js
- O segundo conector de série, P1/P0src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_ports_uart.js
- O módulo de reconhecimento de voz, P1/P0src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_voice_recognition.js
- P235
machine.Pin(35)Apenas pode ser lido, nunca ativado como saídaLê uma tensão variávelJá em utilização
Nada — este está livre - P334
machine.Pin(34)Apenas pode ser lido, nunca ativado como saídaLê uma tensão variávelJá em utilização
Nada — este está livre - P44
machine.Pin(4)Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoEsta é a área tátil TJá em utilização
- Área tátil Tsrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_touch.js
- P50
machine.Pin(0)Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoJá em utilização
- Botão Asrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_buttons.js
- P616
machine.Pin(16)Já em utilização
Nada — este está livre - P717
machine.Pin(17)Já em utilização
- As três luzes coloridas na placasrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_onboard_LED.js
- P826
machine.Pin(26)Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoPode emitir uma tensão real, não apenas ligar e desligarJá em utilização
- Motor M2src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_motion.js
- O altifalante — a linha pela qual a placa falasrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_tts.js
- P925
machine.Pin(25)Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoPode emitir uma tensão real, não apenas ligar e desligarJá em utilização
- Motor M3src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_motion.js
- P1036
machine.Pin(36)Sem conector na placaApenas pode ser lido, nunca ativado como saídaLê uma tensão variávelJá em utilização
- O microfonesrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_microphone.js
- P112
machine.Pin(2)Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoJá em utilização
- Botão Bsrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_buttons.js
- P1212
machine.Pin(12)Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoEsta é a área tátil DJá em utilização
- Área tátil Dsrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_touch.js
- P1318
machine.Pin(18)Partilha o conector com P14Já em utilização
- Motor M4src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_motion.js
- Série em P14/P13 — a transmitirsrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_ports_uart.js
- P1419
machine.Pin(19)Partilha o conector com P13Já em utilização
- Motor M4src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_motion.js
- Série em P14/P13 — a recebersrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_ports_uart.js
- P1523
machine.Pin(23)Já em utilização
- Motor M3src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_motion.js
- P165
machine.Pin(5)Já em utilização
- Motor M2src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_motion.js
- P1922
machine.Pin(22)Partilha o conector com P20Já em utilização
- O ecrã e todos os outros módulos conectáveis (linha de relógio)src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_oled_text.js
- P2021
machine.Pin(21)Partilha o conector com P19Já em utilização
- O ecrã e todos os outros módulos conectáveis (linha de dados)src/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_oled_text.js
| Porta | Pino | No teu programa | Já em utilização |
|---|---|---|---|
| P0 Lê uma tensão variávelPartilha o conector com P1 | 33 | machine.Pin(33) |
|
| P1 Lê uma tensão variávelPartilha o conector com P0 | 32 | machine.Pin(32) |
|
| P2 Apenas pode ser lido, nunca ativado como saídaLê uma tensão variável | 35 | machine.Pin(35) | Nada — este está livre |
| P3 Apenas pode ser lido, nunca ativado como saídaLê uma tensão variável | 34 | machine.Pin(34) | Nada — este está livre |
| P4 Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoEsta é a área tátil T | 4 | machine.Pin(4) |
|
| P5 Lê uma tensão, mas não enquanto o Wi-Fi estiver ligado | 0 | machine.Pin(0) |
|
| P6 | 16 | machine.Pin(16) | Nada — este está livre |
| P7 | 17 | machine.Pin(17) |
|
| P8 Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoPode emitir uma tensão real, não apenas ligar e desligar | 26 | machine.Pin(26) |
|
| P9 Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoPode emitir uma tensão real, não apenas ligar e desligar | 25 | machine.Pin(25) |
|
| P10 Sem conector na placaApenas pode ser lido, nunca ativado como saídaLê uma tensão variável | 36 | machine.Pin(36) |
|
| P11 Lê uma tensão, mas não enquanto o Wi-Fi estiver ligado | 2 | machine.Pin(2) |
|
| P12 Lê uma tensão, mas não enquanto o Wi-Fi estiver ligadoEsta é a área tátil D | 12 | machine.Pin(12) |
|
| P13 Partilha o conector com P14 | 18 | machine.Pin(18) |
|
| P14 Partilha o conector com P13 | 19 | machine.Pin(19) |
|
| P15 | 23 | machine.Pin(23) |
|
| P16 | 5 | machine.Pin(5) |
|
| P19 Partilha o conector com P20 | 22 | machine.Pin(22) |
|
| P20 Partilha o conector com P19 | 21 | machine.Pin(21) |
|
Na placa, mas sem porta
Quatro dos seis botões táteis e a linha de escuta do altifalante não têm qualquer conector. Continuam a ser pinos, podem entrar em conflito uns com os outros e a tabela de portas acima não os consegue mostrar.
- machine.Pin(13)
- Área tátil Esrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_touch.js
- machine.Pin(14)
- Área tátil Osrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_touch.js
- machine.Pin(15)
- Área tátil Isrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_touch.js
- machine.Pin(27)
- Área tátil Csrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_touch.js
- O altifalante — a linha pela qual a placa escutasrc/config/canvas/sheenbot-infinity-blocks/sheenbot_infinity_tts.js
Onde se liga o meu componente?
Encontra o tipo de componente que tens na mão. As portas adequadas para ele estão listadas com ele.
Mede a quantidade de algo
Luz, humidade do solo, um botão giratório, nível de som, gás, uma chama: qualquer coisa que responda com um número em vez de sim ou não. Apenas estas portas conseguem ler um valor enquanto o Wi-Fi está ligado.
Usar: P0 · P1 · P2 · P3
Está ligado ou desligado
Um botão, um detetor de movimento, uma lâmpada, uma ventoinha, um besouro. Qualquer porta sem mais nada ligado serve — começa pelas que estão livres.
Usar: P2 · P3 · P6
Tem dois fios de sinal
Um sensor de distância envia por um fio e escuta pelo outro, pelo que precisa de um conector com dois fios de sinal. Existem dois conectores deste tipo.
Usar: P1/P0 · P14/P13
É um módulo inteligente com um chip integrado
O ecrã, o sensor de movimento, o leitor de cartões, o sensor de cor, o sensor de ritmo cardíaco, o visor de 7 segmentos. Todos partilham um único conector e podem ser todos ligados em simultâneo — a placa distingue-os pelo nome.
Usar: P20/P19
Comunica através de frases
O leitor de impressões digitais, o GPS, o cão-robô. Estes enviam fluxos de caracteres e precisam de um conector com um fio de envio e outro de receção.
Usar: P1/P0 · P14/P13
É um motor
As tomadas dos motores também estão ligadas a portas, pelo que um motor e um componente ligado à sua porta entram em conflito. Cada canal está listado com as duas portas que ocupa.
Usar: M1 → P0, P1 · M2 → P8, P16 · M3 → P9, P15 · M4 → P13, P14
