Portenta_H7_ISR_Servo library
Posted: Thu Sep 16, 2021 10:41 pm
Portenta_H7_ISR_Servo Library
How To Install Using Arduino Library Manager
This library enables you to use Hardware Timer on an STM32H747XI-based Portenta_H7 board to control up to 16 independent servo motors.
These hardware timers, using interrupt, still work even if other functions are blocking. Moreover, they are much more precise (certainly depending on clock frequency accuracy) than other software timers using millis() or micros(). That's necessary if you need to measure some data requiring better accuracy.
Functions using normal software timers, relying on loop() and calling millis(), won't work if the loop() or setup() is blocked by certain operation. For example, certain function is blocking while it's connecting to WiFi or some services.
Releases v1.0.0
1. Basic 16 ISR-based servo controllers using 1 hardware timer for STM32H747XI-based Portenta_H7 boards
Supported Boards
1. STM32H747XI-based Portenta_H7 using using ArduinoCore-mbed mbed_portenta
Examples:
1. Portenta_H7_ISR_MultiServos
2. Portenta_H7_MultipleRandomServos
3. Portenta_H7_MultipleServos
How To Install Using Arduino Library Manager
This library enables you to use Hardware Timer on an STM32H747XI-based Portenta_H7 board to control up to 16 independent servo motors.
These hardware timers, using interrupt, still work even if other functions are blocking. Moreover, they are much more precise (certainly depending on clock frequency accuracy) than other software timers using millis() or micros(). That's necessary if you need to measure some data requiring better accuracy.
Functions using normal software timers, relying on loop() and calling millis(), won't work if the loop() or setup() is blocked by certain operation. For example, certain function is blocking while it's connecting to WiFi or some services.
Releases v1.0.0
1. Basic 16 ISR-based servo controllers using 1 hardware timer for STM32H747XI-based Portenta_H7 boards
Supported Boards
1. STM32H747XI-based Portenta_H7 using using ArduinoCore-mbed mbed_portenta
Examples:
1. Portenta_H7_ISR_MultiServos
2. Portenta_H7_MultipleRandomServos
3. Portenta_H7_MultipleServos