GEX port to STM32F072. This is currently the main port.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Ondřej Hruška 098a23a810
Improve readme
6 vuotta sitten
Drivers Fix a bug in multi-part PCD transmit 6 vuotta sitten
GexCore@3d3d74f381 relink Core via https 6 vuotta sitten
GexUnits moved platform specific stuff from core 6 vuotta sitten
Inc moved platform specific stuff from core 6 vuotta sitten
Middlewares/Third_Party/FreeRTOS/Source added stuff 6 vuotta sitten
Patches added stuff 6 vuotta sitten
Src moved platform specific stuff from core 6 vuotta sitten
.gitignore added a README and moved build.mk to build.mk.example 6 vuotta sitten
.gitmodules relink Core via https 6 vuotta sitten
.mxproject added stuff 6 vuotta sitten
CMakeLists.txt moved platform specific stuff from core 6 vuotta sitten
LICENSE.txt added a license 6 vuotta sitten
Makefile added a README and moved build.mk to build.mk.example 6 vuotta sitten
README.md Improve readme 6 vuotta sitten
STM32F072RBTx_FLASH.ld some updates for latest gex 6 vuotta sitten
attach.gdb it now works with f072 somehow 6 vuotta sitten
avstack.pl some updates for latest gex 6 vuotta sitten
build.mk.example typos in build.mk.example 6 vuotta sitten
convertnl.sh added stuff 6 vuotta sitten
dbg-client.sh it now works with f072 somehow 6 vuotta sitten
dbg-server.sh it now works with f072 somehow 6 vuotta sitten
fix_cube_mf.php added stuff 6 vuotta sitten
gdb-pipe.cfg it now works with f072 somehow 6 vuotta sitten
gex-f072.ioc it builds 6 vuotta sitten
openocd.cfg it now works with f072 somehow 6 vuotta sitten
openocd.log it now works with f072 somehow 6 vuotta sitten
parsemap.php improved parsemap 6 vuotta sitten
run.gdb it now works with f072 somehow 6 vuotta sitten
startup_stm32f072xb.s added stuff 6 vuotta sitten

README.md

GEX Firmware for STM32F072

This is the STM32F072 GEX firmware, supporting all STM32F072 GEX boards (including the F072 Discovery).

GEX repositories are mirrored on GitHub to make it easier to submit issues and propose improvements via "pull requests". Please use the upstream repository when cloning to ensure you have the latest version of the code. The mirrors are kept up-to-date, but they may fall behind.

Building the Firmware

Make sure you clone the repository recursively (git clone --recursive ...), or run git submodule update --init afterwards, to initialize the GexCore submodule.

In order to build the firmware, first copy the configuration file template build.mk.example to build.mk, modify as desired, then run make to build the binary image (see the Make Targets section below for more options).

Individual GEX units can be enabled or disabled in build.mk, and the target platform (your GEX board model) is selected here as well. The config file is excluded from version control.

Requirements

Listed versions were used during development. Other (particularly newer) versions may work too, but without a guarantee. Please submit patches needed to fix incompatibilities, or at least let me know.

  • arm-none-eabi-gcc (v8.1)
  • arm-none-eabi-binutils (v2.30)
  • arm-none-eabi-newlib (v3.0)
  • make (GNU, v4.2)
  • tr (GNU coreutils 8.29 - but any version should work)
  • dfu-util (v0.9) for DFU flashing
  • stlink (texane, v1.5) for ST-Link flashing

Make Targets

  • make - basic build (recommended to use with -j for faster builds)
  • make flash - flash using st-flash
  • make dfu - flash using dfu-convert and dfu-util
  • make clean - clean files generated during build

All make targets depend on all Makefiles, meaning any modification triggers a full (-B) rebuild the next time you try to build or flash the firmware.