CCG3PA Flash programming using Cypress FX3 GPIO (SWD Programming)

Announcements

Live Webinar: USB-C adoption. Simple & Cost-efficient solutions | April 18th @9am or 5pm CEST. Register now !

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
PrM_1403381
Level 4
Level 4
First like received First like given Welcome!

Hi, RajathB_01

I am using CCG3PA in my design and I am trying to use Cypress FX3 (GPIO) for CCG3PA's flash programming.

As per the document AN84858 : https://www.cypress.com/documentation/application-notes/an84858-psoc-4-programming-using-external-mi...

One of the important requirements is to ensure that the frequency of SWDCK clock line is at least 1.5 MHz to meet the acquire window timing.

But in Cypress FX3 If I use CyU3PGpioSetValue I am able to achieve 490 KHz, for this I referred the cypress community link : Increasing Frequency of Bit-Banged GPIO Clock in EZ-USB® FX3™ - KBA90267 , and followed the methods mentioned, and here is the outcome.

-> If I use CyU3PGpioSimpleSetValue Gpio toggle clock frequency achieved is 750KHz

-> With GPIO_SIMPLE register accessing method 1.27MHz, I have attached the clock capture image.

So, as per the AN84858, SWDCK clock I am not able to meet 1.5MHz. So do we have any other option to increase the Cypress FX3 Clock frequency ?

Any other methods are available for CCG3PA Flash programming ?

Any other low end PSOC can be used for CCG3PA programming ?

Thanks

Prasanna

0 Likes
1 Solution
RajathB_01
Moderator
Moderator
Moderator
250 replies posted 100 replies posted 50 replies posted

Hi Prasanna,

Please refer to this KBA on FX3 - Calculating PWM Period and Duty Cycle in FX3 – KBA226759

You cannot generate high frequency toggle by using  CyU3PGpioSimpleSetValue.

A PWM timer implementation can be used to generate clocks of the order of MHz as explained in above KBA.

You can also refer to the FX3 SDK example - 'Complex GPIO'

Regards,

Rajath

View solution in original post

0 Likes
1 Reply
RajathB_01
Moderator
Moderator
Moderator
250 replies posted 100 replies posted 50 replies posted

Hi Prasanna,

Please refer to this KBA on FX3 - Calculating PWM Period and Duty Cycle in FX3 – KBA226759

You cannot generate high frequency toggle by using  CyU3PGpioSimpleSetValue.

A PWM timer implementation can be used to generate clocks of the order of MHz as explained in above KBA.

You can also refer to the FX3 SDK example - 'Complex GPIO'

Regards,

Rajath

0 Likes