Page 1 of 1
Hell world!
Posted: Mon Sep 21, 2020 10:52 am
by saeed144
Hi every one, I'm a beginner to use stm32 micro-controller and I want to learn this interesting subject.
I worked with Arduino family and know about Arduino IDE, it's very cool that stm32 is compatible with Arduino IDE.
I hope this forum can help me to learn stm32 completely
Re: Hell world!
Posted: Mon Sep 21, 2020 12:00 pm
by fpiSTM
Welcome
@saeed144
Hope too
Re: Hell world!
Posted: Mon Sep 21, 2020 2:38 pm
by mrburnette
saeed144 wrote: ↑Mon Sep 21, 2020 10:52 am
...
I hope this forum can help me to learn stm32 completely
Arduino for STM32 is made compatible by some clever C++ wrappers and scripting:
This porting is based on:
STM32Cube MCU Packages including:
- The HAL hardware abstraction layer, enabling portability between different STM32 devices via standardized API calls
- The Low-Layer (LL) APIs, a light-weight, optimized, expert oriented set of APIs designed for both performance and runtime efficiency
- CMSIS device defintion for STM32
CMSIS: Cortex Microcontroller Software Interface Standard (CMSIS) is a vendor-independent hardware abstraction layer for the Cortex®-M processor series and defines generic tool interfaces. It has been packaged as a module for Arduino IDE:
https://github.com/stm32duino/ArduinoModule-CMSIS
GNU Arm Embedded Toolchain: Arm Embedded GCC compiler, libraries and other GNU tools necessary for bare-metal software development on devices based on the Arm Cortex-M. Packages are provided thanks The xPack GNU Arm Embedded GCC:
https://github.com/xpack-dev-tools/arm- ... -gcc-xpack
But wrappers and the Arduino syntax does impose performance issues and hides the more professional nature of the underlying libraries. Thus your word choice "completely" has two meanings: one for Arduino and one for STM32Cube.
Ray
Re: Hell world!
Posted: Sat Sep 26, 2020 9:34 am
by saeed144
You're right, One question:
Do we have access all stm32 features with Arduino IDE? (like Interrupts, timers, DAC, DMA and ...)
Re: Hell world!
Posted: Sat Sep 26, 2020 11:01 am
by GonzoG
Yes. If there is no support in Arduino compatible libraries you can use HAL or LL libraries.
Here's link to stm32duino Wiki:
https://github.com/stm32duino/wiki/wiki
And for API references:
https://github.com/stm32duino/wiki/wiki/API
Interrupts, DAC you can use same way as with Arduino boards.
Re: Hell world!
Posted: Sat Sep 26, 2020 11:45 am
by saeed144
that's great