How does it work?
MUX 9 Click is based on the ADG1438, a serially controlled, 8-channel analog multiplexer from Analog Devices. Each switch is software-controlled (by a bit of the appropriate register) and conducts equally well in both directions, making it ideal for standard multiplexing and demultiplexing. Because each switch is independently controlled by an individual bit, this provides the option of having any, all, or none of the switches on (logic 1 in a particular bit position turns the switch ON, whereas Logic 0 turns the switch OFF). This feature may be handy in the demultiplexing application, where the user may wish to direct one signal from the drain terminal, marked as D, to several outputs (sources).
This Click board™ communicates with the MCU through a standard SPI interface (compatible with SPI, QSPI™, MICROWIRE™, and DSP interface standards) supporting the most common SPI mode, SPI Mode 1, with a maximum frequency of 50MHz. During the Power-Up sequence, the internal shift register contains all zeros, and all switches are in the OFF state and remain so until a valid write takes place. This state can also be achieved with the help of an active-low reset pin, controlled via the RST pin of the mikroBUS™ socket. By setting this pin to a low logic level, all switches are off, and the appropriate registers are cleared to 0.
As for the input signal range, it extends over the power supply rails’ capacity. The ADG1438 is specified for a wide supply range ±15V/+12V/±5V, where all channels exhibit break-before-make switching action, preventing momentary shorting when switching channels. Also, these switches’ ultra-low on-resistance and on-resistance flatness make them ideal solutions for data acquisition and gain switching applications where low distortion is critical.
This Click board™ can operate with both 3.3V and 5V logic voltage levels selected via the VCC SEL jumper. Therefore, both 3.3V and 5V capable MCUs can use the communication lines properly. However, the Click board™ comes equipped with a library containing easy-to-use functions and an example code that can be used, as a reference, for further development.
Specifications
Type
DAC
Applications
Can be used for system diagnostics, data acquisition, signal switching, and more
On-board modules
ADG1438 – 8-channel analog multiplexer from Analog Devices
Key Features
Serially controlled, ultra-low on-resistance and on-resistance flatness, wide operating range, rail-to-rail operation, high-speed interface, suitable for both mux/demux applications, and more
Interface
SPI
Feature
ClickID
Compatibility
mikroBUS™
Click board size
M (42.9 x 25.4 mm)
Input Voltage
3.3V or 5V
Pinout diagram
This table shows how the pinout on MUX 9 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | – | Power LED Indicator |
JP1 | VCC SEL | Left | Logic Level Voltage Selection 3V3/5V: Left position 3V3, Right position 5V |
J1 | – | Populated | MUX Channels |
MUX 9 Click electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | 3.3 | – | 5 | V |
Analog Signal Range | -15 | – | 15 | V |
Software Support
We provide a library for the MUX 9 Click as well as a demo application (example), developed using Mikroe compilers. The demo can run on all the main Mikroe development boards.
Package can be downloaded/installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on Mikroe github account.
Library Description
This library contains API for MUX 9 Click driver.
Key functions
-
mux9_active_channel
MUX 9 active channel function. -
mux9_reset
MUX 9 reset function. -
mux9_disable
MUX 9 disable function.
Example Description
This example demonstrates the use of MUX 9 click board™.
void application_task ( void )
{
for ( uint8_t ch_pos = MUX9_SELECT_CH_1; ch_pos <= MUX9_SELECT_CH_8; ch_pos++ )
{
if ( MUX9_OK == mux9_active_channel( &mux9, ch_pos ) )
{
log_printf( &logger, " The Channel %d is activated. rn", ch_pos );
Delay_ms( 1000 );
}
}
log_printf( &logger, " -----------rn" );
Delay_ms( 1000 );
}
The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on Mikroe github account.
Other Mikroe Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.MUX9
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all Mikroe compilers.
mikroSDK
This Click board™ is supported with mikroSDK – Mikroe Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.