Skip to content

jameesbrown/c-pico-minimal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

c-pico-minimal

A small SDK-free Raspberry Pi Pico project written in C.

Dependencies

ARM GNU Toolchain

If you use Homebrew, you can run:

brew install --cask gcc-arm-embedded

Otherwise, download it from the ARM developer site here.

Using This Project

Building

If you have GNU Make installed, just run make in the root project directory. Build files are written to the build folder.

Programming Your Device

  1. Hold down the BOOTSEL button on your Pico.
  2. While holding the button, plug the Pico into your computer via USB.
  3. Release the BOOTSEL button after it connects.
  4. Drag and drop (or copy/paste) the build/blink.uf2 file onto the Pico drive.

Currently Implemented

  1. Stage 2 boot – using the execute-in-SRAM approach.
  2. Basic setup of vector table, clocks (XOSC), watchdog, and timer interrupts.
  3. Blink using a timer interrupt.

Resources

  1. Using LD, the GNU linker

  2. RP2040 Datasheet

  3. Cortex-M0+ Technical Reference Manual

  4. RP2040 Bootrom Source

  5. Pico SDK

Other Projects to Look At

License

This project is licensed under the MIT License – see the LICENSE file for details.