Bare metal micro:bit: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
{{DISPLAYTITLE:Bare Metal {{microbit}}}}__NOTOC__ | {{DISPLAYTITLE:Bare Metal {{microbit}}}}__NOTOC__ | ||
[[Image:cover.png|400px|thumb|right|Front cover]] | |||
===Twenty experiments in low-level programming=== | ===Twenty experiments in low-level programming=== | ||
{{Smallcaps|This book describes}} a series of experiments in programming the BBC {{microbit}} at a low level. | {{Smallcaps|This book describes}} a series of experiments in programming the BBC {{microbit}} at a low level. | ||
Line 7: | Line 8: | ||
Feedback is very welcome, and you can send me e-mail at [mailto:spivoxity@gmail.com <nowiki>spivoxity@gmail.com</nowiki>], or raise issues on the github page if you prefer: https://github.com/Spivoxity/baremetal-v1. | Feedback is very welcome, and you can send me e-mail at [mailto:spivoxity@gmail.com <nowiki>spivoxity@gmail.com</nowiki>], or raise issues on the github page if you prefer: https://github.com/Spivoxity/baremetal-v1. | ||
==Part 1: Machine code programming== | ==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. | 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== | ==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. | 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== | ==Part 3: Embedded operating system== | ||
The last third of the book introduces {{microbian}}, a tiny embedded operating system based on message passing, and uses it to organise programs that contain multiple processes interleaved with each other. | The last third of the book introduces {{microbian}}, a tiny embedded operating system based on message passing, and uses it to organise programs that contain multiple processes interleaved with each other. | ||
---- | ---- | ||
{{CopyrightLine}} | {{CopyrightLine}} |
Revision as of 18:48, 21 May 2021
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 at spivoxity@gmail.com, or raise issues on the github page if you prefer: https://github.com/Spivoxity/baremetal-v1.
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.
Copyright © 2019–21 J. M. Spivey. All rights reserved.