Assume we need to drive a Robotic Arm that is made up of following components.
1) Arm moves in only one direction
2) The movement of the arm is carried out by a motor.
The motor can be of Stepper type or DC ( Servo) type.
The motor can be driven either by PWM Circuit or by Timer Circuit.
In PWM way of driving, we just program the number of pulses and the Duty Cycle. PWM hardware will interrupt once the movement is completed.
In Timer way of driving, an interrupt is invoked after each time period. In the ISR, next step or position is programmed.
Can you arrive at the Classes and their relationships to do the above. Just high level classes are enough and no need of details.