How to change PWM Frequency of Arduino USING MATLAB SIMULINK Support package

123 views (last 30 days)
i have problem with my project. I use Arduino uno and Simulink. For the control i need a PWM signal with 3000 Hz - 5000 Hz but the Simulink support package (PWM) has only 490 Hz and i can change only the duty-cycle.
What can I do?
I would welcome your response
Daniel Velazquez
Daniel Velazquez on 9 Jul 2021
You can change the frequency in Simulink just double click on the PWM block in the Frequency drop down menu select: Specify and write your desired frequency in Hz.
The problem is the higher the frequency (>100kHz) the lower the resolution of the PWM, but at 5kHz you should have no problem. of July 8, 2021 with ATMEGA 2560.

Sign in to comment.

Answers (1)

Greg Wolff
Greg Wolff on 15 Aug 2019
You cannot change the PWM frequency of the PWM block found in the Arduino hardware support package.
You can however create custom device driver blocks. There is a good resource here:
that has various examples, all built around supporting Arduino boards.


More Answers in the  Power Electronics Control


Find more on Simulink Support Package for Arduino Hardware in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!