Discovery

Descubra o mundo dos microcontroladores através do Rust!

Este livro é um curso introdutório sobre sistemas embarcados baseados em microcontroladores que usa Rust como linguagem de ensino ao invés do C/C++ usual.

Escopo

Os seguintes tópicos serão abordados (eventualmente, espero):

  • Como escrever, construir, gravar e depurar um programa (Rust) "embarcado".
  • Funcionalidades ("periféricos") comumente encontradas em microcontroladores: entrada e saída digital, Modulação por Largura de Pulso (PWM), Conversores Analógicos-Digitais (ADC), protocolos de comunicação comuns como Serial, I2C e SPI, etc.
  • Conceitos de multitarefa: multitarefa cooperativa vs preemptiva, interrupções, escalonadores, etc.
  • Conceitos de sistemas de controle: sensores, calibração, filtros digitais, atuadores, controle de malha aberta, controle de malha fechada, etc.

Abordagem

  • Amigável para iniciantes. Nenhuma experiência anterior com microcontroladores ou sistemas embarcados é necessária.
  • Mão na massa. Muitos exercícios para colocar a teoria em prática. Você fará a maior parte do trabalho aqui.
  • Centrado na ferramenta. Faremos bastante uso de ferramentas para facilitar o desenvolvimento. A depuração "real", com GDB, e o log serão introduzidos logo no início. Usar LEDs como um mecanismo de depuração não tem lugar aqui.

Fora do escopo

O que está fora do escopo deste livro:

  • Ensinar Rust. Já existe bastante material sobre esse assunto. Vamos nos concentrar em microcontroladores e sistemas embarcados.
  • Ser um texto abrangente sobre teoria de circuitos elétricos ou eletrônica. Abordaremos apenas o mínimo necessário para entender como alguns dispositivos funcionam.
  • Cobrir detalhes como linker scripts e o processo de boot. Por exemplo, usaremos as ferramentas existentes para ajudar a inserir seu código em sua placa, mas não entraremos em detalhes sobre como essas ferramentas funcionam.

Também não pretendo portar este material para outras placas de desenvolvimento; este livro fará uso exclusivo da placa de desenvolvimento micro:bit.

Relatando problemas

A fonte original deste livro está neste repositório. Se você encontrar algum problema com o código, informe-o no rastreador de issues.

Já o repositório da tradução para português está aqui. Caso você encontre algum erro de digitação ou qualquer outro problema relacionado a ela, informe-o na seção de issues.

Outros materiais sobre Rust para sistemas embarcados:

Este livro de Discovery é apenas um de vários materiais sobre Rust para sistemas embarcados fornecidos pelo Embedded Working Group. A seleção completa pode ser encontrada em The Embedded Rust Bookshelf. Isso inclui a lista de Perguntas Frequentes.