port 8 internal routing not working, any way around?

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

cross mob
Anonymous
Not applicable

Hi,

Firstly, I'm pretty new on the PSOC(4)  architecture so apologise in advance if this has been answered before, then just point me to the door and if possible, also send the link while you do it!

We have a project where we use all pins, and quite a few of these are button inpust so we use a Global signal, all port interrupt to give us an interrupt if any button is pressed and then wee loop through to see what button was triggering.

Due to layout constrains, the buttons are spread on all ports, and since the interrupts are port based only it's hard to make some pins come have higher priorities than the buttons. We have some signals, like over current draw, that I would like to have higher priorities than the buttons, that sits on the same port.

I then thought, lets OR the high priority interrupt signals (in our design 3) together via a 3-gate OR and then have the input feeding a separate interrupt that I can raise the interrupt priority on.

This works fine for pins on port 0 and 4 but not for one pin that happens to be on Port 8, when I try to wire this into the or gate I get "Port 8 cannot be used for routed connections".

Is there any way around this, ie can I get a separate interrupt for Port 8 pin 6 in any way, and at the same time have the port 8 interrupt for the rest of the pins?

kind regards

Hjalmar

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

Depending on the PSoC 4 family there are some port pins not routable.

Example: for the CY8C4245 all ports >= 4 cannot be used for routing.

You could try using a member of the PSoC 4 L family which has got more choices for routing. Just select an appropriate device in Creator for your project and check.

Bob

View solution in original post

6 Replies
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Depending on the PSoC 4 family there are some port pins not routable.

Example: for the CY8C4245 all ports >= 4 cannot be used for routing.

You could try using a member of the PSoC 4 L family which has got more choices for routing. Just select an appropriate device in Creator for your project and check.

Bob

Anonymous
Not applicable

Hi,

Tanks for clarifying that, we are using a CY8C4247BZI-L479 so I guess I’m stuffed unless I change chip then.

So I can’t use this pin for anything internal then? is that correct? Where do I see these chips dependant limitations, I’ve been trying to find a good source of info but to no avail.

atb

Hjalmar

0 Likes

The magic word is "DSI". Have a look into this app note.

Bob

0 Likes
Anonymous
Not applicable

Hi,

Yes I have looked at that one. I suppose that after your kind replies I'm now more certain that I'm correct in my assumption that what I'm after can't be done in a slick way.

I just wanted to know if there was a hack I could do to in another way generate a separate interrupt for port8pin6 when I already have an interrupt on "all ports" via the Global signal block.

Also, I now realise that I've misunderstood the concept of psocs a bit, I thought it basically was a processor with a bit of fpga logic attached to it with no restrictions, now I realise it's a processor with a flexible, yet still quite restricted, routing scheme attached to it.

Kind regards

Hjalmar

0 Likes

Have a look at the PSoC5. No (0) routing restrictions, 24 UDBs, digital filter and quite a lot more. Get hands on a CY8CKIT-059.

Bob

0 Likes
Anonymous
Not applicable

Thanks, but it’s a bit too late in the day do switch chips now unfortunately.

atb

Hjalmar

0 Likes