Difference between revisions of "Bare Metal micro:bit"

From Bare Metal micro:bit
Jump to: navigation, search
(Part 2: Input/output devices)
Line 19: Line 19:
 
This part of the book is about programming I/O devices: how input and output happens by reading and writing device registers, and how we can use interrupts to make the computer respond to events.
 
This part of the book is about programming I/O devices: how input and output happens by reading and writing device registers, and how we can use interrupts to make the computer respond to events.
  
 +
* {{Exp|X2100|Serial communication|Use a serial device to transmit characters}}
 
* {{Exp|X2400|Neopixels|Use assembly language to make a bit-banged implementation of the protocol for WS2812 'NeoPixel' LEDs}}
 
* {{Exp|X2400|Neopixels|Use assembly language to make a bit-banged implementation of the protocol for WS2812 'NeoPixel' LEDs}}
  

Revision as of 18:07, 27 November 2020

Twenty experiments in low-level programming

This book describes a series of experiments in programming the BBC micro:bit at a low level.

Chapters will appear one-by-one in coming weeks, starting with some experiments with programming the micro:bit in machine code. If you want to follow along as the book grows, you should get a micro:bit and either a Raspberry Pi or a Linux laptop, and begin with the appendices about hardware and software setup. The hardware setup instructions include some modifications to the micro:bit that will come in handy later, but you don't have to do them before beginning with the first experiment.

Feedback is very welcome, and you can send me e-mail to spivoxity@gmail.com, or raise issues on the github page if you prefer: https://github.com/Spivoxity/baremetal.

Front cover

Part 1: Machine code programming

The first third of the book is about programming at the machine level: instructions, how they are implemented by a computer, and how they can be combined to carry put familiar programming tasks.

Part 2: Input/output devices

This part of the book is about programming I/O devices: how input and output happens by reading and writing device registers, and how we can use interrupts to make the computer respond to events.

Part 3: Embedded operating system

The last third of the book introduces micro:bian, a tiny embedded operating system based on message passing, and uses it to organise programs that contain multiple processes interleaved with each other.

Appendices

Web only



Copyright © 2019–21 J. M. Spivey. All rights reserved.