I tried to generate a 40khz pulse to the GPIO pin of my ultrasonic sensor in raspberry pi. I used the pulse generator instrumentation, but the pulse is not accurate: the oscilloscope displays only 10khz.
I modified configuration parameters:
fixed-step
sample time is auto/1e-08
solver is auto/discrete
I also have tried various ways to create a square pulse: function sign(sin(2*pi*40000t)), PLL block, repeating sequence, signal generator combined with sum, compare to zero, etc. All of these display correctly on the scope, but do not deploy accurately.
I doubted the raspberry pulse generatior, so I used python to drive the GPIO pin; results are very accurate. I worry that the Simulink complier doesn't properly support raspberry or the sample time.
Any suggestions?
This is the model I used to generate 40khz pulse.
with period is 0.000025s,pulse width 50%, Solver type is fixed-step.
The oscilloscope display as the following figure: