small fixes
This commit is contained in:
@@ -15,7 +15,7 @@ The following topics will be covered:
|
||||
- How to write, build, flash and debug an embedded program.
|
||||
|
||||
- Functionality ("peripherals") commonly found in microcontrollers:
|
||||
- Digital input and output, using buttons and LEDs
|
||||
- Digital input and output, including buttons and LEDs
|
||||
|
||||
<!-- - Functionality ("peripherals") commonly found in microcontrollers: Digital input and output, Pulse
|
||||
Width Modulation (PWM), Analog to Digital Converters (ADC), common communication protocols like
|
||||
|
||||
@@ -90,39 +90,6 @@ The USB connection was lost.
|
||||
- Disconnect and re-connect the USB cable.
|
||||
- Re-launch OpenOCD
|
||||
|
||||
### Can't flash the device - "Ignoring packet error, continuing..."
|
||||
|
||||
#### Symptoms
|
||||
|
||||
While flashing the device, you get:
|
||||
|
||||
```
|
||||
$ arm-none-eabi-gdb $file
|
||||
Start address 0x8000194, load size 31588
|
||||
Transfer rate: 22 KB/sec, 5264 bytes/write.
|
||||
Ignoring packet error, continuing...
|
||||
Ignoring packet error, continuing...
|
||||
```
|
||||
|
||||
#### Cause
|
||||
|
||||
Closed `itmdump` while a program that "printed" to the ITM was running. The
|
||||
current GDB session will appear to work normally, just without ITM output but
|
||||
the next GDB session will error with the message that was shown in the previous
|
||||
section.
|
||||
|
||||
Or, `itmdump` was called **after** the `monitor tpiu` was issued thus making
|
||||
`itmdump` delete the file / named-pipe that OpenOCD was writing to.
|
||||
|
||||
#### Fix
|
||||
|
||||
- Close/kill GDB, OpenOCD and `itmdump`
|
||||
- Remove the file / named-pipe that `itmdump` was using (for example,
|
||||
`itm.txt`).
|
||||
- Launch OpenOCD
|
||||
- Then, launch `itmdump`
|
||||
- Then, launch the GDB session that executes the `monitor tpiu` command.
|
||||
|
||||
## Cargo problems
|
||||
|
||||
### "can't find crate for `core`"
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
# Development environment setup
|
||||
|
||||
Dealing with microcontrollers involves several tools as we'll be dealing with an architecture
|
||||
different than your laptop's and we'll have to run and debug programs on a "remote" device.
|
||||
Dealing with microcontrollers involves several tools,
|
||||
as we'll be dealing with an architecture different than your laptop's,
|
||||
and we'll have to run and debug programs on a "remote" device.
|
||||
|
||||
## Documentation
|
||||
|
||||
@@ -15,8 +16,8 @@ We'll be referring to the [micro:bit hardware page][microbit] and the links foun
|
||||
|
||||
## Tools
|
||||
|
||||
We'll use all the tools listed below. Where a minimum version is not specified, any recent version
|
||||
should work but we have listed the version we have tested.
|
||||
We'll use all the tools listed below. Where a minimum version is not specified,
|
||||
any recent version should work but we have listed the version we have tested.
|
||||
|
||||
- Cargo & `rustc`.
|
||||
|
||||
@@ -51,12 +52,6 @@ $ rustc -V
|
||||
rustc 1.28.0-nightly (056f589fb 2018-06-22)
|
||||
```
|
||||
|
||||
### `itmdump`
|
||||
|
||||
``` shell
|
||||
$ cargo install itm
|
||||
```
|
||||
|
||||
### OS specific instructions
|
||||
|
||||
Now follow the instructions specific to the OS you are using:
|
||||
|
||||
Reference in New Issue
Block a user