Spurino: JavaScript para microcontroladores

Microcontrolador Atmel, Espurino

Você provavelmente já ouviu Spurine, visto que este projeto foi batizado com o nome de um político e militar da República Romana. Ou talvez você tenha acessado este artigo em busca de mais informações porque já as conhece e deseja começar a usá-las.

Seja como for, vou tentar dar-lhe as chaves sobre o que é Espurino e o que ele pode fazer por você em seus projetos futuros, bem como algumas recomendações para aprender a programá-lo de forma simples.

Um tempo atrás nós te dissemos sobre anaconda, outro projeto interessante para os amantes de Python que queriam cronograma placas arduino com esta linguagem de programação que se tornou tão popular. Algo semelhante ao que faz MicroPython, mas desta vez, com Espurino, traz-lhe mais uma nova oportunidade numa linguagem diferente ...

O que é Espurino?

Spurine

Spurine é um projeto de código aberto para criar um interpretador de linguagem de programação JavaScript para microcontroladores. Ou seja, este IDE completo foi projetado para ser capaz de programar dispositivos com um microcontrolador programável que possuem pequenas memórias RAM, como alguns que têm apenas 8kB e são amplamente utilizados em muitos dispositivos embarcados.

O projeto Espurino foi criado por Gordon Williams em 2012, como uma tentativa de permitir o desenvolvimento de microcontroladores em múltiplas plataformas. Inicialmente, ele não era de código aberto, ele simplesmente oferecia um download de firmware gratuito para MCUs STM32.

Em 2013 o projeto daria um passo muito importante, tornando-se de código aberto após uma campanha de financiamento de muito sucesso na plataforma de crowdfunding Kickstarter. Esta campanha foi além do ambiente inicial de desenvolvimento, buscando recursos para fabricar também placas que pudessem suportar este software.

O firmware de Espurino agora está licenciado sob a Mozilla Public License 2.0, enquanto os códigos de amostra estão sob a licença MIT, a documentação sob Creative Commons Attribution-ShareAlike 3.0 e os arquivos de design de hardware sob a última também.

É assim que Crachá oficial Espurino, que seria seguido por vários lançamentos de outras versões, como aconteceu com outros projetos semelhantes, como o Arduino. Além disso, essas placas também apresentavam compatibilidade para blindagens compatíveis com o Arduino, o que lhes dá alguns recursos realmente interessantes para fabricantes e DIYers.

Atualmente, o projeto tem alguma popularidade, com um importante comunidade de desenvolvimento e uma infinidade de tutoriais e ajuda que você pode encontrar na Internet. Portanto, se você gosta de JS e de programação de microcontroladores, nunca foi tão fácil ...

Código-fonte do projeto - GitHub

Website oficial - Spurine

Firmware - Baixar (para as diferentes placas)

JavaScript? Microcontrolador?

Se você começou neste mundo, você pode estar se perguntando quais são esses termos ou o que eles podem contribuir para seus projetos. Se você nos lê com frequência, já sabe o que é um microcontrolador e, com certeza, também conhece JavaScript ou JS.

Un microcontrolador, também chamado de MCU (Micro Controller Unit), é um chip programável capaz de executar certas ordens a partir da memória. Isso também pode corresponder à definição de uma CPU, mas no caso de um MCU, eles geralmente são menos avançados e poderosos, visando certas tarefas específicas, como dispositivos embarcados.

Além de diferença de uma CPU, o microcontrolador é um circuito integrado que inclui a própria CPU, além de outros blocos funcionais como memória e sistema de E / S. Quer dizer, é basicamente um computador completo em um único chip ...

Portanto, você terá um dispositivo simples e barato que você pode programar para que suas entradas e saídas atuem como você deseja e, assim, gerem ações. Você pode fazer com que ele receba informações de sensores ou atuadores externos e, com base nisso, envie certos sinais por meio de suas saídas para outros componentes eletrônicos conectado.

Em relação a JavaScript, é uma linguagem interpretada. Ou seja, ao contrário dos compilados que após a compilação geram um binário que pode ser executado por uma CPU, no caso de scripts interpretados, será necessário um software intermediário denominado intérprete que interpretará os comandos do código para "dizer" a CPU o que é. o que ela tem que fazer.

JS Tornou-se muito importante hoje devido às múltiplas aplicações que possui, especialmente em aplicações web. Na verdade, ele foi inicialmente desenvolvido por Brendan Eich da Netscape (então Mocha, renomeado como LiveScript e, finalmente, JavaScript).

Essa popularidade levou a um grande número de programadores e usuários interessados em JavaScript, e projetos como Espurino podem aproximar todos eles da programação de microcontroladores com ele.

A propósito, para começar com Espurino IDE, você não terá que instalar nada em seu sistema operacional, é um ambiente baseado na web que você pode usar daqui no seu navegador favorito.

Embora vários navegadores possam ser usados, para atualizar o firmware dessas placas é recomendado usar o Chrome e um plugin chamado Espurino Web IDE que é recomendado no site oficial e que você pode obter para o seu Chrome em este link.

Como aprender JavaScript?

Se ainda não sabe programar em JavaScript, deve saber que, como em qualquer outra linguagem, existem livros para aprendizagem, cursos, tutoriais em vídeo e uma grande quantidade de recursos para aprender gratuitamente. Mas existe outro recurso que talvez seja menos falado e que é especialmente interessante para fazer da gamificação o procedimento de aprendizagem do JS.

Estou me referindo a os video games que o ajudam a aprender a programar com certas linguagens de programação, incluindo JS. Com esses jogos, ao invés de usar o teclado ou mouse para direcionar o personagem ou interagir com o ambiente virtual, o que você terá é um intérprete desta linguagem em um lado da tela e onde você começará a digitar o código (começando com o mais simples, mesmo os mais avançados).

Desta forma, você controlará o jogo usando uma linguagem de programação, então durante seus jogos você irá aprendendo quase sem perceber e conforme você avança nas missões, seu conhecimento aumentará.

Se você está interessado nesta forma de aprender para começar com Espurino, deixo-vos aqui alguns recursos para aprender JavaScript usando jogos:

Pratos oficiais espurino

Placas de coluna vertebral

Após o primeiro desenvolvimento de a placa O original de Espurino veio com mais projetos disponíveis para uso com o IDE e JS. Se você quiser saber mais sobre eles, aqui está uma introdução a cada um:

  • Spurino (original): é a placa original, a primeira a ser desenhada no âmbito deste projeto. Suas características são:
    • STM32F103RCT6 32 bits 72Mhz ARM Cortex-M3 MCU
    • 256 KB de memória flash, 28 KB de RAM
    • microUSB, conector SD e conector de bateria externa JST PHR-2
    • LEDs vermelhos, azuis e verdes
    • Pads que permitem a conexão de módulos Bluetooth HC-05
    • 44 GPIO com 26 PWM, 16 ADC, 3 UARTS, 2 SPI, 2 I2C e 2 DACs.
    • Dimensões: 54x41mm
  • Pico Spurino: é uma pequena placa com um microcontrolador para começar a executar seus projetos JavaScript e controlar as coisas em questão de segundos. É programado através de sua interface USB para carregar o script que você escreve sobre o IDE Espurino. Além disso, tem um preço econômico e você pode encontrá-lo com pinos e sem pinos soldados em seus cabeçotes. Mais detalhes:
      • 22 GPIO (9 entradas analógicas, 21 PWM, 2 seriais, 3 SPI e 3 I2C).
      • Conector USB-A integrado.
      • 2 LEDs e 1 botão no PCB.
      • STM32F401CDU6 32-bit 84Mhz ARM Cortex-M4 MCU
      • Memória: 384 Kb de flash e 96 Kb de RAM
      • Dimensões 33x15mm
  • Spurino WiFi: É uma placa praticamente gêmea à anterior, só que algumas melhorias foram adicionadas. Por exemplo, seu tamanho é 30x23mm, crescendo para abrir espaço para um chip WiFi ESP8266. Além disso, o USB foi alterado para microUSB, o número de GPIOs foi reduzido para 21 (8 analógico, 20 PWM, 1 serial, 3 SPI e 3 I2C). Por outro lado, o microcontrolador também foi otimizado, agora é um STM32F411CEU6 ARM Cortex-M32 de 100 bits 4Mhz com 512kb de memória flash e 128 kb de RAM.
  • Spurino Puck.js: É basicamente um botão inteligente Bluetooth que você pode programar graças ao seu microcontrolador interno e ao interpretador (pré-instalado) com JS. Além disso, possui um SoC ARM Cortex-M52832 nRF4 64Mhz com 64kB de RAM e 512Kb de flash, GPIO, etiqueta NFC, magnetômetro MAG3110, transmissor IR, termômetro embutido, bem como sensores de luz e de nível de bateria.
  • Spurino Pixl.js: É um dispositivo semelhante ao anterior, mas em vez de um botão é uma tela inteligente Bluetooth LE programável. Sua tela tem dimensões monocromáticas de 128 × 64, enquanto o resto das características são semelhantes às do Puck.js.
  • MDBT42Q: é o mesmo módulo que Pixl.js e Puck.js, mas com uma antena de cerâmica. As restantes características técnicas coincidem com as duas anteriores, mas sem ecrã ou botão neste caso ...
  • bracelete.js: é o produto mais novo. É um wearable, um smart watch ou smart watch. Você poderá instalar aplicativos e desenvolver novas funções usando JavaScript ou uma linguagem de programação gráfica (Blockly). Você só precisará de um navegador da web para poder escrever seus códigos e enviá-los para o relógio ... Além disso, é à prova d'água, possui Bluetooth, GPS, acelerômetro, magnetômetro (para quantificar a força e a direção dos sinais magnéticos), etc.

Se precisar compre alguns desses pratos Espurino você pode encontrá-los no loja do site oficial Deste projeto. Você também pode encontrá-lo por meio de uma série de concessionários funcionários designados para o projeto, como alguns mantimentos famosos como Adafruit, etc.


Seja o primeiro a comentar

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.