SPI clocking on PSOC 4 (CY8C4247AZI-M485)

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

cross mob
sele_2039411
Level 1
Level 1

Hi,

   

I added an SCB SPI channel in one of my projects on the PSOC 4200M of the CY8CKIT-043.

   

After some hours of debugging, I figured out that the chip does not clock out new data as it gets written into the transmit register. Data just accumulates in the FIFO.

   

So, my guess was to look closer at the clock for the SCB SPI block. Instead of the internal clock (8MHz with a /3 divider from HFCLK, 8 times oversampling), I added an external clock 8MHz. And indeed, now, data gets clocked out correctly.

   

I have compared my setup of the SCB SPI channel with the one provided in example "SCB_SpiCommMaster01". In this example, the internal clock works for me. The settings in my own project are identical.

   

What could the reason be that in my own project, the internal clock does not get connected (?) correctly to the SCB SPI block? I would prefer using the internal clock source instead of wasting an external clock element.

   

Best,

   

Severin

0 Likes
2 Replies
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Welcome in the forum, Severin.

   

Can you please post your complete project, so that we all can have a look at all of your settings. To do so, use
Creator->File->Create Workspace Bundle (minimal)
and attach the resulting file.

   

 

   

Bob

0 Likes
lock attach
Attachments are accessible only for community members.
sele_2039411
Level 1
Level 1

Hi Bob,

   

here it comes, the project in question is "USB-RIO-Hub" ! On the schematics, under the "Communications" tab, you will find a UART and an I2C (which work fine with the internal clock), as well as the SCB SPI that currently uses an external 8MHz clock. Switch it back to the internal clock and check whether it fails for you too. Thanks a lot for your help.

   

Best,

   

Severin

0 Likes