This code was supposed to move the servo motor when as the potentiometer turned, but for some reason, it doesn’t budge an inch. I am not sure if it is the program, the board, or my wiring. The board is a Nucleo STM L476RG board, and the servo is an SG90 micro servo motor and I was utilizing an imported copy of Jasper Denkers Servo library. If anyone could provide assistance that would be great.
you set the variable only once before the loop. The pot.read() must must be inside the loop or in a ticker if you want to change the value/PWM via the pot.
Also you miss information from the library. You need to read the Servo.h file where you can see on lines 30-50 an basic example how use this library. Or found a correct example of that library ServoTest. Or check the methods of that library, where you can found
Enable the servo. Without enabling the servo won’t be running.
Also you use a for cycle but not change the PotReading variable so you only 100 times set same value.
Edit:
Here you have a very basic example, what work with my servo, although it is not so smooth.
#include "mbed.h" //MbedOs 2
#include "Servo.h"
Servo servo(D10);
AnalogIn pot(D6);
int main() {
servo.Enable(200,20000); // 200us start, period of 20ms in us
while(1) {
int value = 200+(pot.read()*2100);
wait_ms(15);
servo.SetPosition(value);
}
}