cancel
Showing results for 
Search instead for 
Did you mean: 

Looking for registers informations to configure STM32L0 series.

butterfly
Associate II

Hy,

I am new by using nucleo board. I am evaluating the bootloader which runs fine for y first tests and I try to enlarge configuration capabilities. To focus on this goal I am looking for the registers map available with STM32L0 series.

In the reference Manuel are documented each peripherals with their registers through offset address, but not the reference address for each kind of peripheral. A description of those addresses will be welcome.

Butterfly-fr

1 ACCEPTED SOLUTION

Accepted Solutions
SofLit
ST Employee

Hello,

In the reference manual you can find the start address of each peripheral like in this table:

SofLit_0-1706879126691.png

 

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

View solution in original post

8 REPLIES 8
SofLit
ST Employee

Hello,

In the reference manual you can find the start address of each peripheral like in this table:

SofLit_0-1706879126691.png

 

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

@butterfly  you'll also find them in the stm32l0xxxx.h header for your particular chip - which is probably more useful ...

Hy,

Many thanks to answer me. This table is documented in each Reference Manuel. What is undocumented it is registers in "system memory" and "flash program memory" inside NVM. Factory option byte and user option byte having a perfect documented address. Have you more detail on space address 0x1FF0 0000 - 0x1FF0 1FFF ?

Best regards.

Butterfly.

Andrew, many thanks to answered me. Un stm32l0xxxx.h is surely the quickest way to got registers mapping, therefore this is software, include with softwares package. I am evaluating board from scratch ( that's means without Nucleo tools) and it's seem to me the configurations registers are in space address 0x1FF0 0000 - 0x1FF0 1FFF . Do you provide a way to document this space address?

Best regards.

Butterfly.

There is no registers in that location. 0x1FF0 0000 - 0x1FF0 1FFF range contains the system memory which is the bootloader program programmed by ST during production:

SofLit_0-1706889730189.png

 

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

I don't see the problem?

The documentation of the registers & memory map  - in human-readable format -  is in the UM.

The header file gives you all the addresses & bit positions in machine-readable format.
You don't need to use any other ST tools to use that.

What do you thing is missing?

It's code, programmed at the factory

App Note AN2606 covers the functionality in each model, AN3155 the UART Protocol, etc

You can dump and disassemble the code in the System Memory if you chose too. Unlike other manufacturers it's not ROM'd library code for things like CRC, AES, floating point math, etc. So there's no strong driver to explain functions and entry points. In Boot mode it maps into the Zero address space, and presents a CM0(+) vector table with initial stack, and program counter for the Reset_Handler of the loader.

The Programming Manuals cover the core

The Reference Manual covers the FLASH peripheral allowing programming of the User Flash memory space at 0x08000000..0x080?????

You might also want to review the .SVD files for register details.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..