Reference Multiplexer Datasheet
RefMux V 1.3
001-13584Multiplexer
Reference Rev. *H
Copyright © 2003-2012 Cypress Semiconductor Corporation. All Rights Reserved.
PSoC
®
Blocks
Resources
Digital
Analog CT
Analog SC
API Memory (Bytes)
Flash
RAM
Pins
CY8C29/27/24/22xxx, CY8C23x33, CY8CLED02/04/08/16, CY8CLED0xD, CY8CLED0xG, CY8CTST120,
CY8CTMG120, CY8CTMA120, CY8CTST300, CY8CTMA300, CY8C28x45, CY8CPLC20, CY8CLED16P01,
CY8C28x43
1
32
0
1 if Analog
Output Buffer
is Enabled
For one or more fully configured, functional example projects that use this user module go to
www.cypress.com/psocexampleprojects.
Features and Overview
Low voltage offset path from PMux to analog output bus
Provides a method to route internal references (AGND, REFHI, REFLO) to an external pin
Provides a 4 to 1 analog mux for switch capacitor blocks such as ADCs and filters, if used with the
AMux4 User Module
Signals from PMux through test mux may be rail-to-rail
Provides a method to route external analog inputs directly to the analog output bus
The RefMux User Module switches one of three internal references (AGND, REFLO, or REFHI) to the
analog output bus. Additionally, the output of the Continuous Time (CT) block PMux multiplexer can be
selected. The RefMux User Module makes use of the TestMux in a CT block. These signals may be routed
to a switch capacitor block on the bottom analog row or buffered and routed to an external pin. If used in
conjunction with the AMux4 User Module, they form a four input analog multiplexer to route signals from
one of four pins to the analog output bus.
Cypress Semiconductor Corporation
Document Number: 001-13584 Rev. *H
•
198 Champion Court
•
San Jose
,
CA 95134-1709
•
408-943-2600
Revised September 27, 2012
Reference Multiplexer
Figure 1.
RefMux Block Diagram
Functional Description
The RefMux User Module uses and provides an API to control the Test Mux (TMux) in a CT block. The
TMux provides a path to route AGND, REFLO, REFHI, or the PMux output onto the analog output bus
(ABUSx). The PMux is set by default to route the signal from the AInMux_x to its output. These signals
can be connected to the input of the switch capacitor blocks on the bottom row, or output to an external pin
by way of the analog output buffer. This user module consumes one CT block, even though it does not
utilize the functionality of the CT circuitry (see the figure below). Power only has to be applied to the
RefMux User Module if the AGND signal is selected.
Document Number: 001-13584 Rev. *H
Page 2 of 9
Reference Multiplexer
Figure 2.
RefMux Functional Diagram
DC and AC Electrical Characteristics
See DC Analog Reference Specifications in the PSoC device family datasheets.
Document Number: 001-13584 Rev. *H
Page 3 of 9
Reference Multiplexer
Placement
The RefMux User Module maps freely onto any of the continuous time PSoC blocks in the device. Only
the bottom row of analog switch capacitor blocks, except for ASA21 in the CY8C26/25xxx devices, allow
connection to the ABUS in that column.
Figure 3.
RefMux Placement
Parameters and Resources
Reference Select
This parameter selects which reference will be connected to the analog output bus. The valid options
are OFF, PMuxOut, AGND, REFLO, and REFHI. The power to this module need only be applied if
the analog ground AGND option is selected.
AnalogBus
The RefMux block output is always the AnalogBus (ABUSx) for that column. The ABUSx buffer
(buf0..3) may be enabled in the Device Editor, to route the output to an external pin.
Application Programming Interface
The Application Programming Interface (API) routines are provided as part of the user module to allow the
designer to deal with the module at a higher level. This section specifies the interface to each function
together with related constants provided by the “include” files.
Note
In this, as in all user module APIs, the values of the A and X register may be altered by calling an API
function. It is the responsibility of the calling function to preserve the values of A and X prior to the call if
those values are required after the call. This “registers are volatile” policy was selected for efficiency
reasons and has been in force since version 1.0 of PSoC Designer. The C compiler automatically takes
care of this requirement. Assembly language programmers must ensure their code observes the policy,
too. Though some user module API function may leave A and X unchanged, there is no guarantee they
will do so in the future.
Document Number: 001-13584 Rev. *H
Page 4 of 9
Reference Multiplexer
For Large Memory Model devices, it is also the caller's responsibility to preserve any value in the
CUR_PP, IDX_PP, MVR_PP, and MVW_PP registers. Even though some of these registers may not be
modified now, there is no guarantee that will remain the case in future releases.
The following are the API programming routines provided for the RefMux User Module.
RefMux_RefSelect
Description:
Switches selected signal or reference to the Analog Bus (ABUSx).
C Prototype:
void
RefMux_RefSelect(BYTE bRef);
Assembly:
mov
A, RefMux_AGND
lcall RefMux_RefSelect
Parameters:
bRef: This input selects which signal will be connected to the analog output bus. Symbolic names
provided in C and assembly, and their associated values, are given in the following table.
Symbolic Name
RefMux_MUXOFF
RefMux_PMUXOUT
RefMux_AGND
RefMux_REFLO
RefMux_REFHI
Return Value:
0x00
0x10
0x14
0x18
0x1C
Value
None
Side Effects:
The A and X registers may be altered by this function.
RefMux_Start
Description:
Sets the power level for the continuous time PSoC block. Power only needs to be supplied when
AGND is selected. Selecting REFHI, REFLO, or PMUXOUT does not require power to be supplied.
C Prototype:
void
RefMux_Start(BYTE bPower);
Assembly:
mov
A, RefMux_LOWPOWER
lcall RefMux_Start
Document Number: 001-13584 Rev. *H
Page 5 of 9