Développez le tableau 8 Click
Développez le tableau 8 Click
Key Features
- Extenseur d'E/S 10 ports, protection contre les surtensions, prise en charge de l'insertion à chaud, interface série compatible SPI, QSPI™, MICROWIRE™, faible consommation d'énergie, et plus encore.
- Basé sur le MAX7317 - Extenseur d'E/S à interface SPI 10 ports avec protection contre les surtensions et l'insertion à chaud de Maxim Integrated
- Destiné à être utilisé comme extenseur de port dans les applications de surveillance de système, les contrôleurs industriels, les équipements portables et bien d'autres
- mikroBUS : interface SPI
Overview
Le Expand 8 Click Board™ est une carte complémentaire compacte qui contient un extenseur d'E/S multiport avec entrées/sorties bidirectionnelles. Cette carte est équipée de l'extenseur d'E/S MAX7317 à 10 ports avec interface SPI et protection contre les surtensions et l'insertion à chaud de Maxim Integrated. Le MAX7317 fournit aux microprocesseurs 10 ports d'E/S évalués à 7 V. Chaque port peut être configuré individuellement comme une sortie à drain ouvert ou une entrée Schmitt protégée contre les surtensions qui prend en charge l'insertion à chaud. Toutes les broches de port restent à haute impédance en mode hors tension avec jusqu'à 8 V appliqués sur elles. Cette Click Board™ est destinée à être utilisée comme extenseur de port dans les applications de surveillance de système, les contrôleurs industriels, les équipements portables et bien d'autres.
Développer 8 Cliquez est pris en charge par une bibliothèque compatible mikroSDK, qui comprend des fonctions qui simplifient le développement logiciel. Cette Click Board™ est un produit entièrement testé, prêt à être utilisé sur un système équipé du socket mikroBUS™.
How Does the Expand 8 Click Board™ work?
The Expand 8 Click Board™ as its foundation uses the MAX7317, a general-purpose input/output (GPIO) peripheral from Maxim Integrated that provides 10 I/O ports, P0 to P9, controlled through a high-speed SPI-compatible serial interface. Each port, P0 to P9 can be configured as open-drain, current-sink outputs rated at 20mA maximum, or as CMOS inputs, or as open-drain outputs. Loads should be connected to a supply voltage no higher than 7V.
The MAX7317 contains ten 8-bit internal registers. These ten registers are addressed as 0x00 - 0x09 control an I/O port each. Write 0x00 to the output register to set the port as a logic-low output, or 0x01 to set the port as a logic-high output or logic input.
Expand 8 Click communicates with MCU through a 16-bit 4-wire serial interface compatible with standard SPI, QSPI™, MICROWIRE™ guaranteed to operate at 35Mbps on its 3.3V power supply. During the Power-Up sequence, all control registers of the MAX7317 are in a reset state. Power-Up status sets I/O ports, P0 to P9, into a high impedance state and puts the device into Shutdown mode. The I/O ports P0–P9 remains high impedance with up to 8V asserted on them when the MAX7317 is powered down. Therefore, it can be used in hot-swap applications.
This Click board™ can be operated only with a 3.3V logic voltage level. The board must perform appropriate logic voltage level conversion before use with MCUs with different logic levels. However, the Click board™ comes equipped with a library containing functions and an example code that can be used, as a reference, for further development.
SPECIFICATIONS
Type | Port expander |
Applications | Intended for use as a port expander in system monitoring applications, industrial controllers, portable equipment, and many more. |
On-board modules | MAX7317 - 10-Port SPI-interfaced I/O expander with overvoltage and hot-insertion protection from Maxim Integrated |
Key Features | 10-Port I/O expander, overvoltage protection, support hot-insertion, SPI, QSPI™, MICROWIRE™ compatible serial interface, low power consumption, and more. |
Interface | SPI |
Compatibility | mikroBUS |
Click board size | M (42.9 x 25.4 mm) |
Input Voltage | 3.3V |
PINOUT DIAGRAM
This table shows how the pinout on Expand 8 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
NC | 1 | AN | PWM | 16 | NC | ||
NC | 2 | RST | INT | 15 | NC | ||
SPI Chip Select | CS | 3 | CS | RX | 14 | NC | |
SPI Clock | SCK | 4 | SCK | TX | 13 | NC | |
SPI Data OUT | SDO | 5 | MISO | SCL | 12 | NC | |
SPI Data IN | SDI | 6 | MOSI | SDA | 11 | NC | |
Power Supply | 3.3V | 7 | 3.3V | 5V | 10 | NC | |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
ONBOARD SETTINGS AND INDICATORS
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | - | Power LED Indicator |
J1-J2 | P0-P9 | Populated | I/O Expander Port |
EXPAND 8 CLICK ELECTRICAL SPECIFICATIONS
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | - | 3.3 | - | V |
Output Load Voltage P0 - P9 | - | - | 7 | V |
Maximum Output Current | - | - | 20 | mA |
Operating Temperature Range | -40 | +25 | +125 | °C |
Software Support
We provide a library for the Expand 8 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library covers all the necessary functions to control Expand 8 click board. The library performs a standard SPI interface communication.
Key Functions
void expand8_write_data ( uint8_t addr, uint8_t tx_data )
- Generic write data function.uint8_t expand8_read_data ( uint8_t addr )
- Generic read data function.EXPAND8_RETVAL_T expand8_set_port ( uint8_t sel_port, uint8_t sel_imped )
- Set port function.
Example Description
The application is composed of three sections :
- System Initialization - Initializes SPI, set the CS pin as outputs and begins to write log.
- Application Initialization - Initialization driver enables - SPI, also write log.
- Application Task - (code snippet) This is an example that demonstrates the use of the Expand 8 click board. Expand 8 clicks by toggling each of 10 available ports every 1 second. Results are being sent to the Usart Terminal where you can track their changes.
void application_task ( ) { expand8_set_port( select_port, EXPAND8_SET_LOW_IMPEDANCE ); mikrobus_logWrite( " Port P", _LOG_TEXT ); ByteToStr( select_port, demo_text ); Ltrim( demo_text ); mikrobus_logWrite( demo_text, _LOG_TEXT ); mikrobus_logWrite( " ON", _LOG_LINE ); mikrobus_logWrite( "- - - - - - - - - - -", _LOG_LINE ); Delay_ms( 1000 ); expand8_set_port( select_port, EXPAND8_SET_HIGH_IMPEDANCE ); mikrobus_logWrite( " Port P", _LOG_TEXT ); ByteToStr( select_port, demo_text ); Ltrim( demo_text ); mikrobus_logWrite( demo_text, _LOG_TEXT ); mikrobus_logWrite( " OFF", _LOG_LINE ); mikrobus_logWrite( "---------------------", _LOG_LINE ); Delay_ms( 1000 ); select_port++; if ( select_port > EXPAND8_ADDR_OUT_LVL_PORT_P9 ) { select_port = EXPAND8_ADDR_OUT_LVL_PORT_P0; } }
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
- SPI
- UART
- Conversions
Additional Notes and Information
Depending on the development board you are using, you may need a 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. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
MIKROSDK
This Click board™ is supported with mikroSDK - MikroElektronika 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.
Software Support
We provide a library for the Expand 8 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
The library covers all the necessary functions to control Expand 8 click board. The library performs a standard SPI interface communication.
Key Functions
void expand8_write_data ( uint8_t addr, uint8_t tx_data )
- Generic write data function.uint8_t expand8_read_data ( uint8_t addr )
- Generic read data function.EXPAND8_RETVAL_T expand8_set_port ( uint8_t sel_port, uint8_t sel_imped )
- Set port function.
Example Description
The application is composed of three sections :
- System Initialization - Initializes SPI, set the CS pin as outputs and begins to write log.
- Application Initialization - Initialization driver enables - SPI, also write log.
- Application Task - (code snippet) This is an example that demonstrates the use of the Expand 8 click board. Expand 8 clicks by toggling each of 10 available ports every 1 second. Results are being sent to the Usart Terminal where you can track their changes.
void application_task ( ) { expand8_set_port( select_port, EXPAND8_SET_LOW_IMPEDANCE ); mikrobus_logWrite( " Port P", _LOG_TEXT ); ByteToStr( select_port, demo_text ); Ltrim( demo_text ); mikrobus_logWrite( demo_text, _LOG_TEXT ); mikrobus_logWrite( " ON", _LOG_LINE ); mikrobus_logWrite( "- - - - - - - - - - -", _LOG_LINE ); Delay_ms( 1000 ); expand8_set_port( select_port, EXPAND8_SET_HIGH_IMPEDANCE ); mikrobus_logWrite( " Port P", _LOG_TEXT ); ByteToStr( select_port, demo_text ); Ltrim( demo_text ); mikrobus_logWrite( demo_text, _LOG_TEXT ); mikrobus_logWrite( " OFF", _LOG_LINE ); mikrobus_logWrite( "---------------------", _LOG_LINE ); Delay_ms( 1000 ); select_port++; if ( select_port > EXPAND8_ADDR_OUT_LVL_PORT_P9 ) { select_port = EXPAND8_ADDR_OUT_LVL_PORT_P0; } }
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
- SPI
- UART
- Conversions
Additional Notes and Information
Depending on the development board you are using, you may need a 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. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.
MIKROSDK
This Click board™ is supported with mikroSDK - MikroElektronika 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.
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.