Conflict between GPIO OE and SCB [SOLVED]

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.
Anonymous
Not applicable

Hello Everyone

   

I am interfacing with an 8-bit bus with read/write capability, so I'm using an 8-bit port with Output Enable. There is as well a SCB UART. The prototype I implemented with the CY8CKIT-042 works perfectly.

   

For the prototype, I switched to a bigger chip: CY8C4245LTI-M445. When compiling the same project (after remapping the IO of course) I now get the following errors:

   
    

Pin guidance unavailable: CD(0) cannot be configured for Output Enable or Input/Output Synchronization while connected to \UART_1:SCB\'s rx terminal.

    

Pin guidance unavailable: CD(0) cannot be configured for Output Enable or Input/Output Synchronization while connected to \UART_1:SCB\'s cts terminal.

    

...

   
   

I have attached a screenshot of the errors. CD(0) is the bit 0 of the data bus. CD(0) is mapped on P1.4.

   

P1.4 ctb0.oa1.inm tcpwm.line[6]:1 scb[0].spi_select1:1

   

Although the UART is not using scb[0] but scb[1].

   

Of course, disabling the Output Enable for the 8-bit port gets rid of the error, but that's not an option for my application.

   

Any idea why I'm getting this conflict?
Thanks!

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

Both, UART and SPI are using SCBs which have dedicated pins. UART seems to use SCB0.

   

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.
Anonymous
Not applicable

Hi Bob

   

Here it is. Thanks

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

Driving the oe with a constant 0 signal will invoke the optimizer. This will remove parts of the design which is not what you want. Connect a(ny) signal to oe and those errors will go away.

   

 

   

Bob

0 Likes
Anonymous
Not applicable

That did the trick!

   

Thank you!

0 Likes