Skip to main content
Associate III
March 11, 2025
Solved

Looking for a trig function library

  • March 11, 2025
  • 7 replies
  • 1103 views

Hello ST Community,

I'm working on an application using the STM32F103C8T6 microcontroller that implements a Sliding Mode Observer (SMO) and Park/Clarke transformations. I'm facing significant performance challenges due to the computational overhead of the floating-point trigonometric functions  atan2f.

My system requires a 50us loop execution time, but the SMO alone is taking approximately 20us, largely due to these trigonometric functions. I need to optimize this to meet my timing requirements.

Here's a breakdown of my current implementation:

  • MCU: STM32F103C8T6
  • Application: SMO and Park/Clarke transformations
  • Problem: Excessive execution time of  and atan2f within a 50us loop.
  • Current Performance: SMO takes ~20us.
  • Compiler: stm32cubeide
  • Optimization Flags: O2
  • Clock Frequency: 20khz

Please tell me solution

 

This topic has been closed for replies.
Best answer by Tesla DeLorean

Not the first to have these types of problems, perhaps consider Google, et al

https://gist.github.com/volkansalma/2972237

7 replies

TDK
March 11, 2025

Perhaps move to fixed point and use the precompiled DSP library.

https://github.com/ARM-software/CMSIS-DSP/tree/main/Source/FastMathFunctions

 

Floating point calculation on a chip without an FPU are going to be incredibly slow. Plenty of inexpensive chips out there with an FPU.

"If you feel a post has answered your question, please click ""Accept as Solution""."
Andrew Neil
Super User
March 11, 2025

Lookup tables?

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.
Associate III
March 12, 2025

Sir Thankyou so much Please can you provide me implementation for lookup table

Tesla DeLorean
Tesla DeLoreanBest answer
Guru
March 11, 2025

Not the first to have these types of problems, perhaps consider Google, et al

https://gist.github.com/volkansalma/2972237

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

Sir please provide same for tanf , sinf, and cosf

Your solution is helpful for me, Thanks for reply and providing solution sir