Skip to content

Commit a26f48a

Browse files
committed
Make glossary more linkable and add more detail
While writing a blog post I found that I wanted to be able to link to a common definition of certain terms but I was not able to find one. This changes makes the glossary up from sub-headings so that each item can be linked to directly. I have also filled out some more detail on the areas I'm particularly interested in (BSP, HAL and PAC).
1 parent 4f9fcaa commit a26f48a

File tree

1 file changed

+47
-8
lines changed

1 file changed

+47
-8
lines changed

src/appendix/glossary.md

Lines changed: 47 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,52 @@ The embedded ecosystem is full of different protocols, hardware components and
44
vendor-specific things that use their own terms and abbreviations. This Glossary
55
attempts to list them with pointers for understanding them better.
66

7-
Term | Meaning
8-
-------------|--------
9-
I2C | Sometimes referred to as `I² C` or Inter-IC. It is a protocol meant for hardware communication within a single integrated circuit. See [i2c.info] for more details
10-
SPI | Serial Peripheral Interface
11-
USART | Universal synchronous and asynchronous receiver-transmitter
12-
UART | Universal asynchronous receiver-transmitter
13-
FPU | Floating-point Unit. A 'math processor' running only operations on floating-point numbers
14-
PAC | Peripheral Access Crate
7+
### BSP
8+
9+
A Board Support Crate provides a high level interface configured for a specific developer
10+
board. It usually depends on a [HAL](#hal) crate.
11+
There is a more detailed description on the [memory mapper registers page](../start/registers.md).
12+
13+
### FPU
14+
15+
Floating-point Unit. A 'math processor' running only operations on floating-point numbers.
16+
17+
### HAL
18+
19+
A Hardware Abstraction Layer crate provides a developer friendly interface to a microcontroller's
20+
features and peripherals. It is usually implemented on top of a [Peripheral Access Crate (PAC)](#pac).
21+
It may also implement traits from the [`embedded-hal`](https://crates.io/crates/embedded-hal) crate.
22+
There is a more detailed description on the [memory mapper registers page](../start/registers.md).
23+
24+
### I2C
25+
26+
Sometimes referred to as `I² C` or Inter-IC. It is a protocol meant for hardware communication
27+
within a single integrated circuit. See [i2c.info] for more details
1528

1629
[i2c.info]: https://i2c.info/
30+
31+
### PAC
32+
33+
A Peripheral Access Crate provides access to a microcontroller's peripherals. It is one of
34+
the lower level crates and is usually generated directly from the provided [SVD](#svd), often
35+
using [svd2rust](https://github.com/rust-embedded/svd2rust/). The [Hardware Abstraction Layer](#hal)
36+
would usually depend on this crate.
37+
There is a more detailed description on the [memory mapper registers page](../start/registers.md).
38+
39+
### SPI
40+
41+
Serial Peripheral Interface
42+
43+
### SVD
44+
45+
System View Description is an XML file format used to describe the programmers view of a
46+
microcontroller device. You can read more about it on
47+
[the ARM CMSIS documentation site](https://www.keil.com/pack/doc/CMSIS/SVD/html/index.html).
48+
49+
### UART
50+
51+
Universal asynchronous receiver-transmitter
52+
53+
### USART
54+
55+
Universal synchronous and asynchronous receiver-transmitter

0 commit comments

Comments
 (0)