PSoC 5LP - SIO Differential / Pair Inputs

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

cross mob
RoRo_4659551
Level 4
Level 4
25 replies posted 10 replies posted 10 likes given

Hi,

In my board design I have connected these 2 analog pair inputs to the SIO pins in the PSoC:

AIN_O6P = P12_2

AIN_O6M = P12_3

*M refers to GND path which belong to this specific analog input.

*P refers to the analog input.

Please your support understanding how to configure these SIO inputs.

Thanks,

Roy Roif

0 Likes
1 Solution

RoRo,

Sorry, the SIO pins do not support Analog option.

/odissey1

View solution in original post

0 Likes
13 Replies
odissey1
Level 9
Level 9
First comment on KBA 1000 replies posted 750 replies posted

Roy,

I believe that there is nothing special about there pins, just set them to analog, high impedance.

There is custom annotation component, helping to understand pins configuration

Pins Annotation component for PSoC5 and PSoC4

/odissey1

0 Likes

Hi BoTa,

When I try to define the pin as analog input with high impedance analog I am getting an error in the "Pins" window as shown below:

0 Likes

**As shown below:

pastedImage_0.png

0 Likes

RoRo,

Sorry, the SIO pins do not support Analog option.

/odissey1

0 Likes

Yes I know but I am trying to figure out a way how to use these SIO pins without changing my HW design.

What are my possibilities if I define the pins as digital input? can I receive a voltage measurement? If it is possible how can I do that?

Thanks,

Roy Roif

0 Likes

Roy,

I don't believe that is possible.

/odissey1

0 Likes

Oh I see, and if I change my HW design how can I define a pair input? which the GND input path which belong to the specific analog input is defined as the reference?

Thanks,

Roy Roif

0 Likes

Roy,

I am a little bit lost. Can you post a schematic sketch to better understand the problem.

Generally, any pin (except the SIO pins of port_12 on your PSoC) can be assigned to be an Analog pin. Technically, it becomes just a wire. For a differential input, assign any two analog pins available. It would be reasonable to use a pair of adjacent pins, but not necessary.

/odissey1

0 Likes

Hi BoTa,

Here is my current schematics:

I have both single ended inputs and pair inputs, I need help to define the pair inputs.

Currently I have connected them to the SIO pins.

For example:

If I want to measure the voltage of a power supply, I connect both VCC and GND cables of the power supply to AIN_I6P, AIN_O6MX.

The VCC going through a voltage divider and also through an op amp [U5/U6 in the bottom].

Afterwards the signals go into the PSoC and I want to use the AIN_O6M as the reference for the voltage measurements.

Which pins should I use? and how should I configure them in the PSoC Creator?

pastedImage_0.png

0 Likes

LePo_1062026

Hi Len,

Please your support if you can, I have currently stopped the PCB production process until I understand if its possible to measure voltage using the SIO pins. If not please help me understand which pins should I use and how do I configure them in the PSoC Creator.

All the relevant information is written in the above posts.

Thanks,

Roy Roif

0 Likes

Roy,

As BoTa (/odissey1) indicated, the SIO port pins (Port 12) are not capable of Analog input or output.  Virtually all other GPIO port pins are capable of being configured as analog input. (Some might be better than others).

Which one are better?  It depends on your application.

If you're using analog outputs, there are preferred pins to use with more drive capability for the Opamps and the VIDACs.

For analog inputs, there are pins with lower input routing resistance.  This will potentially lower any low input current voltage drops as well as be a little more immune to digital cross-talk coupling.  Avoid putting analog input pins near higher speed digital input or output pins on the PSoC.

Cypress provides a tool to help visualize as well as manually route (if needed) your analog signals.  It is located as a part of the DWR (Design-Wide-Resource).  It is the "Analog" tab.

pastedImage_1.png

This tools shows the routing info including the approximate routing resistance of any analog signal.  For example you can have it calculate the routing resistance from the GPIO pin to internal resource like a VDAC.   Right-select the pin in question and select "Start ohm meter" with the pin.

pastedImage_2.png

Next select the internal resource to measure the series routing resistance.

pastedImage_3.png

It does its best to approximate the resistance to the input or output of the resource.  Additionally it displays the switches (and their resistances) being used to route it.

pastedImage_4.png

My method:

My usual method for initial design to production is to create two breadboard prototypes to get a HW feasible design working.  This is the first unit for SW to start coding on.  The second unit is for my HW debugging of base driver code.

The next step is to debug the proto to find any "glitches" DC, AC or transient.   If needed I reroute signals for better performance (and sometimes simpler routing) then commit to my PCB layout.

Hopefully, no further "glitches" are found after this stage.  However, the EMC "glitches" are hard to detect without having a Production-intent layout.

If needed, a second round of PCB layout is needed fix ALL "glitches".  (Murphy's Law comes into play here).

One last suggestion:   Since you plan to use differential inputs, there are good layout and pin selection strategies to minimize cross-coupling to high external electric fields.

Len

Len
"Engineering is an Art. The Art of Compromise."

Hi Len,

Ok thank you very much for the explanation, I will change the pins for these inputs.

How should I configure the pins the "TopDesign" in order to use the AIN_O6M [GND] as the reference to the AIN_O6P [Analog Input]?

Is it enough to connect both of them to a Mux and than to the ADC?

Thanks,

Roy Roif

0 Likes

Roy,

You shouldn't need to change the TopDesign.  The analog pins you have already assigned should suffice.

You need to assign the pins in the DWR\Pins tab.

Len

Len
"Engineering is an Art. The Art of Compromise."