Skip to content

Commit baa63d2

Browse files
Enhance documentation with detailed image descriptions for clarity on embedded programming concepts and application stacks.
1 parent 8b8ff61 commit baa63d2

5 files changed

Lines changed: 6 additions & 5 deletions

File tree

content/learning-paths/embedded-and-microcontrollers/arduino-pico/_index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ title: Embedded programming with Arduino on the Raspberry Pi Pico
33

44
who_is_this_for: This is an introductory topic for software developers interested in embedded programming.
55
minutes_to_complete: 60
6+
description: Learn how to build a motion-detection device with Raspberry Pi Pico (RP2040 Cortex-M0+) using Arduino IDE, PIR sensors, and interrupt-driven programming on baremetal.
67

78
learning_objectives:
89
- Understand the basics of embedded programming

content/learning-paths/embedded-and-microcontrollers/arduino-pico/app_stack.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ layout: "learningpathall"
1212

1313
Application developers will be familiar with this traditional computing stack, whether their target devices are desktops, mobile phones, or the cloud, it would be the same.
1414

15-
![Traditional stack](_images/traditional_stack.png)
15+
![Diagram showing the traditional application computing stack with four layers from bottom to top: hardware, firmware/BIOS, operating system, and application. The firmware layer provides hardware abstraction that allows a single OS image to run on different hardware configurations, a key difference from embedded systems.#center](_images/traditional_stack.png)
1616

1717
## Hardware
1818

content/learning-paths/embedded-and-microcontrollers/arduino-pico/arduino_sketch.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@ If successful, you should see the LED on your board light up. If you wave your h
246246

247247
You can further check that your code is running properly by opening the `Serial Monitor` from the `Tools` menu of the Arduino IDE. There you should see all of the output messages, including count of detected motion events, coming from your sketch.
248248

249-
![Debug output](_images/output.webp)
249+
![Screenshot of the Arduino IDE Serial Monitor window displaying debug messages from the motion detection sketch. The output shows repeated "Motion detected" messages followed by motion event counts, confirming that the PIR sensor is triggering correctly and the sketch is processing the interrupts.#center](_images/output.webp)
250250

251251
Congratulations! You have successfully programmed your microcontroller and built a working, if simple, smart device.
252252

content/learning-paths/embedded-and-microcontrollers/arduino-pico/arm_embedded.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ layout: "learningpathall"
1212

1313
Now that you know the differences between application and embedded programming, as well as the differences in the hardware and software stack, it's time to take your first steps into embedded software development!
1414

15-
![Arm Embedded stack](_images/embedded_arm_stack.png)
15+
![Diagram showing the typical Arm embedded software stack with three layers: Cortex-M CPU at the bottom hardware layer, Mbed OS RTOS in the middle, and C application code with supporting libraries at the top. This illustrates the standard architecture for Arm microcontroller projects where the RTOS sits directly on hardware without a firmware abstraction layer.#center](_images/embedded_arm_stack.png)
1616

1717
A typical embedded project for Arm devices looks like this. For microcontrollers, you'll have a CPU in the Cortex-M family and, as your RTOS, you'll use something like Mbed OS, which is provided by Arm and used by default in Arm Developer Studio and Keil MDK.
1818

@@ -26,7 +26,7 @@ As you know, these small, cheap, development prototyping boards have been around
2626

2727
But they're so much more than just a toy for making lights flash. They're a really great way to get started with embedded programming!
2828

29-
![Arduino stack](_images/embedded_arduino_stack.png)
29+
![Diagram showing Arduino's simplified embedded stack with Cortex-M0+ CPU at the hardware layer, Arduino core package in the middle providing hardware abstraction, and Arduino sketch written in C++ at the application layer. This shows how Arduino makes embedded development more accessible by hiding low-level hardware details behind the core package.#center](_images/embedded_arduino_stack.png)
3030

3131
The latest generations of Arduino use Arm Cortex-M microprocessors, such as the Cortex-M0+ in the Arduino Nano RP2040, making that more powerful and capable than before, while still providing a very simple and straightforward programming experience.
3232

content/learning-paths/embedded-and-microcontrollers/arduino-pico/embedded_stack.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ layout: "learningpathall"
1212

1313
While the embedded computing stack looks similar to an application stack, there are some important differences.
1414

15-
![Embedded stack](_images/embedded_stack.png)
15+
![Diagram showing the embedded computing stack with hardware at the bottom, RTOS in the middle, and application at the top. Unlike traditional application stacks, there is no firmware layer abstracting the hardware, meaning embedded software must be built specifically for the target hardware and include all necessary drivers.#center](_images/embedded_stack.png)
1616

1717
## Hardware
1818

0 commit comments

Comments
 (0)