diff options
author | xengineering <me@xengineering.eu> | 2022-01-23 13:20:06 +0100 |
---|---|---|
committer | xengineering <me@xengineering.eu> | 2022-01-23 13:21:24 +0100 |
commit | 3a2244d1c094b7722fa286eb24effb0b631d81aa (patch) | |
tree | 87bba7f5c846504fdae4a6c5077fff5ca60cdd25 | |
parent | 5cc962d5fd6ab6b5d4f080a8afe920befe0a44c8 (diff) | |
download | ledcontrol-3a2244d1c094b7722fa286eb24effb0b631d81aa.tar ledcontrol-3a2244d1c094b7722fa286eb24effb0b631d81aa.tar.zst ledcontrol-3a2244d1c094b7722fa286eb24effb0b631d81aa.zip |
Update READMEs and switch from Markdown to plain text
-rw-r--r-- | README.txt | 7 | ||||
-rw-r--r-- | firmware/README.md | 48 | ||||
-rw-r--r-- | firmware/README.txt | 54 |
3 files changed, 61 insertions, 48 deletions
diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..353cd6b --- /dev/null +++ b/README.txt @@ -0,0 +1,7 @@ + +---------- +ledcontrol +---------- + +This project has the primary goal to provide software and hardware for a +network-connected LED controller. It is currently in a 'work-in-progress' state. diff --git a/firmware/README.md b/firmware/README.md deleted file mode 100644 index 1fee659..0000000 --- a/firmware/README.md +++ /dev/null @@ -1,48 +0,0 @@ - -# ledcontrol - -A firmware project for the STM32F103C8T6 to control LED strips. - -## Usage - -Install the necessary software. For Arch Linux this works like this: -``` -sudo pacman -S \ - base-devel \ - arm-none-eabi-binutils \ - arm-none-eabi-gcc \ - arm-none-eabi-gdb \ - arm-none-eabi-newlib -``` - -Clone this repository with all Git submodules: -``` -git clone --recurse-submodules https://cgit.xengineering.eu/ledcontrol -``` - -Enter the repository and build the software -``` -cd ledcontrol -make -``` - -Connect your STM32F103C8T6 with an STLINK V2 debugger and flash the firmware: -``` -bash ocd.sh -# switch to a second terminal in the same folder -bash gdb.sh build/ledcontrol.elf -load -run -# CTRL + C will stop the execution -# leave GDB with CTRL + D -``` - -Mention that you do not have to quit GDB to upload new compiled firmware. Just -call `load` and `run` again. - -## External References - -- Nice [tutorial](https://jacobmossberg.se/posts/2018/08/11/run-c-program-bare-metal-on-arm-cortex-m3.html) about C programs on bare-metal ARM chips -- Another useful [tutorial](https://www.rhye.org/post/stm32-with-opencm3-0-compiling-and-uploading/) about STM32 programming with libopencm3 -- A nice [PWM example](https://github.com/libopencm3/libopencm3-examples/blob/master/examples/stm32/f1/obldc/pwmleds/pwmleds.c) from the libopencm3 project - diff --git a/firmware/README.txt b/firmware/README.txt new file mode 100644 index 0000000..7257338 --- /dev/null +++ b/firmware/README.txt @@ -0,0 +1,54 @@ + + +--------------------- +ledcontrol / firmware +--------------------- + +This folder contains the firmware for the ledcontrol project. It assumes a +STM32F103C8T6 microcontroller. + + +Usage +----- + +Install the necessary software. For Arch Linux this works like this: + + sudo pacman -S \ + base-devel \ + arm-none-eabi-binutils \ + arm-none-eabi-gcc \ + arm-none-eabi-gdb \ + arm-none-eabi-newlib + +Clone this repository with all Git submodules: + + git clone --recurse-submodules https://cgit.xengineering.eu/ledcontrol + +Enter the repository and build the software: + + cd ledcontrol + make + +Connect your STM32F103C8T6 with an STLINK V2 debugger and flash the firmware: + + bash ocd.sh + # switch to a second terminal in the same folder + bash gdb.sh build/ledcontrol.elf + load + run + # CTRL + C will stop the execution + # leave GDB with CTRL + D + +Mention that you do not have to quit GDB to upload new compiled firmware. Just +call `load` and `run` again. + + +External References +------------------- + +- tutorial about C programs on bare-metal ARM chips: + https://jacobmossberg.se/posts/2018/08/11/run-c-program-bare-metal-on-arm-cortex-m3.html +- tutorial about STM32 programming with libopencm3: + https://www.rhye.org/post/stm32-with-opencm3-0-compiling-and-uploading/ +- PWM example from the libopencm3 project: + https://github.com/libopencm3/libopencm3-examples/blob/master/examples/stm32/f1/obldc/pwmleds/pwmleds.c |