![]() |
Linduino
1.3.0
Linear Technology Arduino-Compatible Demonstration Board
|
LTC2874: Quad IO-Link Master Hot Swap Power Controller and PHY. More...
LTC2874: Quad IO-Link Master Hot Swap Power Controller and PHY.
The LTC2874 provides a rugged, 4-port IO-Link power and communications interface to remote devices connected by cables up to 20m in length. Output supply voltage and inrush current are ramped up in a controlled manner using external N-channel MOSFETs, providing improved robustness compared to fully integrated solutions. Wake-up pulse generation, line noise suppression, connection sensing and automatic restart after fault conditions are supported, along with signaling at rates up to 4.8kb/s, 38.4kb/s, and 230.4kb/s. Configuration and fault reporting are exchanged using a SPI-compatible 4-wire interface that operates at clock rates up to 20MHz. SPI DATA FORMAT (MSB First): Byte #1 Byte #2 C2 C1 C0 A3 A2 A1 A0 X D7 D6 D5 D4 D3 D2 D1 D0 Cx : Command (0-Read Reg, 1-Write (no update), 2-Update all Reg, 3-Write one Reg and Update, 7-Reset) Ax : REG Address (0-Reg0, 1-Reg1, 2-Reg2, ..., E-RegE) Dx : REG Data X : Don't care
http://www.linear.com/product/LTC2874
http://www.linear.com/product/LTC2874#demoboards
Copyright 2018(c) Analog Devices, Inc.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
IO-Link is a registered trademark of PROFIBUS User Organization (PNO).
Definition in file LTC2874.h.
Go to the source code of this file.
Functions | |
void | LTC2874_cq_output (uint8_t port, uint8_t value) |
Enables or Disables CQ output for specified port, then Updates. More... | |
void | LTC2874_lplus_output (uint8_t port, uint8_t value) |
Enables or Disables L+ output for specified port, then Updates. More... | |
void | LTC2874_sio_mode (uint8_t port) |
Sets SIO_MODE bit (and also Clears SLEW bit) for specified port, then Updates. More... | |
void | LTC2874_24v_mode (uint8_t value) |
Changes value of the 24VMODE bit, then Updates. More... | |
void | LTC2874_write_NSF_value (uint8_t port, uint8_t value) |
Changes NSF (Noise Suppression Filter) setting for specified port without Updating. More... | |
void | LTC2874_write_ILLM_value (uint8_t port, uint8_t value) |
Changes ILLM (Sinking current) setting for specified port without Updating. More... | |
void | LTC2874_write_LPTC_value (uint8_t value) |
Change L+ Overcurrent Timer Control (LPTC) setting without Updating. More... | |
void | LTC2874_write_RETRYTC_value (uint8_t value) |
Changes Auto-Retry Timer Control (RETRYTC) setting without Updating. More... | |
void | LTC2874_write_2XPTC_value (uint8_t value) |
Changes 2X Current Pulse Timer Control (2XPTC) setting without Updating. More... | |
void | LTC2874_write_OV_TH_value (uint8_t value) |
Changes VDD Overvoltage Threshold (OV_TH) setting without Updating. More... | |
void | LTC2874_wakeup_request (uint8_t port) |
Sends WURQ (Wake-up Request) on specified port. More... | |
void | LTC2874_update_all (void) |
Updates all registers. More... | |
void | LTC2874_write_register_update_all (uint8_t LTC2874_register, uint8_t value) |
Writes byte of data to a register, then Updates. More... | |
void | LTC2874_write_bit_value_update_all (uint8_t LTC2874_register, uint8_t LTC2874_bit, uint8_t value) |
Changes value of a register bit, then Updates. More... | |
void | LTC2874_write_bit_set_update_all (uint8_t LTC2874_register, uint8_t LTC2874_bit) |
Sets a register bit, then Updates. More... | |
void | LTC2874_write_bit_clr_update_all (uint8_t LTC2874_register, uint8_t LTC2874_bit) |
Clears a register bit, then Updates. More... | |
void | LTC2874_reset (void) |
Resets LTC2874, returning default values to registers. More... | |
uint8_t | LTC2874_read_reg (uint8_t LTC2874_register) |
Reads data byte from specified register. More... | |
uint8_t | LTC2874_read_bit (uint8_t LTC2874_register, uint8_t LTC2874_bit) |
Reads a data BIT from specified register. More... | |
void | LTC2874_write_register (uint8_t LTC2874_register, uint8_t value) |
Writes byte of data to a register without Updating. More... | |
void | LTC2874_write_bit_set (uint8_t LTC2874_register, uint8_t LTC2874_bit) |
Sets a register bit without Updating. More... | |
void | LTC2874_write_bit_clr (uint8_t LTC2874_register, uint8_t LTC2874_bit) |
Clears a register bit without Updating. More... | |
void | LTC2874_write_bit_value (uint8_t LTC2874_register, uint8_t LTC2874_bit, uint8_t value) |
Changes value of a register bit without Updating. More... | |
Macros | |||||||||||||||||||||||||||||||||
#define | LTC2874_CS QUIKEVAL_CS | ||||||||||||||||||||||||||||||||
Command Codes | |||||||||||||||||||||||||||||||||
OR'd together with the register address to form the command byte
| |||||||||||||||||||||||||||||||||
#define | LTC2874_READ 0x00 | ||||||||||||||||||||||||||||||||
#define | LTC2874_WRITE_NO_UPDATE 0x20 | ||||||||||||||||||||||||||||||||
#define | LTC2874_UPDATE_ALL 0x40 | ||||||||||||||||||||||||||||||||
#define | LTC2874_WRITE_UPDATE_ALL 0x60 | ||||||||||||||||||||||||||||||||
#define | LTC2874_RESET 0xE0 | ||||||||||||||||||||||||||||||||
Register Addresses | |||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||
#define | LTC2874_IRQREG_REG0 0x00 | ||||||||||||||||||||||||||||||||
#define | LTC2874_IRQMASK_REG1 0x01 | ||||||||||||||||||||||||||||||||
#define | LTC2874_EVENT1_REG2 0x02 | ||||||||||||||||||||||||||||||||
#define | LTC2874_EVENT2_REG3 0x03 | ||||||||||||||||||||||||||||||||
#define | LTC2874_EVENT3_REG4 0x04 | ||||||||||||||||||||||||||||||||
#define | LTC2874_EVENT4_REG5 0x05 | ||||||||||||||||||||||||||||||||
#define | LTC2874_STATUS1_REG6 0x06 | ||||||||||||||||||||||||||||||||
#define | LTC2874_STATUS2_REG7 0x07 | ||||||||||||||||||||||||||||||||
#define | LTC2874_MODE1_REG8 0x08 | ||||||||||||||||||||||||||||||||
#define | LTC2874_MODE2_REG9 0x09 | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF_REGA 0x0A | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM_REGB 0x0B | ||||||||||||||||||||||||||||||||
#define | LTC2874_TMRCTRL_REGC 0x0C | ||||||||||||||||||||||||||||||||
#define | LTC2874_CTRL1_REGD 0x0D | ||||||||||||||||||||||||||||||||
#define | LTC2874_CTRL2_REGE 0x0E | ||||||||||||||||||||||||||||||||
Register Bit and Mask Definitions | |||||||||||||||||||||||||||||||||
#define | LTC2874_OT (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_SUPPLY (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WU (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_LP (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRCHNG (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_CQ (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CSENSE (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OT_MASK (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_SUPPLY_MASK (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WU_MASK (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_LP_MASK (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRCHNG_MASK (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_CQ_MASK (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CSENSE_MASK (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OT_SD (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OT_WARN (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_UVLO_VL (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_UVLO_VDD (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_UV_VDD (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OV_VDD (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WU4 (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WU3 (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WU2 (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WU1 (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_LP4 (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_LP3 (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_LP2 (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_LP1 0x1 | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRCHNG4 (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRCHNG3 (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRCHNG2 (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRCHNG1 (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_CQ4 (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_CQ3 (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_CQ2 (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_TOC_CQ1 0x1 | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ_SNS4 (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ_SNS3 (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ_SNS2 (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ_SNS1 (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CSENSE4 (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CSENSE3 (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CSENSE2 (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CSENSE1 0x1 | ||||||||||||||||||||||||||||||||
#define | LTC2874_OT_STAT (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WU_COOL_STAT (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_UVLO_VDD_STAT (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OV_VDD_STAT (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OC_LP4_STAT (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OC_LP3_STAT (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OC_LP2_STAT (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OC_LP1_STAT 0x1 | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRGD4 (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRGD3 (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRGD2 (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_PWRGD1 (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OC_CQ4 (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OC_CQ3 (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OC_CQ2 (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OC_OQ1 0x1 | ||||||||||||||||||||||||||||||||
#define | LTC2874_24VMODE (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CSENSE_MODE (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_2XPTC_pos 4 | ||||||||||||||||||||||||||||||||
#define | LTC2874_2XPTC_msk (0x3<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_2XPTC(value) (LTC2874_2XPTC_msk & ((value) << LTC2874_2XPTC_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_FLDBK_MODE (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_RETRY_OV (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_RETRY_LP (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_RETRY_CQ 0x1 | ||||||||||||||||||||||||||||||||
#define | LTC2874_SLEW4 (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_SLEW3 (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_SLEW2 (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_SLEW1 (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OV_TH_pos 2 | ||||||||||||||||||||||||||||||||
#define | LTC2874_OV_TH_msk (0x3<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OV_TH(value) (LTC2874_OV_TH_msk & ((value) << LTC2874_OV_TH_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_OV_ALLOW (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ_SNS_MODE 0x1 | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF4_pos 6 | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF4_msk (0x3<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF4(value) (LTC2874_NSF4_msk & ((value) << LTC2874_NSF4_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF3_pos 4 | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF3_msk (0x3<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF3(value) LTC2874_NSF3_msk & ((value) << LTC2874_NSF3_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF2_pos 2 | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF2_msk (0x3<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF2(value) (LTC2874_NSF2_msk & ((value) << LTC2874_NSF2_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF1_pos 0 | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF1_msk 0x3 | ||||||||||||||||||||||||||||||||
#define | LTC2874_NSF1(value) (LTC2874_NSF1_msk & ((value) << LTC2874_NSF1_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM4_pos 6 | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM4_msk (0x3<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM4(value) (LTC2874_ILLM4_msk & ((value) << LTC2874_ILLM4_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM3_pos 4 | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM3_msk (0x3<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM3(value) (LTC2874_ILLM3_msk & ((value) << LTC2874_ILLM3_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM2_pos 2 | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM2_msk (0x3<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM2(value) (LTC2874_ILLM2_msk & ((value) << LTC2874_ILLM2_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM1_pos 0 | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM1_msk 0x3 | ||||||||||||||||||||||||||||||||
#define | LTC2874_ILLM1(value) (LTC2874_ILLM1_msk & ((value) << LTC2874_ILLM1_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_LPTC_pos 4 | ||||||||||||||||||||||||||||||||
#define | LTC2874_LPTC_msk (0xF<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_LPTC(value) (LTC2874_LPTC_msk & ((value) << LTC2874_LPTC_pos)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_RETRYTC_pos 0 | ||||||||||||||||||||||||||||||||
#define | LTC2874_RETRYTC_msk 0x07 | ||||||||||||||||||||||||||||||||
#define | LTC2874_RETRYTC(value) (LTC2874_RETRYTC_msk & (value)) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WKUP4 (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WKUP3 (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WKUP2 (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_WKUP1 (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_DRVEN4 (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_DRVEN3 (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_DRVEN2 (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_DRVEN1 0x1 | ||||||||||||||||||||||||||||||||
#define | LTC2874_ENLP4 (0x1<<7) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ENLP3 (0x1<<6) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ENLP2 (0x1<<5) | ||||||||||||||||||||||||||||||||
#define | LTC2874_ENLP1 (0x1<<4) | ||||||||||||||||||||||||||||||||
#define | LTC2874_SIO_MODE4 (0x1<<3) | ||||||||||||||||||||||||||||||||
#define | LTC2874_SIO_MODE3 (0x1<<2) | ||||||||||||||||||||||||||||||||
#define | LTC2874_SIO_MODE2 (0x1<<1) | ||||||||||||||||||||||||||||||||
#define | LTC2874_SIO_MODE1 0x1 | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ1 0x01 | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ2 0x02 | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ3 0x04 | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ4 0x08 | ||||||||||||||||||||||||||||||||
#define | LTC2874_CQ_ALL 0x0F | ||||||||||||||||||||||||||||||||
#define | LTC2874_LP1 0x10 | ||||||||||||||||||||||||||||||||
#define | LTC2874_LP2 0x20 | ||||||||||||||||||||||||||||||||
#define | LTC2874_LP3 0x40 | ||||||||||||||||||||||||||||||||
#define | LTC2874_LP4 0x80 | ||||||||||||||||||||||||||||||||
#define | LTC2874_LP_ALL 0xF0 | ||||||||||||||||||||||||||||||||
void LTC2874_24v_mode | ( | uint8_t | value | ) |
Changes value of the 24VMODE bit, then Updates.
value | 24VMODE setting (0 or 1) |
Definition at line 218 of file LTC2874.cpp.
void LTC2874_cq_output | ( | uint8_t | port, |
uint8_t | value | ||
) |
Enables or Disables CQ output for specified port, then Updates.
port | Port number (1-4 or 5=ALL) |
value | Enable (=1) or Disable (=0) |
Definition at line 88 of file LTC2874.cpp.
void LTC2874_lplus_output | ( | uint8_t | port, |
uint8_t | value | ||
) |
Enables or Disables L+ output for specified port, then Updates.
port | Port number (1-4 or 5=ALL) |
value | Enable (=1) or Disable (=0) |
Definition at line 131 of file LTC2874.cpp.
uint8_t LTC2874_read_bit | ( | uint8_t | LTC2874_register, |
uint8_t | LTC2874_bit | ||
) |
Reads a data BIT from specified register.
LTC2874_register | Register address (0x0-0xE) |
LTC2874_bit | Mask of bit to be read (e.g. 0x40) |
Definition at line 618 of file LTC2874.cpp.
uint8_t LTC2874_read_reg | ( | uint8_t | LTC2874_register | ) |
Reads data byte from specified register.
LTC2874_register | Register address (0x0-0xE) |
Definition at line 598 of file LTC2874.cpp.
void LTC2874_reset | ( | void | ) |
Resets LTC2874, returning default values to registers.
Definition at line 582 of file LTC2874.cpp.
void LTC2874_sio_mode | ( | uint8_t | port | ) |
Sets SIO_MODE bit (and also Clears SLEW bit) for specified port, then Updates.
port | Port number (1-4 or 5=ALL) |
Definition at line 174 of file LTC2874.cpp.
void LTC2874_update_all | ( | void | ) |
void LTC2874_wakeup_request | ( | uint8_t | port | ) |
Sends WURQ (Wake-up Request) on specified port.
port | Port number (1-4) |
Definition at line 433 of file LTC2874.cpp.
void LTC2874_write_2XPTC_value | ( | uint8_t | value | ) |
Changes 2X Current Pulse Timer Control (2XPTC) setting without Updating.
value definitions: 0x0=60ms (default), 0x1=disabled, 0x2=30ms, 0x3=120ms
value | 2XPTC setting (0x0-0x3) |
Definition at line 377 of file LTC2874.cpp.
void LTC2874_write_bit_clr | ( | uint8_t | LTC2874_register, |
uint8_t | LTC2874_bit | ||
) |
Clears a register bit without Updating.
LTC2874_register | Register address (0x0-0xE) |
LTC2874_bit | Mask of bit to be set (e.g. 0x40) |
Definition at line 683 of file LTC2874.cpp.
void LTC2874_write_bit_clr_update_all | ( | uint8_t | LTC2874_register, |
uint8_t | LTC2874_bit | ||
) |
Clears a register bit, then Updates.
LTC2874_register | Register address (0x0-0xE) |
LTC2874_bit | Mask of bit to be cleared (e.g. 0x40) |
Definition at line 556 of file LTC2874.cpp.
void LTC2874_write_bit_set | ( | uint8_t | LTC2874_register, |
uint8_t | LTC2874_bit | ||
) |
Sets a register bit without Updating.
LTC2874_register | Register address (0x0-0xE) |
LTC2874_bit | Mask of bit to be set (e.g. 0x40) |
Definition at line 658 of file LTC2874.cpp.
void LTC2874_write_bit_set_update_all | ( | uint8_t | LTC2874_register, |
uint8_t | LTC2874_bit | ||
) |
Sets a register bit, then Updates.
LTC2874_register | Register address (0x0-0xE) |
LTC2874_bit | Mask of bit to be set (e.g. 0x40) |
Definition at line 530 of file LTC2874.cpp.
void LTC2874_write_bit_value | ( | uint8_t | LTC2874_register, |
uint8_t | LTC2874_bit, | ||
uint8_t | value | ||
) |
Changes value of a register bit without Updating.
LTC2874_register | Register address (0x0-0xE) |
LTC2874_bit | Mask of bit to be written (e.g. 0x40) |
value | Bit value to be written (0 or 1) |
Definition at line 711 of file LTC2874.cpp.
void LTC2874_write_bit_value_update_all | ( | uint8_t | LTC2874_register, |
uint8_t | LTC2874_bit, | ||
uint8_t | value | ||
) |
Changes value of a register bit, then Updates.
LTC2874_register | Register address (0x0-0xE) |
LTC2874_bit | Mask of bit to be written (e.g. 0x40) |
value | Bit value to be written (0 or 1) |
Definition at line 497 of file LTC2874.cpp.
void LTC2874_write_ILLM_value | ( | uint8_t | port, |
uint8_t | value | ||
) |
Changes ILLM (Sinking current) setting for specified port without Updating.
value definitions: 0x0=500kohm, 0x1=2.5mA, 0x2=3.7mA, 0x3=6.2mA (default)
port | Port number (1-4 or 5=ALL) |
value | ILLM setting (0x0-0x3) |
Definition at line 283 of file LTC2874.cpp.
void LTC2874_write_LPTC_value | ( | uint8_t | value | ) |
Change L+ Overcurrent Timer Control (LPTC) setting without Updating.
value definitions: 0x0=17us, 0x1=30us, 0x2=60us, 0x3=120us, 0x4=0.25ms, 0x5=0.5ms, 0x6=1ms, 0x7=2ms, 0x8=3.9ms, 0x9=7.8ms, 0xA=16ms, 0xB=30ms, 0xC=0.60ms, 0xD=0.13s, 0xE=0.25s, 0xF=0.25s
value | LPTC setting (0x0-0xF) |
Definition at line 321 of file LTC2874.cpp.
void LTC2874_write_NSF_value | ( | uint8_t | port, |
uint8_t | value | ||
) |
Changes NSF (Noise Suppression Filter) setting for specified port without Updating.
value definitions: 0x0=disabled, 0x1=20.3us, 0x2=2.8us, 0x3=0.6us (default)
port | Port number (1-4) |
value | NSF setting (0x0-0x3) |
Definition at line 253 of file LTC2874.cpp.
void LTC2874_write_OV_TH_value | ( | uint8_t | value | ) |
Changes VDD Overvoltage Threshold (OV_TH) setting without Updating.
value definitions: 0x0=18V, 0x1=32V (default), 0x2=34V, 0x3=36V
value | OV_TH setting (0x0-0x3) |
Definition at line 405 of file LTC2874.cpp.
void LTC2874_write_register | ( | uint8_t | LTC2874_register, |
uint8_t | value | ||
) |
Writes byte of data to a register without Updating.
LTC2874_register | Register address (0x0-0xE) |
value | Data to be written into register |
Definition at line 641 of file LTC2874.cpp.
void LTC2874_write_register_update_all | ( | uint8_t | LTC2874_register, |
uint8_t | value | ||
) |
Writes byte of data to a register, then Updates.
LTC2874_register | Register address (0x0-0xE) |
value | Data to be written into register |
Definition at line 478 of file LTC2874.cpp.
void LTC2874_write_RETRYTC_value | ( | uint8_t | value | ) |
Changes Auto-Retry Timer Control (RETRYTC) setting without Updating.
value definitions: 0x0=0.12s, 0x1=0.24s, 0x2=0.49s, 0x3=0.98s, 0x4=2.0s, 0x5=3.9s, 0x6=7.9s, 0x7=15.7s
value | RETRYTC setting (0x0-0x7) |
Definition at line 349 of file LTC2874.cpp.
#define LTC2874_2XPTC | ( | value | ) | (LTC2874_2XPTC_msk & ((value) << LTC2874_2XPTC_pos)) |
#define LTC2874_CS QUIKEVAL_CS |
#define LTC2874_ILLM1 | ( | value | ) | (LTC2874_ILLM1_msk & ((value) << LTC2874_ILLM1_pos)) |
#define LTC2874_ILLM2 | ( | value | ) | (LTC2874_ILLM2_msk & ((value) << LTC2874_ILLM2_pos)) |
#define LTC2874_ILLM3 | ( | value | ) | (LTC2874_ILLM3_msk & ((value) << LTC2874_ILLM3_pos)) |
#define LTC2874_ILLM4 | ( | value | ) | (LTC2874_ILLM4_msk & ((value) << LTC2874_ILLM4_pos)) |
#define LTC2874_LPTC | ( | value | ) | (LTC2874_LPTC_msk & ((value) << LTC2874_LPTC_pos)) |
#define LTC2874_NSF1 | ( | value | ) | (LTC2874_NSF1_msk & ((value) << LTC2874_NSF1_pos)) |
#define LTC2874_NSF2 | ( | value | ) | (LTC2874_NSF2_msk & ((value) << LTC2874_NSF2_pos)) |
#define LTC2874_NSF3 | ( | value | ) | LTC2874_NSF3_msk & ((value) << LTC2874_NSF3_pos)) |
#define LTC2874_NSF4 | ( | value | ) | (LTC2874_NSF4_msk & ((value) << LTC2874_NSF4_pos)) |
#define LTC2874_OV_TH | ( | value | ) | (LTC2874_OV_TH_msk & ((value) << LTC2874_OV_TH_pos)) |
#define LTC2874_RETRYTC | ( | value | ) | (LTC2874_RETRYTC_msk & (value)) |