README.old (2770B)
1 2 =========================================================================== 3 m3dev - tools for embedded ARM Cortex M3 development 4 =========================================================================== 5 6 This project is a collection of (linux-centric) tools for working on 7 small embedded systems based on the ARM Cortex M3 CPU. 8 9 Original work was done with a STM32F103 part, and much more work has been 10 done with LPC13xx series parts. 11 12 Everything is either Apache 2 or BSD licensed, to allow for easy, 13 no-strings-attached, inclusion in your own projects. Share and enjoy! 14 15 16 m3debug 17 ------- 18 19 Firmware for the "m3debug" and "super-m3debug" boards which use the 20 LPC1343 as an engine for the ARM Serial Wire Debug Protocol, in 21 conjunction with the debugger and gdb-bridge programs (described 22 below). 23 24 A schematic is provided for the original (pretty simplistic) m3debug 25 board. 26 27 28 swdp 29 ---- 30 31 Firmware for the LeafLabs Maple board to act as a USB<->SW-DP bridge, 32 to allow host software to use Serial Wire Debug Protocol to access target 33 devices. It should be usable on just about any STM32F103 board. 34 35 GPIO 0 -> SWDIO 36 GPIO 1 -> SWCLK 37 GPIO 5 -> Activity LED 38 39 This was the original prototype and has not been tested in a looong 40 time now. 41 42 43 debugger & gdb-bridge 44 --------------------- 45 46 A simple standalone debugger and a bridge for the GDB remote protocol 47 that commicate with a board running swdp. 48 49 50 stm32boot 51 --------- 52 53 A tool to download code to RAM or flash, via the stm32f1xx ROM serial 54 bootloader. 55 56 57 usbmon 58 ------ 59 60 Commandline tool to observe the linux usb stack and io transactions 61 through /dev/usbmon* 62 63 64 Included Third Party Software 65 ----------------------------- 66 67 linenoise.[ch] 68 excellent tiny commandline editor (BSD license) 69 https://github.com/antirez/linenoise 70 71 72 Useful Documents 73 ---------------- 74 75 ARM DDI0337E Cortex M3 r1p1 Technical Reference Manual 76 Has useful details on SW-DP and debug peripherals that was removed 77 in later versions of the TRM as "redundant" with other documents. 78 79 80 Historical Notes 81 ---------------- 82 83 The original work on this started in 2011 and has been tinkered with 84 on a number of repositories by a number of people. Trying to fold things 85 back together and tidy up the build system, etc, ended up being a bit of 86 a mess resulting in Brian declaring "history bankruptcy" and starting 87 a fresh repository in 2014. 88 89 Some random side projects have been removed. An AUTHORS file has been 90 added to provide credit for additional contributors to the codebase. 91 92 The code base as of the initial checkin, built with gcc 4.8.2 and 93 binutils 2.24 (http://github.com/travisg/toolchains) is verified to 94 be able to use a m3debug board to flash the bootloader and app image 95 to another m3debug board, which then can repeat the process.