+ Post New Thread
Results 1 to 8 of 8
  1. #1
    Newbie level 6
    Points: 687, Level: 5

    Join Date
    Nov 2016
    Posts
    12
    Helped
    1 / 1
    Points
    687
    Level
    5

    higher output frequency with PCA9685?

    Hello every one.
    pca9685 has an external clock input pin.
    and its maximum output frequency is about 1.6khz as mentions in the datasheet.
    can we increase the output frequency using a 50MHz crystal oscilator?
    or is there any other way to increse the output frequency?

    i want to make 16, 50khz pwm waveform and control their duty cycles.

    •   AltAdvertisement

        
       

  2. #2
    Super Moderator
    Points: 84,013, Level: 70
    Achievements:
    7 years registered
    Awards:
    Most Frequent Poster 3rd Helpful Member

    Join Date
    Apr 2014
    Posts
    17,087
    Helped
    3860 / 3860
    Points
    84,013
    Level
    70

    Re: higher output frequency with PCA9685?

    Hi,

    simple calculation:
    50kHz PWM frequency x 4096 (12 bits resolution) = 204,800kHz = about 205MHz input clock.

    Answer: not possible.


    Klaus
    Please don´t contact me via PM, because there is no time to respond to them. No friend requests. Thank you.


    1 members found this post helpful.

    •   AltAdvertisement

        
       

  3. #3
    Super Moderator
    Points: 266,518, Level: 100
    Awards:
    1st Helpful Member

    Join Date
    Jan 2008
    Location
    Bochum, Germany
    Posts
    46,581
    Helped
    14172 / 14172
    Points
    266,518
    Level
    100

    Re: higher output frequency with PCA9685?

    The maximum PWM frequency is actually fclk/(4*4096), there's an additional prescaler.


    1 members found this post helpful.

    •   AltAdvertisement

        
       

  4. #4
    Newbie level 6
    Points: 687, Level: 5

    Join Date
    Nov 2016
    Posts
    12
    Helped
    1 / 1
    Points
    687
    Level
    5

    Re: higher output frequency with PCA9685?

    thank u,
    do you have any other suggestions for producing 16 PWM signal?

    I use Arduino mega 2560 and pca9685 for low frequency. and i know that pca9635 could be used for 96khz PWM.
    but what can I do for 50khz?

    do you know any other PWM ic that could be controlled with a microcontroller?



  5. #5
    Newbie level 6
    Points: 687, Level: 5

    Join Date
    Nov 2016
    Posts
    12
    Helped
    1 / 1
    Points
    687
    Level
    5

    Re: higher output frequency with PCA9685?

    yes
    its internal clock is 25Mhz and max freq is 1.6khz.
    it seems that "Klaus" calculations are not correct and there's an additional prescaler.



  6. #6
    Super Moderator
    Points: 84,013, Level: 70
    Achievements:
    7 years registered
    Awards:
    Most Frequent Poster 3rd Helpful Member

    Join Date
    Apr 2014
    Posts
    17,087
    Helped
    3860 / 3860
    Points
    84,013
    Level
    70

    Re: higher output frequency with PCA9685?

    Hi,

    it seems that "Klaus" calculations are not correct and there's an additional prescaler.
    You may say "not correct"...
    but I did just a general calculation of the required minimum input frequency .. (for any digital PWM generation, not only MAX9685)
    and if the minimum required frequency is 200MHz then I saw no need to do further calculations.
    For sure I can do: 200MHz x 4 (min prescaler) = 800MHz.

    Still above 50MHz, still not possible.


    Klaus

    - - - Updated - - -

    Hi,

    do you know any other PWM ic that could be controlled with a microcontroller?
    What PWM resolution do you need?
    Whay exactly 50kHz? What tolerance / range do you allow?

    PCA9955 operates with 31.25kHz... this is the closest on a quick view.

    But any small FPGA will do. What quantity? Maybe you find someone coding and programming it for you.

    Klaus
    Please don´t contact me via PM, because there is no time to respond to them. No friend requests. Thank you.


    1 members found this post helpful.

  7. #7
    Super Moderator
    Points: 54,851, Level: 57

    Join Date
    Apr 2011
    Location
    Minneapolis, Minnesota, USA
    Posts
    13,361
    Helped
    2654 / 2654
    Points
    54,851
    Level
    57

    Re: higher output frequency with PCA9685?

    Quote Originally Posted by omax View Post
    any other suggestions for producing 16 PWM signal?
    A 555 timer IC is able to produce PWM, by applying a voltage to its control pin #5.

    Low V makes short duty cycle. Higher V makes long duty cycle. Hence PWM. In some degree it's PFM because carrier frequency is unfixed.

    16 timer IC's are needed of course.



    •   AltAdvertisement

        
       

  8. #8
    Newbie level 6
    Points: 687, Level: 5

    Join Date
    Nov 2016
    Posts
    12
    Helped
    1 / 1
    Points
    687
    Level
    5

    Re: higher output frequency with PCA9685?

    Quote Originally Posted by KlausST View Post
    Hi,


    You may say "not correct"...
    but I did just a general calculation of the required minimum input frequency .. (for any digital PWM generation, not only MAX9685)
    and if the minimum required frequency is 200MHz then I saw no need to do further calculations.
    For sure I can do: 200MHz x 4 (min prescaler) = 800MHz.

    Still above 50MHz, still not possible.


    Klaus

    - - - Updated - - -

    Hi,


    What PWM resolution do you need?
    Whay exactly 50kHz? What tolerance / range do you allow?

    PCA9955 operates with 31.25kHz... this is the closest on a quick view.

    But any small FPGA will do. What quantity? Maybe you find someone coding and programming it for you.

    Klaus
    your replies are always useful:

    I used two Arduino as master and slave to produce the 16 PWMs with F=31khz. (by modifying some registry codes to get this freq.)

    maybe I start to learn FPGA.



--[[ ]]--