Detail about analogue switching

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

cross mob
RiAs_1660756
Level 4
Level 4
25 sign-ins 25 replies posted 10 replies posted

I need to get out of a problem in a hurry.  I need to route an analogue signal out to another pin. 

I am using a CY8C5888AXI-LP096.  P4[0..5] route to a mux that feeds the DS ADC.  The mux is in a sequencer that samples each of the six channels sequentially.  I want to route one of these signals out to another pin. 

I have reserved the six lines using Mux Constraints which leaves the global bus available.  I close the switches on the route to my pin by writing to the various registers.

It sort-of works but only when the ADC mux channel is closed.  It is as if the pin is disconnected from both buses.

My question: why does opening the analogue mux bus open the analogue global? 

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

Hello, Len,

Following on my previous reply, I have managed to DMA to the registers without opening the other switches.

I have attached a breadboard project that uses the CY8CKIT-059.  I can't help feeling that there must be a ready-made component to do the same thing.

- Richard.

View solution in original post

0 Likes
3 Replies
Len_CONSULTRON
Level 9
Level 9
Beta tester 500 solutions authored 1000 replies posted

RiAs,

Is this the configuration you are trying to achieve?

Len_CONSULTRON_0-1623161701372.png

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

Hello, Len,

Yes. Precisely what I need to do.

I've been kind-of inspired by your own little low-pass filter component.  I made a 'switch' component and was delighted to see it reflected in the analogue mimic diagram during debugging.  I worked out a route through the analogue routing and placed reserves to stop the compiler from using it.  I then dropped my own 'switches' into the schematic and closed them at boot-up.

RiAs_1660756_0-1623216387667.png

But it doesn't work in practice. It is as if the pin itself is disconnected, not the mux switch.  So, I only see my signal at the pin 1/6th of the time.  However, this isn't how it is depicted in the Architecture TRM.  i.e., Figure 29-5. GPIO Pin Input/Output Block Diagram on page 310.

RiAs_1660756_1-1623216675221.png

I cannot see why both cannot be closed at the same time.  So maybe the internal implementation of the mux opens both the switches when it deselects the channel?

My analogue inputs are all on port 4 and the mux shares the single register address.  Could I instead use DMA to write to that register?

- Richard.

 

 

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

Hello, Len,

Following on my previous reply, I have managed to DMA to the registers without opening the other switches.

I have attached a breadboard project that uses the CY8CKIT-059.  I can't help feeling that there must be a ready-made component to do the same thing.

- Richard.

0 Likes