Skip to content

Commit

Permalink
Merge #174
Browse files Browse the repository at this point in the history
174: Small text changes r=therealprof a=Niederb

Some small changes I did while reading.
Feel fee to incorporate what you like and discard the rest.

Co-authored-by: Thomas Niederberger <[email protected]>
  • Loading branch information
bors[bot] and Niederb committed Mar 3, 2019
2 parents 2503da4 + 133f4f0 commit 9e656ea
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 18 deletions.
6 changes: 3 additions & 3 deletions src/intro/hardware.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ What does this board contain?

- 48 KiB of RAM.

- Many integrated peripherals such as timers, I2C, SPI and USART.
- A variety of integrated peripherals such as timers, I2C, SPI and USART.

- General purpose Input Output (GPIO) and other types of pins accessible through the two rows of headers along side the board.

Expand All @@ -34,6 +34,6 @@ What does this board contain?

- A second microcontroller: a [STM32F103](https://www.st.com/en/microcontrollers/stm32f103cb.html). This microcontroller is actually part of an on-board programmer / debugger and is connected to the USB port named "USB ST-LINK".

For a more detailed features list and further specification of the board take a look at [STMicroelectronics](https://www.st.com/en/evaluation-tools/stm32f3discovery.html) website.
For a more detailed list of features and further specifications of the board take a look at the [STMicroelectronics](https://www.st.com/en/evaluation-tools/stm32f3discovery.html) website.

A word of warning: be careful if you want to apply external signals to the board. The microcontroller STM32F303VCT6 pins take a nominal voltage of 3.3 volts. For further information consult the [6.2 Absolute maximum ratings section in the manual](https://www.st.com/resource/en/datasheet/stm32f303vc.pdf)
A word of caution: be careful if you want to apply external signals to the board. The microcontroller STM32F303VCT6 pins take a nominal voltage of 3.3 volts. For further information consult the [6.2 Absolute maximum ratings section in the manual](https://www.st.com/resource/en/datasheet/stm32f303vc.pdf)
10 changes: 5 additions & 5 deletions src/intro/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Welcome to The Embedded Rust Book: An introductory book about using the Rust
Programming Language on "Bare Metal" embedded systems, such as Microcontrollers.

## Who Embedded Rust is For
Embedded Rust is for everyone who wants to do embedded programming backed by the higher-level concepts and safety guarantees the Rust language provides.
Embedded Rust is for everyone who wants to do embedded programming while taking advantage of the higher-level concepts and safety guarantees the Rust language provides.
(See also [Who Rust Is For](https://doc.rust-lang.org/book/2018-edition/ch00-00-introduction.html))

## Scope
Expand All @@ -23,16 +23,16 @@ The goals of this book are:

This book tries to be as general as possible but to make things easier for both
the readers and the writers it uses the ARM Cortex-M architecture in all its
examples. However, the book assumes that the reader is not familiar with this
examples. However, the book doesn't assume that the reader is familiar with this
particular architecture and explains details particular to this architecture
where required.

## Who This Book is For
This book caters towards people with either some embedded background or some Rust background, however we assume
This book caters towards people with either some embedded background or some Rust background, however we believe
everybody curious about embedded Rust programming can get something out of this book. For those without any prior knowledge
we suggest you read the "Assumptions and Prerequisites" section and catch up on missing knowledge to get more out of the book
and improve your reading experience. You can check out the "Other Resources" section to find resources on topics
you want to catch up on.
you might want to catch up on.

### Assumptions and Prerequisites

Expand Down Expand Up @@ -72,7 +72,7 @@ not dig into details on a topic, revisiting the topic in a later chapter.
This book will be using the [STM32F3DISCOVERY] development board from
STMicroelectronics for the majority of the examples contained within. This board
is based on the ARM Cortex-M architecture, and while basic functionality is
common across most CPUs based on this architecture, peripherals and other
the same across most CPUs based on this architecture, peripherals and other
implementation details of Microcontrollers are different between different
vendors, and often even different between Microcontroller families from the same
vendor.
Expand Down
2 changes: 1 addition & 1 deletion src/intro/no-std.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ There are two general Embedded Programming classifications:

## Hosted Environments
These kinds of environments are close to a normal PC environment.
What this means is you are provided with a System Interface [E.G. POSIX](https://en.wikipedia.org/wiki/POSIX)
What this means is that you are provided with a System Interface [E.G. POSIX](https://en.wikipedia.org/wiki/POSIX)
that provides you with primitives to interact with various systems, such as file systems, networking, memory management, threads, etc.
Standard libraries in turn usually depend on these primitives to implement their functionality.
You may also have some sort of sysroot and restrictions on RAM/ROM-usage, and perhaps some
Expand Down
12 changes: 6 additions & 6 deletions src/intro/tooling.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@ can be found on the next page.
## `cargo-generate` OR `git`

Bare metal programs are non-standard (`no_std`) Rust programs that require some
fiddling with the linking process to get the memory layout of the program
right. All this requires unusual files (like linker scripts) and unusual
settings (like linker flags). We have packaged all that for you in a template
so that you only need to fill in the blanks such as the project name and the
characteristics of your target hardware.
adjustments to the linking process in order to get the memory layout of the program
right. This requires some additional files (like linker scripts) and
settings (like linker flags). We have packaged those for you in a template
such that you only need to fill in the missing information (such as the project name and the
characteristics of your target hardware).

Our template is compatible with `cargo-generate`: a Cargo subcommand for
creating new Cargo projects from templates. You can also download the
Expand Down Expand Up @@ -57,7 +57,7 @@ can follow some parts of this book even if you don't have any hardware with you!

A debugger is a very important component of embedded development as you may not
always have the luxury to log stuff to the host console. In some cases, you may
not have LEDs to blink on your hardware!
not even have LEDs to blink on your hardware!

In general, LLDB works as well as GDB when it comes to debugging but we haven't
found an LLDB counterpart to GDB's `load` command, which uploads the program to
Expand Down
6 changes: 3 additions & 3 deletions src/start/qemu.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ the tooling and the development process.

[LM3S6965]: http://www.ti.com/product/LM3S6965

## A non standard Rust program
## Creating a non standard Rust program

We'll use the [`cortex-m-quickstart`] project template so go generate a new
We'll use the [`cortex-m-quickstart`] project template to generate a new
project from it.

[`cortex-m-quickstart`]: https://github.com/rust-embedded/cortex-m-quickstart
Expand Down Expand Up @@ -73,7 +73,7 @@ $ mv cortex-m-quickstart-master app
$ cd app
```

OR you can browse to [`cortex-m-quickstart`], click the green "Clone or
Or you can browse to [`cortex-m-quickstart`], click the green "Clone or
download" button and then click "Download ZIP".

Then fill in the placeholders in the `Cargo.toml` file as done in the second
Expand Down

0 comments on commit 9e656ea

Please sign in to comment.