Skip to main content
m m
Associate III
September 7, 2017
Solved

What is the difference between STMCUBE and Standard Peripheral Library?

  • September 7, 2017
  • 2 replies
  • 1303 views
Posted on September 07, 2017 at 11:42

Hi

I want to know, what is the difference between stmcube and SPL? Has SPL replaced by stmcube? or stmcube is something above the SPL? cause I think there is another thing called HAL library!

Also, when I want to use CMSIS-Core I should use which one of them, If I like to have low level access to registers? 

I have stm32f40vg discovery board that I bought 4years ago, and like to use CMSIS-Core for programming, but I understood SPL is outdated and not supported for now! So what is the alternative for SPL? Or can I use SPL yet?

    This topic has been closed for replies.
    Best answer by Amel NASRI
    Posted on September 07, 2017 at 14:54

    Hi,

    Have a look to

    http://www.st.com/content/ccc/resource/sales_and_marketing/presentation/product_presentation/37/55/ff/bc/a8/71/4f/c5/stm32_embedded_software_offering.pdf/files/stm32_embedded_software_offering.pdf/jcr:content/translations/en.stm32_embedded_software_offering.pdf

    .

    If you still have confusion even after that, please let me know what exactly needs clarification.

    -Amel

    2 replies

    Amel NASRI
    Amel NASRIBest answer
    ST Technical Moderator
    September 7, 2017
    To give better visibility on the answered topics, please click on "Best Answer" on the reply which solved your issue or answered your question.
    m m
    m mAuthor
    Associate III
    September 7, 2017
    Posted on September 07, 2017 at 15:22

    Thank you Amel,

    But, what about CMSIS? CMSIS is which part of this story?

    Amel NASRI
    ST Technical Moderator
    September 7, 2017
    Posted on September 07, 2017 at 17:34

    CMSIS header files are available in both packages (Cube and SPL). 

    Both development approaches allow you to have low level access to register (this wasn't easy to do with HAL -High Abstraction Layer- drivers embedded in the Cube package, but is facilitated since the LL -Low Layer- drivers were added).

    -Amel

    To give better visibility on the answered topics, please click on "Best Answer" on the reply which solved your issue or answered your question.
    Tesla DeLorean
    Guru
    September 7, 2017
    Posted on September 07, 2017 at 17:15

    HAL replaces SPL, CubeMX is a code generator targetting HAL compatible output.

    SPL continues to be supported by those that matter, is doesn't need constant iteration because it isn't packed full of bugs/pitfalls. The SPL for the F4 will continue to work reliably for years to come. If you expect to be building something with a 5-10 year product life, which you will be expected to support/service, where field updates are difficult/impractical, use the SPL, it is far less likely to bite you.

    If you enjoy the Microsoft/Adobe software update/delivery model of constant churn and regression, chose HAL

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