69 #define LTC3880_I2C_ADDRESS 0x30 70 #define LTC2974_I2C_ADDRESS 0x32 71 #define LTC2977_I2C_ADDRESS 0x33 103 uint8_t *addresses = NULL;
105 if (Serial.available())
108 if (user_command !=
'm')
109 Serial.println(user_command);
111 switch (user_command)
175 addresses = smbus->
probe(0);
176 while (*addresses != 0)
178 Serial.print(F(
"ADDR 0x"));
179 Serial.println(*addresses++, HEX);
190 Serial.println(F(
"Incorrect Option"));
204 Serial.print(F(
"\n*****************************************************************\n"));
205 Serial.print(F(
"* DC1962C Ultra Fix Demonstration Program *\n"));
206 Serial.print(F(
"* *\n"));
207 Serial.print(F(
"* This program demonstrates how to brick and unbrick an LTC3880 *\n"));
208 Serial.print(F(
"* using the LTC1962C demo board. *\n"));
209 Serial.print(F(
"* *\n"));
210 Serial.print(F(
"* Set the baud rate to 115200 and select the newline terminator.*\n"));
211 Serial.print(F(
"* *\n"));
212 Serial.print(F(
"*****************************************************************\n"));
219 Serial.print(F(
"\n 1-Brick\n"));
220 Serial.print(F(
" 2-Unbrick\n"));
221 Serial.print(F(
" 3-Detect Bricks\n"));
222 Serial.print(F(
" 4-Store User All\n"));
223 Serial.print(F(
" 5-PEC On\n"));
224 Serial.print(F(
" 6-PEC Off\n"));
225 Serial.print(F(
" 7-Bus Probe\n"));
226 Serial.print(F(
" 8-Reset\n"));
227 Serial.print(F(
"\nEnter a command:"));
234 Serial.println(F(
"\nWarning: Demo board not detected. Linduino will attempt to proceed."));
unsigned char user_command
#define LTC3880_I2C_ADDRESS
static void setup()
Initialize Linduino.
LTC SMBus Support: Implementation for a shared SMBus layer.
void reset(uint8_t address)
Issue reset to one device.
uint8_t * bricks(uint8_t *addresses, uint8_t no_addresses)
Find bricked devices.
Header File for Linduino Libraries and Demo Code.
virtual void sendByte(uint8_t address, uint8_t command)=0
SMBus send byte command.
#define LTC2977_I2C_ADDRESS
void enablePec(uint8_t address)
Enable pec for all transactions.
static uint8_t ltc2977_i2c_address
#define LTC2974_I2C_ADDRESS
void disablePec(uint8_t address)
Disable pec for all transactions.
virtual void writeWord(uint8_t address, uint8_t command, uint16_t data)=0
SMBus write word command.
static void print_warning_prompt()
Prints a warning if the demo board is not detected.
void startGroupProtocol(void)
starts group protocol
LT_I2CBus: Routines to communicate to I2C by Wire Library.
virtual void writeByte(uint8_t address, uint8_t command, uint8_t data)=0
SMBus write byte command.
virtual uint8_t readByte(uint8_t address, uint8_t command)=0
SMBus read byte command.
virtual uint8_t * probe(uint8_t command)=0
SMBus bus probe.
LTC SMBus Support: Implementation for a shared SMBus layer.
static uint8_t ltc3880_i2c_address
static void print_prompt()
Prints main menu.
void executeGroupProtocol(void)
ends group protocol
void restoreFromNvm(uint8_t address)
Restore device from NVM.
static uint8_t ltc_i2c_addresses[3]
static void print_title()
Prints the title block when program first starts.
static void loop()
Initialize Linduino.
static uint8_t ltc2974_i2c_address