So you have a motor that is controlled by a PWM? How have you connected this PWM to the NXT?
You could suply power to the PWM by programming it with a NXT motor VI. Have the VI "run" the "motor" for whatever the amount of time one pulse is for your PWM. Then just repeat that action in a while loop.
THE vi changes pulse width,the frequency is 8K Hz,I want to change the frequency to 50Hz,which parameter in NXT_MotorUnlimited.vi change the parameter?
THE vi can change output pulse width,the frequency is 8K Hz,I want to change the frequency to 50Hz,which parameter in NXT_MotorUnlimited.vi changes the frequency?
For your float problem, if you needed 2/3, you could devide 2 by 3 and you would get your answer. Of course, if you do that directly and ask for an asnwer, it will be rounded, but depending on what you are trying to ultimately do, it might work.
Since the NXT doesn't support floating point, you'll need to re-implement the PID algorithm using integers. A google search would give you the following resources: