A development board for teaching embedded systems.
$ git clone https://github.com/lab11/buckler.git --recursive
$ git subomdule update --init --recursive
$ cd software/apps/blink/
$ make
You should see results similar to
BUILD OPTIONS:
Chip nrf52832
RAM 64 kB
FLASH 512 kB
SDK 15
SoftDevice s132 6.0.0
Board Buckler_revB
DIR _build
CC main.c ...
... (many more CCs) ...
LD _build/blink_sdk15_s132.elf
HEX _build/blink_sdk15_s132.hex
BIN _build/blink_sdk15_s132.hex
SIZE _build/blink_sdk15_s132.elf
text data bss dec hex filename
37672 2548 2624 42844 a75c _build/blink_sdk15_s132.elf
$ make flash
The three LEDS (red, yellow, and blue) on Buckler should begin a blinking sequence.
Several make directives exist for convenience of performing common operations.
-g
and -O0
).make flash
automatically runs this command.├── hardware
│ └── <Various hardware revisions>
│ ├── <PDF version of schematic and layout>
│ ├── <Eagle schematic and layout files>
│ └── <Zipped assembly files>
├── media
│ └── <Images used in repo>
└── software
├── apps
│ └── <Various applications>
│ ├── <Code for application>
│ └── <Makefile for application>
├── boards
│ └── <Board-specific headers and Makefiles>
├── libraries
│ └── <Various libraries>
├── nrf5x-base
│ └── <Submodule: build tools and files for nRF projects>
└── tools
└── <Tools for Travis-CI use>
If you are using Buckler for a project, we recommend you include it as a submodule in your own repository. An example of how to do so can be found in: buckler-external-repo
In order to get code compiling and loading over JTAG, you'll need at least two tools.
JLinkExe should be installed from here. You want to the "J-Link Software and Documentation Pack". There are various packages available depending on operating system.
arm-none-eabi-gcc is the cross-compiler version of GCC for building embedded ARM code.
MacOS:
$ brew tap ARMmbed/homebrew-formulae && brew update && brew install arm-none-eabi-gcc
Ubuntu:
$ sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa && sudo apt update && sudo apt install gcc-arm-embedded