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.