1. 1. Introduktion
    1. 1.1. Hardware
    2. 1.2. no_std
    3. 1.3. Værktøjer
    4. 1.4. Installation
      1. 1.4.1. Linux
      2. 1.4.2. MacOS
      3. 1.4.3. Windows
      4. 1.4.4. Verificer installationen
  2. 2. Komme godt igang
    1. 2.1. QEMU
    2. 2.2. Hardware
    3. 2.3. Memory-mapped Registers
    4. 2.4. Semihosting
    5. 2.5. Panicking
    6. 2.6. Exceptions
    7. 2.7. Interrupts
    8. 2.8. IO
  3. 3. Peripherals
    1. 3.1. Et første forsøg i Rust
    2. 3.2. The Borrow Checker
    3. 3.3. Singletons
  4. 4. Statiske garantier
    1. 4.1. Typestate Programming
    2. 4.2. Peripherals as State Machines
    3. 4.3. Designkontrakter
    4. 4.4. Zero Cost Abstractions
  5. 5. Portability
  6. 6. Concurrency
  7. 7. Collections
  8. 8. Design Patterns
    1. 8.1. HALs
      1. 8.1.1. Checklist
      2. 8.1.2. Naming
      3. 8.1.3. Interoperability
      4. 8.1.4. Predictability
      5. 8.1.5. GPIO
  9. 9. Tips for embedded C developers
  10. 10. Interoperability
    1. 10.1. A little C with your Rust
    2. 10.2. A little Rust with your C
  11. 11. Unsorted topics
    1. 11.1. Optimizations: The speed size tradeoff
    2. 11.2. Performing Math Functionality
  12. Appendix A: Glossary

The Embedded Rust Book

Unsorted topics