title: What is the distinction between Output Compare and Pulse-Width Modulation functions?
body: <p>I am brushing up on microcontrollers, using the STM32 series. (Specifically using the STM32F072BDISCOVERY board).</p>
  
  <p>I am having some trouble understanding the use of timers and their various modes. Specifically, there are a lot of options for "Output Compare" (OC) modes, and other options for "PWM" modes. The RM0091 Reference manual is written as if they are two distinct, alternate modes of operation. I am working with the new HAL drivers as well, and there are different APIs to use OC vs PWM.</p>
  
  <p>However, it looks to me like PWM is basically a subset/use case of the Output Compare capability, where the timer channel is configured to directly drive a hardware output. </p>
  
  <p>Is there a firm distinction between OC and PWM modes that I am missing? In what way is PWM waveform generation <strong>not</strong> an Output Compare function?</p>