Git Product home page Git Product logo

f070rb-bl-fw's Introduction

F070RB-BL-FW

NUCLEO F070RB Bootloader and PIC Firmware Image

This repository is for implementing how to get STM32 NUCLEO-F070RB evaluation board to boot position independent code (pic) firmware image. It is actual jump boot, not some blob function call thing.

Quick statuses

Bootloader: Works. Automaticly jumps to first non-empty position in firmware area.

Firmware_anywhere: Works with all addresses sufficiently aligned to 4 bytes when booted by bootloader. Works also standalone.

One can try for example these firmware addresses when booting via bootloader, they have all been tested as working:

0x8005000

0x8005200

0x8005204

0x8005208

0x8005400

f070rb-bl-fw's People

Contributors

usvi avatar

Stargazers

Viktar avatar  avatar

Watchers

 avatar

f070rb-bl-fw's Issues

function pointer with pic

Hello,
I have a writing problem when using pic,
An error occurs when using a pointer to access a function in a global variable. The reason is that the function address in the global variable has been determined, but when using a pointer to access it, pic will not add the offset for me.

If you update the contents of .data during the system initialization phase, you cannot accurately distinguish which ones are absolute addresses and which ones are data.

example:

typedef void (*func)(void);

struct ops
{
  uint32_t a;
  func b;
};
void test(void)
{
  //do nothing
}

struct ops g_ops =
{
  12345,
  test
};

int main(void)
{
  struct ops *ops = &g_ops;

  ops->b();
  return 0;
}

do ops->b() will get a bad address.

Floating point operation not support fpic

Hello. I use your example on the stm32l051 chip. For floating point numbers, the linker supplies calls like __aeabi_fmul. There is an assumption that they are "broken" any such call breaks the execution of the program. Do you have any ideas about this?

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.