GithubHelp home page GithubHelp logo

casuallywill / stm32f401re_template Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 534 KB

Template to build bare-metal projects for the STM32F401RE using Linux and GNU Tools

Makefile 0.13% C 98.22% C++ 1.09% Assembly 0.57%

stm32f401re_template's Introduction

Modified by Will Bonsmann, original project by Prof7bit https://github.com/prof7bit/bare_metal_stm32f401xe

  • Included the ST Standard Peripheral Drivers
  • Changed startup file and linker to ones provided by ST

Minimal gcc makefile project for STM32F401xE

This contains the absolute bare minimum needed to compile a blinky example for the STM32F401xE on the command line with gcc and make and then flash it to the demo board with OpenOCD. It is using the original headers provided by STM and ARM but only those for the core and peripheral registers, none of the HAL or any other optional libs.

The startup code has been implemented from scratch and the linker script has been taken from the gcc distribution and adapted for this controller and therefore none of these files have any Atollic copyright anymore. Startup code and SystemInit have been implemented in plain C and are together in one file gcc_startup_system.c.

Usage

Prerequisites

  • install Linux on your PC
  • get a NUCLEO-F401RE demo board from STMicroelectronics
  • install the official arm-none-eabi-gcc toolchain from Launchpad
  • install OpenOCD
  • add this line to your udev rules (permissions for the STLink on the NUCLEO board)
    ACTION=="add|change", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="374b", MODE="664", GROUP="plugdev"

Build and run

  • clone this repository
  • connect the NUCLEO board
  • $ make install
  • watch the green LED blink while studying the reference manual

happy hacking :-)

stm32f401re_template's People

Contributors

casuallywill avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.