Hi,
I am having some trouble implementing Pulse Width Modulation (PWM) with my cRIO. After some trouble I decided to make the following experiment today: I used the PWM example from the Example Finder to set the according FPGA VI to generate a 50% duty cycle PWM signal and did this for a set of PWM period lengths. I then measured the output using a standard handheld Voltmeter in DC mode. Hence, the voltmeter should read, what a motor that is connected to PWM port would "see". The supply voltage to the NI 9474 was 20V at all times.
For example, I set the PWM period length to 40,000 ticks for a 1kHz PWM signal with a 20,000 ticks PWM duty cycle length. However, instead of reading 10V output voltage, the Voltmeter gave me a reading of 17V. Varying the PWM period length gave the results as in the following graph:

This indicated to me that the digital output module 9474 which is supposed to have a switching speed of less than 1us, does in fact have some trouble keeping up with the speeds at much lower speeds. Hooking an oscilloscope up with the 9474 prooved, that the output of the PWM signal was every thing but a square wave (to be exact: a noisy square wave).
I attach a VI documentation of the FPGA VI I used. Any hints on why the PWM does not work as intended would be greatly appreciated.