-
Class 5
05/06/2021 at 17:25 • 0 commentsClass 5 - Hello, PIO
The Programmable Input/Output (PIO) is a unique feature of the RP2040 chip. It enables the creation of additional hardware interfaces, even ones that are not natively supported by the chip (WS2812B, I'm looking at you!). We'll learn how the PIO state machine works and see an example of programming it.
Class 5 Video: -
Class 4
05/06/2021 at 17:24 • 0 commentsClass 4 - Under the hood with GDB
We'll learn how to use GDB, the GNU Debugger, and see how we can harness its power for debugging and reverse engineering. We'll also dig into the internals of MicroPython and see how to combine it with Thumb assembly!
Class 4 Video:
-
Class 3
05/06/2021 at 17:24 • 0 commentsClass 3 - Under the hood
We'll continue exploring the ARM Cortex M0+ instruction set, learning about branches, flags, conditional instructions. We will also learn about the ARM assembly ABI (application binary interface) as we write our own routines in pure ARM assembly, and take a look under to hood to see the assembly code generated by the GCC compiler.
Class 3 Video:
-
Class 2
05/06/2021 at 17:23 • 0 commentsClass 2 - Interrupts & Introduction to ARM Assembly
We'll cover hardware and software interrupts, the NVIC (Nested Vector Interrupt Controller), and the vector table, and of course - get our hands dirty writing some C code to demonstrate these concepts. Then we'll learn about the CPU registers, and start digging into ARM assembly.
Class 2 Video:
-
Class 1
05/06/2021 at 17:22 • 0 commentsClass 1 - The Big Picture
We'll learn how the memory space is organized, explore the RP2040 bus fabric, become friends with the RP2040 datasheet, talk about the AHB-Lite bus and the APB bridge, and see how our C code can interact with the on-chip peripherals (such as GPIO and UART) by directly accessing the hardware registers.
Class 1 Video: