Difference between revisions of "Bare metal micro:bit"

From Bare Metal micro:bit
Jump to: navigation, search
 
(17 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{DISPLAYTITLE:Bare Metal {{microbit}}}}__NOTOC__
+
{{DISPLAYTITLE:Bare metal {{microbit}}}}__NOTOC__
 
[[Image:cover.png|400px|thumb|right|Front cover]]
 
[[Image:cover.png|400px|thumb|right|Front cover]]
===Twenty experiments in low-level programming===
+
===Twenty-one experiments in low-level programming===
{{Smallcaps|This book describes}} a series of experiments in programming the BBC {{microbit}} at a low level.
+
Welcome to the online version of my book, "Bare metal {{microbit}}", an experiment-based introduction to programming embedded devices at the machine level, and specifically to programming the ARM-based BBC {{microbit}} in assembly language and an in C, and in later stages using a simple, embedded operating system.
  
''I am now in discussions with publishers about how to take the project forward, including what will continue to appear on the websiteThe code for the experiments will remain available on GitHub and continue to be updated.  If you would like to look at sample chapters or try out the experiments, please get in touch with me and I will give you access. -- Mike''
+
The book contains 21 experiments, each described in a separate chapter that is linked from this page.  At the end of this page are links to [[#Online resources|supporting pages]] that cover the hardware you will need, how to set up the software tools you will use to program it, and definitive documentation for the {{microbit}} boardAfter you have set up software and hardware, you are ready to begin the [[x01|Experiment 1]], an easy task where you compile and upload a simple C program to check that everything is working properly.
  
==Part 1: Machine code programming==
+
* [[About the book]].
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==
+
{{:ChapLinks}}
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: An embedded operating system==
+
==Online material==
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.
+
* [[Appendix A: Hardware setup]].
 +
* [[Appendix B: Software setup]].
 +
* [[The microbit page|The {{microbit}} page]].
  
  
 
----
 
----
 
{{CopyrightLine}}
 
{{CopyrightLine}}

Latest revision as of 23:03, 13 August 2022

Front cover

Twenty-one experiments in low-level programming

Welcome to the online version of my book, "Bare metal micro:bit", an experiment-based introduction to programming embedded devices at the machine level, and specifically to programming the ARM-based BBC micro:bit in assembly language and an in C, and in later stages using a simple, embedded operating system.

The book contains 21 experiments, each described in a separate chapter that is linked from this page. At the end of this page are links to supporting pages that cover the hardware you will need, how to set up the software tools you will use to program it, and definitive documentation for the micro:bit board. After you have set up software and hardware, you are ready to begin the Experiment 1, an easy task where you compile and upload a simple C program to check that everything is working properly.

ChapLinks

Online material



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