46
Aardvark I 2 C/SPI Control Center Summary The Control Center is a graphical application for use with the Aardvark I 2 C/SPI Embedded Systems Interface. It provides access to all I 2 C,I 2 C Bus Monitoring, SPI and GPIO functions of the Aardvark adapter in an easy to use graphical interface. Batch scripting and I 2 C Monitoring capability has been added since version 3.00. I 2 C/SPI A ARDVARK Aardvark I 2 C/SPI Embedded Systems Interface Control Center User’s Manual v3.53 August 7, 2009 www.totalphase.com © 2004–2009 Total Phase, Inc.

Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

  • Upload
    duongtu

  • View
    231

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

SummaryThe Control Center is a graphical application for use with the AardvarkI2C/SPI Embedded Systems Interface. It provides access to all I2C , I2C BusMonitoring, SPI and GPIO functions of the Aardvark adapter in an easy to usegraphical interface. Batch scripting and I2C Monitoring capability has been addedsince version 3.00.

I2C/SPIAARDVARK

Aardvark I2C/SPIEmbedded Systems Interface

Control Center User’sManual v3.53August 7, 2009

www.totalphase.com © 2004–2009 Total Phase, Inc.

Page 2: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Contents

1 Overview 71.1 Changes in version 3.52 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2 Changes in version 3.51 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.3 Aardvark I2C/SPI Host Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . 71.4 Aardvark I2C/SPI Host Adapter Functional Modes . . . . . . . . . . . . . . . . . 7

2 Getting Started 112.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Mac OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11Aardvark I2C/SPI Host Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.2 Installing Control Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3 Launching the Control Center . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12Mac OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.4 Operating the Control Center . . . . . . . . . . . . . . . . . . . . . . . . . . . 12Configure the Aardvark Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . 12

List of Available Aardvark Adapters . . . . . . . . . . . . . . . . . . . . 13Refresh List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Operational Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.5 Reconfiguring the Aardvark Adapter . . . . . . . . . . . . . . . . . . . . . . . . 14

Change Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.6 Powering Downstream Devices . . . . . . . . . . . . . . . . . . . . . . . . . . 142.7 Disconnecting the Aardvark Adapter . . . . . . . . . . . . . . . . . . . . . . . . 152.8 Exiting the Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3 Application 163.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.2 Transaction Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Elements of the Transaction Log . . . . . . . . . . . . . . . . . . . . . . . . . . 16Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Module (Mod.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16Read/Write (R/W) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Master/Slave (M/S) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Features (Feat.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17Bitrate (B.R.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Address (Addr.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Length (Len.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

www.totalphase.com 2

Page 3: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Transaction Viewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Save Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Clear Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Save To File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

4 Modules 214.1 I2C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

I2C Pull-ups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21I2C Master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

Bitrate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21Changing the Bitrate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Slave Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22I2C Master Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23I2C Master Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

I2C Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23Slave Enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23Slave Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24Max Tx Bytes & Max Rx Bytes . . . . . . . . . . . . . . . . . . . . . . . 24Slave Response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24Note: Slave Message Can Be Overwritten . . . . . . . . . . . . . . . . . 25Enabling the Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Disabling the Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Implicit Slave Disabling . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4.2 SPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26SPI Data Exchange Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . 26

Bitrate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26Changing the Bitrate . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

SPI Master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27SS Polarity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27MOSI Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

SPI Slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28MISO Message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Note: MISO Message Can Be Overwritten . . . . . . . . . . . . . . . . . 28Slave Enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28Implicit Slave Disabling . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.3 General Purpose IO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29GPIO Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30GPIO Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Pin # . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31Direction (Dir.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

www.totalphase.com 3

Page 4: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Pull Ups (P.U.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32Note: I2C Pin Pullups . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32Out Set & Out Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32In Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.4 Batch Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32Batch Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33Editing Batch Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33Executing Batch Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Batch Instruction Error . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.5 I2C Bus Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Enabling the I2C Bus Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . 35Disabling the I2C Bus Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . 36Monitored Transactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

5 Batch Instruction Commands 375.1 Notes on Batch Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375.2 General Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

Configure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

sleep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

5.3 I2C Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38i2c_bitrate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

i2c_write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

i2c_read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

i2c_free_bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.4 SPI Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41spi_config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

spi_bitrate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

spi_write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

www.totalphase.com 4

Page 5: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5.5 GPIO Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43gpio_config . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

gpio_get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

gpio_set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

6 Notes 456.1 Multiple Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456.2 Aardvark I2C/SPI Host Adapter Technical Specifications . . . . . . . . . . . . . 45

7 Legal / Contact 467.1 Disclaimer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467.2 Life Support Equipment Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . 467.3 Contact Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

List of Figures

1 I2C and SPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 I2C and GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 SPI and GPIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 GPIO Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 Batch Scripting Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 I2C Bus Monitoring Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Control Center Directory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Initial Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 Configure Aardvark Adapter Window . . . . . . . . . . . . . . . . . . . . . . . 1310 The Transaction Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1611 The Transaction Viewer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2012 I2C Master Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2113 Bitrate Confirmation Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2214 I2C Slave Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2415 Enabled I2C Slave Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2516 SPI Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2617 Bitrate Confirmation Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2718 SPI Master Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2719 SPI Slave Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2820 Enabled SPI Slave Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

www.totalphase.com 5

Page 6: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

21 GPIO Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2922 GPIO + I2C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3023 GPIO + SPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3024 Batch Scripting Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3325 Batch Command Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3326 Clearing the Batch Command Console . . . . . . . . . . . . . . . . . . . . . . 3327 Executing Batch Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3428 Batch Command Error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3429 I2C Bus Monitor Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3530 Enabled I2C Bus Monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3531 Clearing the I2C bus monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

List of Tables

1 Transaction Background Colors . . . . . . . . . . . . . . . . . . . . . . . . . . 172 Allowed configuration combinations . . . . . . . . . . . . . . . . . . . . . . . . 383 GPIO Bit Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

www.totalphase.com 6

Page 7: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

1 Overview

The Aardvark I2C/SPI Embedded Systems Interface is a multi-functional host adapter. TheControl Center software interacts directly with the Aardvark adapter.

The Control Center provides basic access to all the functionality of the Aardvark adapter. Itis built upon the freely available Aardvark I2C/SPI Software API as detailed in the AardvarkI2C/SPI Embedded Systems Interface datasheet.

1.1 Changes in version 3.52

New Features

• XML examples are now included within the GUI package rather than as a separate pack-age.

1.2 Changes in version 3.51

Bug Fixes

• Fixed interoperability issue with FW >= v3.40 when doing 10-bit I2C reads.

New Features

• Added support for 64-bit Windows. Note that Control Center will run on 64-bit systemsas a 32-bit application.

1.3 Aardvark I2C/SPI Host Adapter

The Aardvark I2C/SPI Adapter has 5 core functional modules: I2C , SPI,GPIO, Batch Scriptingand I2C Bus Monitor.

I2C and SPI are serial protocols for communicating between devices. Information about theirspecifications can be found in the Aardvark I2C/SPI Embedded Systems Interface datasheetand on the Total Phase website: http://www.totalphase.com/

GPIO, General Purpose IO, allows the users to take the six pins that are normally used forI2C and SPI and use them to send and receive general signals. These six pins are SCL, SDA,MOSI, SCLK, MISO, and SS. GPIO functionality can be used concurrently with either I2C orSPI, or can be used by itself.

Batch Scripting allows the user to write scripts in an XML based language to automate tasks.The batch scripting functionality in the Control Center software encompasses a subset of theI2C , SPI and GPIO functionality of the Aardvark adapter.

I2C Bus Monitoring allows the user to unobtrusively record traffic on an I2C bus. The Aardvarkadapter supports monitoring of bus speeds up to 125 kHz.

1.4 Aardvark I2C/SPI Host Adapter Functional Modes

The Aardvark I2C/SPI Host Adapter has six functional modes:

www.totalphase.com 7

Page 8: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

1. I2C + SPI

Figure 1: I2C and SPI

2. I2C + GPIO

Figure 2: I2C and GPIO using the 4 available SPI pins: MOSI, SCLK, MISO, SS

3. SPI + GPIO

4. GPIO Only

5. Batch Scripting

6. I2C Bus Monitoring

www.totalphase.com 8

Page 9: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Figure 3: SPI and GPIO using the 2 available I2C pins: SCL, SDA

Figure 4: GPIO using the 6 available I2C and SPI pins: SCL, SDA, MOSI, SCLK, MISO, SS

Figure 5: Batch Scripting Module

www.totalphase.com 9

Page 10: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Figure 6: I2C Bus Monitoring Module. This module does not use the transaction log. Recorded transac-tion will appear in the main text field of the module.

www.totalphase.com 10

Page 11: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

2 Getting Started

2.1 Requirements

Overview

The Control Center software is offered as a 32-bit binary and it is compatible with 64-bit op-erating systems. The following sections describe the requirements to run Control Center. Besure the device driver has been installed before plugging in the Aardvark adapter. Refer to theSoftware section of the Aardvark datasheet for additional information regarding the driver andcompatibility.

Windows

The Control Center software is compatible with Windows XP (SP2 or later, 32-bit and 64-bit),Windows Vista (32-bit and 64-bit), and Windows 7 (32-bit and 64-bit). The software will run on64-bit systems as a 32-bit application. Windows 2000 and legacy 16-bit Windows 95/98/MEoperating systems are not supported.

Linux

The Control Center software has been designed for Red Hat Enterprise Linux 4 and 5 withintegrated USB support. Kernel 2.6 is required. The software will run on 64-bit systems as a32-bit application, provided that 32-bit system libraries are available.

Mac OS X

The Control Center software is compatible with Intel versions of Mac OS X 10.4 Tiger and 10.5Leopard. Installation of the latest available update is recommended.

Aardvark I2C/SPI Host Adapter

Version 3.50 of the Control Center software requires an Aardvark adapter that runs version 3.40or greater of the firmware.

Aardvark adapters with version 2.1 or greater of the hardware will be able to use the targetpower and configure I2C pullup functionality.

2.2 Installing Control Center

The Control Center software is a self-contained application. Installing the software is as easyas unarchiving the software package. To install the Control Center:

1. Download the latest version of the software from the Total Phase website.

2. Unzip the zip archive to your desired location.

www.totalphase.com 11

Page 12: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

2.3 Launching the Control Center

Windows

Figure 7: Control Center DirectoryThis is what the directory should look like after the software has been extracted.

1. Go to the folder where the software package was extracted.

2. Click on “Aardvark GUI.exe”

Linux

1. Go to the installation directory where the software package was unzipped.

2. Run >./aardvark-gui

Mac OS X

1. Go to the installation directory where the software package was unzipped.

2. Click on “Aardvark GUI”

2.4 Operating the Control Center

After launching the Control Center, you will see the screen in figure 8.

An Aardvark adapter must be configured for use before the Control Center software can be usedto send and receive any messages. Configuring the Aardvark adapter binds the instance of theapplication with an available Aardvark unit until the adapter is disconnected or the applicationis terminated.

Configure the Aardvark Adapter

The configuration window (figure 9)is organized into two sections: the list of available Aardvarkadapters and a list of operational modes.

www.totalphase.com 12

Page 13: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Figure 8: Initial ScreenAfter first launching the Control Center, the Aardvark Adapter must be configured.

Figure 9: Configure Aardvark Adapter WindowThe Configure window is organized in two major sections: the list of available Aardvark adapters and thelist of operational modes.

List of Available Aardvark Adapters

In the configure window, there is a list of all the available Aardvark adapters that are connectedto the computer. If no Aardvark adapters appear in the list, then there are no available unitsconnected to your computer.

Refresh List

To see an updated list of Aardvark adapters attached to the computer, simply click on the“Refresh List” button to rescan the USB bus. Please note that Aardvark adapters that are inuse by other applications are no longer available and consequently do not appear in the list ofavailable units.

The list of Aardvark adapters provides the following information:

Port

The port that the Aardvark adapter occupies. The port number is a zero based number. Formore information about USB port assignments, please consulting section 3.4: USB Port As-signment of the Aardvark I2C/SPI Host Adapter datasheet.

www.totalphase.com 13

Page 14: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Hardware Version (HW Ver.) & Firmware Version (FW Ver.)

For more information about version numbers, please consult the Aardvark I2C/SPI EmbeddedSystems Interface datasheet, Sections 3.5 Aardvark Dynamically Linked Library – Versioningand 3.6 API Integration into Custom Applications – Versioning.

Serial Number

The serial number of the Aardvark adapter.

I2C, SPI, and GPIO

Supported modules. “Yes” indicates that a module is supported. “No” indicates that a moduleis not supported.

Operational Modes

On the right side of the window is a list of the six operational modes: “I2C + SPI”, “I2C + GPIO”,“SPI + GPIO”, “GPIO Only”, “Batch Mode” and “I2C Monitor”. Select the radio button next tothe desired mode.

The mode of the Aardvark adapter can be changed after the unit has already been connected,see Section 2.3 Reconfiguing the Aardvark Adapter.

Once you have selected the Aardvark adapter and the desired mode, click on “OK” to continue.

The port and serial number of the Aardvark adapter will appear in the status bar at the bottomof the window to indicate which Aardvark adapter is bound to this instance of the application.

2.5 Reconfiguring the Aardvark Adapter

After the Control Center has been configured with a specific Aardvark adapter, it is possible tochange the Aardvark adapter and/or the mode that it is operating in.

Change Mode

To change the mode but continue using the same Aardvark adapter go to the menu item:

Aardvark

Select the desired mode and the Control Center will be automatically reconfigured to reflect thisselection.

2.6 Powering Downstream Devices

It is possible to power a downstream target, such as an I2C or SPI EEPROM with the Aardvarkadapter’s power (which is provided by the USB port). More information about powering down-stream devices can be found in the Aardvark I2C/SPI Embedded Systems Interface datasheet.

NC/+5V (Pin 4): I2C Power

www.totalphase.com 14

Page 15: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

NC/+5V (Pin 6): SPI Power

By default, these pins are left unconnected at the time of shipping. For Aardvark adapters withhardware versions 2.00 and greater, these pins can be enabled through the Control Centersoftware. Simply go to the menu item: Aardvark | Target Power.

A checkmark indicates that power will be supplied to downstream devices on both pins.

2.7 Disconnecting the Aardvark Adapter

The Aardvark adapter can be disconnected from the current application. To do so, go to themenu item: Aardvark | Disconnect.

When disconnected, the application will return to the starting screen.

2.8 Exiting the Application

To exit the application, go to the menu item: File | Exit Application.

www.totalphase.com 15

Page 16: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

3 Application

3.1 General

The main application window is divided into two sections. The top section contains the modulesfor use with the Aardvark adapter. Depending on the selected mode, different modules willappear in the main display. The available modules are I2C , SPI and GPIO. Each one hasdifferent features and functionality which are explained in Section 4. Modules.

The bottom section of the application contains the Transaction Log. The log keeps track of alltransactions that the Aardvark adapter sends or receives.

3.2 Transaction Log

Elements of the Transaction Log

Figure 10: The Transaction LogThe Transaction Log records all transactions that are performed by the Aardvark adapter. This log canbe saved as a file for future reference.

The Transaction log is a scrolling list of all the transactions that the Aardvark adapter sends orreceives. Note that traffic recorded as an I2C bus monitor do not appear in the transaction log.The information is arranged in the following columns.

Time

Time of the transaction. This information is displayed in the format:

YYYY-MM-DD hh:mm:ss.xxx

Module (Mod.)

The module that logged the transaction. This can be either “I2C”, “SPI”, or “GPIO”. Log entriesfrom for different modules have different background colors to make them easier to identify.

www.totalphase.com 16

Page 17: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Table 1: Transaction Background ColorsI2C WhiteSPI YellowGPIO Gray

Read/Write (R/W)

This column is only used by I2C and SPI

Whether the transaction was a read transaction (“R”) or a write transaction (“W”).

Master/Slave (M/S)

This column is only used by I2C and SPI

Indicates the mode that the attached Aardvark adapter is functioning in. If the Aardvark unit isoperating as a master, then an “M” appears. In the Aardvark unit is operating as a slave, thenan, “S” appears.

Features (Feat.)

This column is only used by I2C and SPI

This is a string that indicates the features that were active during the transaction.

I2C

I2C features are encoded in the string: “TCS”

T - 10-bit AddressingC - Combined FMTS - No Stop

If the feature is not being used, then a “-” appears in place of the character. More informationabout the specific features can be found in Section 4.1 I2C .

For example, in a transaction that uses 10-bit addressing and the no stop feature, the featurestring would be “T-S”.

SPI

SPI data exchange parameters are string encoded. The order of the parameters is:

Polarity (“R” or “F”)Rising (“R”) or Falling (“F”)

Phase (“S” or “s”)Sample/Setup (“S”) or Setup/Sample (“s”)

www.totalphase.com 17

Page 18: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Bit Order (“M” or “L”)Most Significant Bit First - MSB (“M”)Least Significant Bit First - LSB (“L”)

SS Polarity (“L” or “H”)SS Active Low (“L”)SS Active High (“H”)

If a feature is not being used, then a “-” appears in the place of the character. More informationabout the SPI Bit Protocol can be found in Section 4.2 SPI

For example, in a transaction that uses Falling polarity, Setup/Sample Phase and Most Signifi-cant Bit First, the feature string would be: “FsM-”

Bitrate (B.R.)

This column is only used by I2C and SPI

Indicates the speed of the transaction in kbps. The value logged in this column many differ fromthe bitrate specified. The value reported here is the actual bit rate returned by the Aardvarkadapter.

Address (Addr.)

This column is only used by I2C

The address that was the target of the transaction.

In the case of I2C master, the address is the slave address that the master targeted for commu-nication.

In the case of I2C slave, the address will be the address of the Aardvark adapter unless theAardvark slave is answering a general call in which case 0x80 will appear in the address column.

Length (Len.)

This column is only used by I2C and SPI

The number of bytes in the transaction. In the case where bytes are dropped from the trans-mission, “DB” will appear in this column to indicate that the message was truncated and byteswere dropped from the end of the message.

Data

I2C and SPI

The message in hexadecimal.

www.totalphase.com 18

Page 19: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

GPIO

The GPIO values in the log is the OR-ed values of the pins involved. The pins have the followingvalues:

SCL = 0x01SDA = 0x02MISO = 0x04SCK = 0x08MOSI = 0x10SS = 0x20

Set

The data is in the format:

OUT:0xXX DIRECTION:0xXX PULLUPS:0xXX

Get

The data is in the format:

IN:0xXX DIRECTION:0xXX PULLUPS:0xXX

OUT and IN

1 indicates that the pin has been set logic high and 0 indicated logic low. For example, if SCL,MOSI and SS where set to logic high, then the value of OUT would be: 0x31.

0x01 | 0x10 | 0x20 = 0x31

DIRECTION

1 indicates that the direction is out and 0 indicates that the direction is in. For example, if SDA,MISO and SS were set to output and the rest of the pins to input, the value of DIRECTIONwould be: 0x26.

0x02 | 0x04 | 0x20 = 0x26

PULLUPS

1 indicates that the pullup is on and 0 indicates the pullup is off. For example, if MISO, SCK,MOSI and SS had their pullups turned on, the value of PULLUP would be: 0x3c.

0x04 | 0x08 | 0x10 | 0x20 = 0x3c

More information about GPIO can be found in Section 4.3 GPIO.

www.totalphase.com 19

Page 20: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Figure 11: The Transaction Viewer

Transaction Viewer

The transaction viewer is a convenient way to view the full details of a transaction. To see antransaction in the Transaction Viewer, double-click on an entry in the transaction log.

Save Data

The transaction data can be saved in a binary file. Click on the “Save Data” button to bring upthe save file dialog. This binary file can later be loaded as a message in I2C or SPI.

Clear Log

Deletes all entries from the Transaction Log.

Note that all transactions are cleared immediately when the button is pressed.

Save To File

The data in the log can be exported in a comma separated values (CSV) format by clicking onthe “Save To File” button. You will be prompted for a filename to save the data.

The log file has a header with the following information:

Export Time: [time of export]Port [port number]Aardvark HW_Version: [hw version]FW_Version: [fw version]

After the header, all transactions are appended, one per line. The column order in the exportedfile is the same as the order columns in the transaction log.

www.totalphase.com 20

Page 21: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

4 Modules

4.1 I2C

Inter-IC bus, or I2C , was developed by Philips in the 1980s. I2C is a low-bandwidth, shortdistance protocol for on board communications. All devices are connected through two wires:serial data (SDA) and serial clock (SCL).

The Control Center I2C module consists of 2 tabs, master and slave.

I2C Pull-ups

There is a 2.2K resistor on each I2C line (SCL, SDA). The lines are effectively pulled up to3.3V, so that results in approximately 1.5 mA of pull-up current. For more information about thepull-up resistors, please consult the Aardvark I2C/SPI Embedded Systems Interface datasheet.

Aardvark adapters with a hardware versions 2.00 and greater have the ability to enable thepull-up resistors through the Control Center application. To toggle the pull-up resistors, go tothe menu item:

Aardvark -> I2C Pull-ups

A checkmark indicates that the pull-up resistors have been enabled on the I2C lines.

I2C Master

Figure 12: I2C Master tab of the I2C Module

As a master device, there are two actions, write or read. For these actions, there are a numberof parameters that can or must be specified: bitrate, slave Address, and other I2C features.

Bitrate

The bitrate is the speed of communications between the master and the slave. The maximummaster I2C bitrate is 663 kbps and a minimum of 32 kbps. The Aardvark I2C module supports

www.totalphase.com 21

Page 22: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

many intermediate bit rates between these values. More information about the bit rate can befound in the Aardvark I2C/SPI Embedded Systems Interface datasheet.

Changing the Bitrate

To change the bitrate, simply select a bitrate from the pull-down menu or alternatively, enteryour own bitrate and press <Enter>.

Figure 13: Bitrate Confirmation Dialog

If the bitrate you entered is not available, the application will display a message indicating theclose matching bitrate. Click on “Yes” to accept this alternative bit rate or click on “No” tocontinue using the existing bitrate.

Slave Address

The slave address is the address of the target I2C slave device. This address can be enteredin either decimal or hexadecimal notation. If using hexadecimal notation, preface the numberwith “0x”. For 7-bit and 10-bit addressing, the 7 and 10 least significant bits should be used tospecify the address, respectively.

Features

The Aardvark adapter supports many of the additional I2C features.

10-Bit Slave Address (10-Bit Addr.)

When 10-bit slave address is selected, the slave address will be treated as a 10-bit address.The appropriate actions as described in the I2C specification will be performed to address the10-bit slave on the bus.

Note: The Aardvark slave is always a 7-bit addressed device.

Combined Format (Combined FMT)

When Combined Format is selected, the”combined” format will be used for Master Read com-mands. This feature is only enabled when 10-bit addressing is active because it is only usefulwhen used in conjunction with 10-bit slave Addressing

This flag indicates to the Aardvark adapter that the address is a 10-bit address but that it is notnecessary to send the entire address using a master write before executing the read.

For specific information about the “combined” format, consult Section 14.2 “Formats with 10-bitaddress” in the Philips I2C Specification. A link to the specification can be found on the Total

www.totalphase.com 22

Page 23: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Phase website.

No Stop (No Stop)

When No Stop is selected, the master device will explicitly not signal the stop command afterthe last byte in a transaction. The bus will be held and the subsequent master read or masterwrite events will issue the repeated start on the bus.

Free Bus

The “Free Bus” button will explicitly issue the stop command on the I2C bus.

If the Aardvark I2C subsystem had executed a master transaction and is holding the bus due toa previous “No Stop” transaction, the Free Bus command will issue the stop command and freethe bus.

I2C Master Write

Message to Send

Enter the message to be sent in hexadecimal in this field. Spaces will be automatically addedfor better legibility but these spaces will not be sent as part of the message. The maximummessage size is 64k (65535) bytes when using 7-bit addressing and 64k - 1 (65534) byteswhen using 10-bit addressing.

The message can be loaded from a binary file by clicking on the “Load” . Conversely, themessage can also be saved to a binary file by clicking on the “Save” button.

Once a message has been set, click on the “Master Write” button to initiate the action. Theresults of the action will appear in the transaction log.

I2C Master Read

Number of Bytes

This value is the maximum number of bytes the master will accept in a single transaction. Themaster may receive fewer bytes than are specified in this field, but not more. In the case thata slave does not have the requested number of bytes available, the remainder of the bytes willsimply default to 0xff due to the pullup resistors on the bus.

I2C Slave

Slave Enable

An I2C slave can send messages to and receive messages from a master device after themaster has initiated a transaction. An Aardvark adapter will not respond as an I2C slave deviceunless it has been enabled as a slave device.

www.totalphase.com 23

Page 24: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Figure 14: I2C Slave tab of the I2C Module

When enabling an Aardvark adapter as a slave device, three parameters must be provided: the“Slave Address”, the maximum number of bytes to send (“Max Tx Bytes”) and the maximumnumber of bytes to receive (“Max Rx Bytes”).

Slave Address

This is the I2C address that the Aardvark adapter will use as an I2C slave device. The Aardvarkadapter always uses a 7-bit slave address. The address is specified in the 7 least significantbits. The most significant bit is ignored.

Max Tx Bytes & Max Rx Bytes

The Max Tx Bytes and Max Rx Bytes indicates the maximum number of bytes the Aardvarkdevice will send and receive respectively. The Aardvark adapter will not exceed the maximumnumber of bytes that have been specified.

An exception to this rule is “0” which indicates that the number of bytes is unlimited.

Slave Response

A slave response message can be set in the Aardvark adapter as a response to a write request.The message entry field operates in the same manner as the I2C master message to send field.The maximum message size is 64 bytes due to buffer limits.

The message can be loaded from a binary file by clicking on the “Load” button. Conversely, themessage can also be saved to a binary file by clicking on the “Save” button.

If more bytes are requested in a transaction than have been specified in the slave response,the response string will be wrapped as many times as necessary to complete the transaction.For example if the slave response has been set to:

00 01 02 03 04

and 12 bytes have been requested, the response that is sent to the master will be:

www.totalphase.com 24

Page 25: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

00 01 02 03 04 00 01 02 03 04 00 01

To set the response in the slave, click on the “Set Resp” button. It is advisable to set the slaveresponse before enabling the slave. If a response is not set before the slave is enabled, it ispossible that a slave response be requested before the slave device has one to return.

Note: Slave Message Can Be Overwritten

All I2C messages share memory in the Aardvark adapter. Therefore it is possible that the slaveresponse may be overwritten in the Aardvark unit.

For example, an I2C slave response is set and then Aardvark adapter is enabled as an I2C slave,but then without disabling the slave, an I2C master transaction is executed. The Aardvarkadapter will implicitly deactivate the I2C slave and because of the shared memory in the Aard-vark adapter the I2C master operation will almost always overwrite the I2C slave response.

The safest course of action is to set the slave response each time before enabling or re-enablingthe I2C slave.

Enabling the Slave

To enable the Aardvark adapter as an I2C slave, simply click on the “Enable” button.

Figure 15: Enabled I2C Slave tab of the I2C Module

Once the slave is enabled, the status indicator at the top of the panel will change from“Disabled” in red to “Enabled” in green.

As request arrive for the slave, the transaction log will be updated with the read and write actionsthat the slave performed.

Disabling the Slave

To disable the Aardvark adapter as an I2C slave device, simply click on the “Disable” button.Once disabled the status indicator at the top of the panel will change from “Enabled” in Greento “Disabled” in Red.

www.totalphase.com 25

Page 26: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Implicit Slave Disabling

Executing an I2C master write or I2C master read will implicitly disable the Aardvark device asan I2C slave device. After a master write or read event, it is recommended that the I2C slaveresponse be resent to the Aardvark adapter and then it can be re-enabled as an I2C slavedevice.

Switching the I2C pins to GPIO will also implicitly disable the I2C slave.

4.2 SPI

SPI is a serial communication bus developed by Motorola. It is a full-duplex protocol whichfunctions on a master-slave paradigm that is ideally suited to data streaming applications.

The SPI tab consists of two tabs: master and slave.

SPI Data Exchange Parameters

The SPI master and slave need to agree about the data frame for the transaction. The dataframe is described by three parameters: clock polarity, clock phase and bit order.

Figure 16: SPI Parameters in the SPI Module

These parameters must be the same for both the master and slave modes. More informationabout these parameters can be found in the Aardvark I2C/SPI Embedded Systems Interfacedatasheet.

Bitrate

The bitrate is the speed of communications between the master and the slave. The AardvarkSPI master can operate at bitrates of 125 kHz, 250 kHz, 500 kHz, 1 MHz, 2 MHz, 4 MHz,and 8 MHz. The quoted bitrates are only achievable within each individual byte and doesnot extend across bytes. More information about the bit rate can be found in the AardvarkI2C/SPI Embedded Systems Interface datasheet.

Changing the Bitrate

To change the bitrate, simply select a bitrate from the pull-down menu or alternatively, enteryour own bitrate and press <Enter>.

If the bitrate you entered is not available, the application will display a message indicating theclose matching bitrate. Click on “Yes” to accept this alternative bit rate or click on “No” tocontinue using the existing bitrate.

www.totalphase.com 26

Page 27: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Figure 17: Bitrate Confirmation Dialog

SPI Master

Figure 18: SPI Master tab in the SPI Module

The SPI master has an additional parameter that can be set, the polarity of the SS line.

SS Polarity

The SS Polarity indicates whether the Aardvark device will pull the SS pin high or low to activatethe SPI slave device.

Note: When configured as an SPI slave, the Aardvark will always be setup with SS as activelow.

MOSI Message

MOSI (Master Out, Slave In) message is entered here in hexadecimal format. Spaces areautomatically inserted for legibility. The maximum message size is 4 KiB due to operatingsystem buffer limits.

The message can be loaded from a binary file by clicking on the “Load” button. Conversely, themessage can also be saved to a binary file by clicking on the “Save” button.

SPI is a full duplex protocol. When the MOSI message is sent a MISO message is received.The transaction log will log MOSI and MISO as two separate transactions that occur at thesame time. The length of the two messages will be the same due to the duplex nature of theprotocol.

www.totalphase.com 27

Page 28: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

SPI Slave

Figure 19: SPI Slave tab in the SPI Module

MISO Message

The MISO (Master In, Slave Out) message is the message that the Aardvark adapter will returnas its response to a SPI transaction. Like the MOSI message, this message is entered inhexadecimal format. Spaces are automatically inserted for legibility, but are not sent in thetransaction. The maximum message size is 4 KiB due to operating system buffer limits.

It is advisable to set the MISO message before enabling the slave. If a MISO message is notset before the slave is enabled, it is possible that the message may be requested before theslave device has one to return.

The message can be loaded from a binary file by clicking on the “Load” button. Conversely, themessage can also be saved to a binary file by clicking on the “Save” button.

Note: MISO Message Can Be Overwritten

All SPI messages share memory in the Aardvark adapter. Therefore it is possible that the MISOmessage may be overwritten in the Aardvark unit.

For example, a MISO message is set and then Aardvark adapter is enabled as an SPI slave, butthen without disabling the slave, an SPI master transaction is executed. The Aardvark adapterwill implicitly deactivate the SPI slave and because of the shared memory in the Aardvarkadapter the SPI master operation will almost always overwrite the MISO message.

The safest course of action is to set the MISO message each time before enabling or re-enablingthe SPI slave.

Slave Enable

An Aardvark adapter will not respond as an SPI slave device until it has been enabled. It isadvisable that the MISO message be set in the slave device before it is enabled to ensure valid

www.totalphase.com 28

Page 29: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

data to all requests.

Figure 20: Enabled SPI Slave tab in the SPI Module

Once the slave is enabled, the status indicator at the top of the panel will change from“Disabled” in red to “Enabled” in green. As request arrive for the slave, the transaction logwill be updated with the read and write actions that the slave performed.

When the MOSI message is received a MISO message is sent to the master. The transactionlog will log MOSI and MISO as two separate transactions that occur at the same time.

Implicit Slave Disabling

Executing a SPI master write will implicitly disable the Aardvark device as an SPI slave device.After a master write event, it is recommended that the MISO message be resent to the Aardvarkadapter and then it can be re-enabled as an SPI slave device.

Switching the SPI pins to GPIO will also implicitly disable the SPI slave.

4.3 General Purpose IO

Figure 21: GPIO Module

www.totalphase.com 29

Page 30: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

General Purpose IO, GPIO, allows the users to use the six pins that are normally used forI2C and SPI and use them to send and receive signals. These six pins are SCL, SDA, MOSI,SCLK, MISO, and SS. GPIO functionality can be combined with either I2C or SPI or can beused by itself.

GPIO Configurations

When GPIO is combined with either I2C or SPI, only the pins of the unused module are availablefor GPIO. Therefore when using “I2C + GPIO” only the SPI pins are available for GPIO and whenusing “SPI + GPIO”, only the I2C pins are available for GPIO.

Figure 22: GPIO module when using “I2C + GPIO”

Figure 23: GPIO module when using “SPI + GPIO”

GPIO Parameters

When GPIO module is selected, only the available pins are displayed in the window. Each pinis labeled and has parameters that can be set by the user.

www.totalphase.com 30

Page 31: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Name

The name of each pin is color coordinated to match the color of the lead in of the 10-pin splitcable adapter. The 10-pin split cable adapter is not included with the Aardvark adapter, but isavailable for purchase separately on the Total Phase website.

Pin #

The position of the pin in the 10-pin socket connector. Information about the pin arrangementcan be found the Aardvark I2C/SPI Embedded Systems Interface datasheet and on the TotalPhase website.

Value

Each pin has a different value which can be OR-ed together to produce a single number thatrepresents the state of all the pins.

The pins have the following values:

SCL = 0x01SDA = 0x02MISO = 0x04SCK = 0x08MOSI = 0x10SS = 0x20

For example, if SCL, MOSI and SS where set to 1, then the value of all pins would be:

0x01 | 0x10 | 0x20 = 0x31

Direction (Dir.)

The direction of the pin, Input or Output.

If a pin is configured as an input pin, then the pullup selector and In Value row are enabled andthe Out Set and Out Value rows are disabled.

If a pin is configured as an output pin, then the pullup selector and the In Value are disabledand the Out Set and Out Value rows are disabled.

All In and All Out

The “All In” and “All Out” buttons are convenience buttons to set all pins to input or outputrespectively.

www.totalphase.com 31

Page 32: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Pull Ups (P.U.)

Indicates whether the pullup is active or inactive on a pin. The pullup selector is only enabledwhen the pin is set to the in direction because the pullup are only turned on on pins that havebeen configured as input. If a line is configured as output, the pullup mask is cached and thepullup configuration for that line will only take effect if the line is later configured as an input.

All On and All Off

The “All On” and “All Off” buttons are convenience buttons to turn on the pullups on or offrespectively on all pins.

Note: Only pins that have been configured to be input will be affected by these buttons.

Note: I2C Pin Pullups

It is not possible to disable the pullups for SCL and SDA input on Hardware Version 1.02.

Out Set & Out Value

The “Out Set” boxes are a staging area for setting the levels of the output pins. Only “0” and “1”are accepted in these text boxes.

The values in the “Out Set” boxes are only applied once the “Set” button is clicked. The “OutValue” indicates the last known values of the output pins. After clicking the Set button the “OutSet” and the “Out Value” for all pins configured as output should match. The parameters of thetransaction are added to the transaction log.

If a pin is switched from output to input, the values in “Out Set” and “Out Value” are disabledbut are conserved. When a pin is switched back to output, these values will be restored.

In Value

The “In Value” is the last known values of the input pins. Initially the values for the In Value willbe “X” indicating that the value is not known on the pin.

The “In Value” of the input pins are updated when the “Get” button is clicked. The parametersof the transaction are added to the transaction log.

The “In Value” for an output pin will always display an “X” because the input value of this pin isnot known.

4.4 Batch Mode

In Batch mode, the user can specify an arbitrary set of instructions for the Aardvark adapter toexecute in sequence. This scripting language is based on XML.

www.totalphase.com 32

Page 33: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Figure 24: Batch Scripting Module

Batch Instructions

A set of batch instructions for an Aardvark adapter is scripted in an XML based language. Aset of instructions must be contained within a set of <aardvark> tags. Each command isspecified by an XML tag. These tags are described in section 5. Batch Instruction Commands.Commands are executed in the order that they appear in the XML block.

Help for the Batch Commands is available in the Control Center software which explains all theavailable commands. Just click on the “Help” button.

Figure 25: Batch Commands Help System

Editing Batch Instructions

The Batch XML Instructions are entered in this text field. Batch instructions can be saved andloaded as XML files via the “Save” and “Load” buttons respectively. The “Clear” button willclear all contents out of the text field. The following dialog box will appear to confirm that theuser wants to clear all data out of the text field.

Figure 26: When clearing the batch command console, a dialog box will appear to confirm the user’saction.

www.totalphase.com 33

Page 34: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Executing Batch Instruction

To execute a set of batch instructions, simply click on the “Execute” button. When a script isexecuting, the status indicator will turn green. The results from the commands will appear inthe transaction log. While a script is running, it is not possible to edit the batch instructions.

To stop the execution of a script, simply click on the “Stop” button.

Figure 27: Executing a batch command script.

Once the script has completed, the status indicator will change back to red and the batchinstructions will once again be editable.

Batch Instruction Error

When the “Execute” button is clicked, the instruction set is parsed and validated. In the eventof an error, a dialog box will open indicating the type of error and the command in which theerror appears.

Figure 28: Batch command error dialog.

The format of the error message is:

n) command [attribute] - error message

where:

nzero-based index of the command

commandcommand type

www.totalphase.com 34

Page 35: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

attributeattribute name where the error occurred. If an error is not associated with an attribute,this field will be omitted.

error messageerror message.

Click OK to close the dialog.

4.5 I2C Bus Monitor

Figure 29: I2C Bus Monitor Module

I2C Monitor mode allows the user to non-intrusively record the traffic on an I2C bus. The busmonitor is limited to 125 kHz traffic. This rate can be sustained indefinitely. Monitoring traffic atfaster bus rates is not supported, but is possible for short transactions.

The I2C Bus Monitor module does not make use of the transaction log. Instead it has it’s owndisplay which logs all of the traffic on an I2C bus.

Enabling the I2C Bus Monitor

To enable the Aardvark adapter as an I2C bus monitor, simply click on the “Enable” button.

Figure 30: Enabled I2C bus monitor

Once the bus monitor is enabled, the status indicator at the top of the panel will change from“Disabled” in red to “Enabled” in green.

www.totalphase.com 35

Page 36: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Disabling the I2C Bus Monitor

To disable the Aardvark adapter as an I2C bus monitoring device, simply click on the “Disable”button. Once disabled the status indicator at the top of the panel will change from “Enabled” inGreen to “Disabled” in Red.

Monitored Transactions

Monitored transactions will appear in the monitor transaction display. Each entry has a times-tamp. This timestamp is based on when the Control Center application monitored the data onlyand may differ from the actual time the data was sent on the bus.

The format of the I2C transaction is:

[S] <addr:r/w>* data [P]

Where:

[S]start flag

addrtarget slave address (7-bit or 10-bit)

r/wread/write bit. Either “r” or “w”

*appears if a NACK occurred

[P]stop flag

Transactions longer than 16 bytes will be broken up onto multiple lines. All lines from the sametransaction will have the same timestamp.

The recorded transactions can be saved to a TXT file with the “Save” button.

The recorded transactions can be cleared with the “Clear” button. When clearing the transac-tions, a dialog box will appear to confirm the action.

Figure 31: When clearing the recorded transactions, a dialog box will appear to confirm the user’s action.

www.totalphase.com 36

Page 37: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

5 Batch Instruction Commands

5.1 Notes on Batch Instructions

Unless specified otherwise, all arguments to a batch instruction are “1” to enable/request thespecified parameter, or “0” to disable/not request the specified parameter.

5.2 General Commands

Configure

<configure i2c="i2c"spi="spi"gpio="gpio"tpower="tpower"pullups="pullups"/>

Activate/Deactivate individual sub-systems and features

Parameters

i2cEnable I2C.

spiEnable SPI.

gpioEnable GPIO.

tpowerEnable Target Power on pins 4 and 6.

pullupsEnable pullup resistors on the I2C lines: SCL and SDA.

Details

It is not possible to activate I2C, SPI and GPIO all at the same time. The possible combinationsare:

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more informationabout supplying target power and I2C pullup resistors.

sleep

<sleep ms="ms"/>

Set the Aardvark adapter to sleep for a number of milliseconds

www.totalphase.com 37

Page 38: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Table 2: Allowed configuration combinations

i2c spi gpio Configuration“1” “1” “0” I2C and SPI enabled“1” “0” “1” I2C enabled and SPI

pins used as GPIO“0” “1” “1” SPI enabled and I2C

pins used as GPIO“0” “0” “1” I2C and SPI pins used

as GPIO

Parameters

msRequested number of milliseconds to sleep.

5.3 I2C Commands

i2c_bitrate

<i2c_bitrate khz="khz"/>

Set the I2C bitrate in kilohertz.

Parameters

khzThe requested bitrate in kHz.

Details

The default power-on bitrate is 100khz

Only certain discrete bitrates are supported by the Aardvark I2C master interface. As such, thisactual bitrate set will be less than or equal to the requested bitrate.

The actual bitrate is returned in the Transaction Log. Please see the Aardvark I2C/SPI Embed-ded Systems Interface Datasheet for more information.

i2c_write

<i2c_write addr="addr"count="count"nostop="nostop"ten_bit_addr="ten_bit_addr"combined_fmt="combined_fmt"radix="radix">

www.totalphase.com 38

Page 39: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

message</i2c_write>

Write a stream of bytes to the I2C slave device.

Parameters

addrThe slave from which to read. The slave address can be specified in decimal or hexadec-imal notation.

countThe number of bytes to write (maximum 65535).

nostopRequest that no stop condition is issued on the I2C bus after the transaction completes.

ten_bit_addrRequest that the provided address is treated as a 10-bit address.

combined_fmtRequest that the Philips combined format is followed during a I2C read operation. Thisonly has an effect when used in conjunction with 10-bit addressing.

radixThe base of the number system of the message, with the value being 10 for decimal, or16 for hexadecimal.

messageThe message to transmit as a space separated list of numbers.

Details

For ordinary 7-bit addressing, the lower 7 bits of the addr should correspond to the slave ad-dress. The topmost bits are ignored. The Aardvark I2C subsystem will assemble the addressalong with the R/W bit after grabbing the bus. For 10- bit addressing, the lower 10 bits of addrshould correspond to the slave address. The Aardvark adapter will then assemble the addressinto the proper format as described in the Philips specification. There is a limitation that a max-imum of only 65534 bytes can be written in a single transaction if the 10-bit addressing mode isused.

The slave_addr 0x00 has been reserved in the I2C protocol specification for general call ad-dressing. I2C slaves that are enabled to respond to a general call will acknowledge this address.The general call is not treated specially in the Aardvark I2C master. The user of this API canmanually assemble the first data byte if the hardware address programming feature with generalcall is required.

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more information.

www.totalphase.com 39

Page 40: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

i2c_read

<i2c_read addr="addr"count="count"nostop="nostop"ten_bit_addr="ten_bit_addr"combined_fmt="combined_fmt"/>

Read a stream of bytes from the I2C slave device.

Parameters

addrThe slave from which to read. The slave address can be specified in decimal or hexadec-imal notation.

countThe number of bytes to read (maximum 65535).

nostopRequest that no stop condition is issued on the I2C bus after the transaction completes.

ten_bit_addrRequest that the provided address is treated as a 10-bit address.

combined_fmtRequest that the Philips combined format is followed during a I2C read operation. Thisonly has an effect when used in conjunction with 10-bit addressing.

Details

For ordinary 7-bit addressing, the lower 7 bits of the addr should correspond to the slave ad-dress. The topmost bits are ignored. The Aardvark I2C subsystem will assemble the addressalong with the R/W bit after grabbing the bus. For 10- bit addressing, the lower 10 bits of addrshould correspond to the slave address. The Aardvark adapter will then assemble the addressinto the proper format as described in the Philips specification, namely by first issuing an writetransaction on the bus to specify the 10-bit slave and then a read transaction to read the re-quested number of bytes. The initial write transaction can be skipped if the Combined Formatfeature is requested in conjunction with the 10-bit addressing functionality.

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more information.

i2c_free_bus

<i2c_free_bus/>

Free the Aardvark I2C subsystem from a held bus condition (e.g., no stop).

www.totalphase.com 40

Page 41: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Parameters

None

Details

If the Aardvark I2C subsystem had executed a master transaction and is holding the bus due toa previous nostop flag, this function will issue the stop command and free the bus.

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more information.

5.4 SPI Commands

spi_config

<spi_config polarity="polarity"phase="phase"bitorder="bitorder"ss="ss"/>

Configure the SPI master interface.

Parameters

polaritySet as either “rising/falling” or “falling/rising”.

phaseSet as either “sample/setup” or “setup/sample”.

bitorderSet as either “msb” or “lsb”.

ssSet as either “active_low” or “active_high”.

Details

These configuration parameters specify how to clock the bits that are sent and received on theAardvark SPI interface.

The polarity option specifies which transition constitutes the leading edge and which transitionis the falling edge. For example, “rising/falling” would configure the SPI to idle the SCLK clockline low. The clock would then transition low-to-high on the leading edge and high-to-low on thetrailing edge.

The phase option determines whether to sample or setup on the leading edge. For example,“sample/setup” would configure the SPI to sample on the leading edge and setup on the trailingedge. The bitorder option is used to indicate whether LSB or MSB is shifted first.

www.totalphase.com 41

Page 42: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

The ss option is used change the output polarity on the SS line. For example, “active_low” willpull the SS line low to active the slave device.

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more information.

spi_bitrate

<spi_bitrate khz="khz"/>

Set the SPI bitrate in kilohertz.

Parameters

khzThe requested bitrate in kHz.

Details

The power-on default bitrate is 1000 kHz. Only certain discrete bitrates are supported by theAardvark adapter. As such, this actual bitrate set will be less than or equal to the requestedbitrate unless the requested value is less than 125 kHz, in which case the Aardvark adapter willdefault to 125 kHz.

The actual bitrate is returned in the Transaction Log.

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more information.

spi_write

<spi_write count="count"radix="radix">

message</spi_write>

Write a stream of bytes to the downstream SPI slave device and read back the full-duplexresponse.

Parameters

countThe number of bytes to write (maximum 65535).

radixThe base of the number system of the message, with the value being 10 for decimal, or16 for hexadecimal.

messageThe message to transmit as a space separated list of numbers.

www.totalphase.com 42

Page 43: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Details

If count is 0, no bytes will be written to the slave. However, the slave select line will be droppedfor 5-10 microseconds. This can be useful in sending a signal to a downstream SPI slavewithout actually sending any bytes. For example, if an SPI slave has tied the slave select to aninterrupt line and it sees the line is toggled without any bytes sent, it can interpret the action asa command to prepare its firmware for an subsequent reception of bytes.

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more information.

5.5 GPIO Commands

The following table maps the named lines on the Aardvark I2C/SPI output cable to bit positionsin the direction and pullups masks. All GPIO API functions will index these lines through a single8-bit masked value. Thus, each bit position in the mask can be referred back its correspondingline through the mapping described below.

Table 3: GPIO Bit Values

Pin # Bit Value DescriptionPin 1 0x01 I2C SCL linePin 3 0x02 I2C SDA linePin 5 0x04 SPI MISO linePin 7 0x08 SPI SCK linePin 8 0x10 SPI MOSI linePin 9 0x20 SPI SS line

gpio_config

<gpio_config direction="direction"pullups="pullups"/>

Configure the GPIO interface.

Parameters

directionA single byte value where each bit corresponds to the physical line as defined in Table 3.If a line’s bit is 0, the line is configured as an input. Otherwise it will be an output.

pullupsA single byte value where each bit corresponds to the physical line as defined in Table 3.If a line’s bit is 1, the line’s pullup is active whenever the line is configured as an input.Otherwise the pullup will be deactivated.

www.totalphase.com 43

Page 44: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

Details

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more information.

gpio_get

<gpio_get/>

Get the value of current GPIO inputs.

Parameters

None

Details

A line’s bit position in the mask will be 0 if it is configured as an output or if it corresponds to asubsystem that is still active.

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more information.

gpio_set

<gpio_set value="value"/>

Set the value of current GPIO outputs.

Parameters

valueA bitmask as defined in Table 3 specifying which outputs should be set to logic high andwhich should be set to logic low.

Details

If a line is configured as an input or not activated for GPIO, the output value will be cached.The next time the line is an output and activated for GPIO, the output value previously set willautomatically take effect.

Please see the Aardvark I2C/SPI Embedded Systems Interface Datasheet for more information.

www.totalphase.com 44

Page 45: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

6 Notes

6.1 Multiple Units

It is possible to operate multiple Aardvark adapters simultaneously. Each window of the appli-cation is bound to a single Aardvark adapter. Additional Aardvark units can be accessed byopening additional windows.

To open a new Window simply go to the menu item: File | New Window.

A new window will open which will need to be configured to the additional Aardvark device.

6.2 Aardvark I2C/SPI Host Adapter Technical Specifications

Detailed information about the Technical Specifications of the Aardvark I2C/SPI Host Adaptercan be found on the Total Phase website: http://www.totalphase.com/

www.totalphase.com 45

Page 46: Aardvark I2C/SPI Control Center - kmeasure.com · 1.1 Changes in version 3.52 ... 5.5 GPIO Commands ... specifications can be found in the Aardvark I2C/SPI Embedded Systems

Aardvark I2C/SPI Control Center

7 Legal / Contact

7.1 Disclaimer

All of the software and documentation provided in this datasheet, is copyright Total Phase, Inc.(“Total Phase”). License is granted to the user to freely use and distribute the software anddocumentation in complete and unaltered form, provided that the purpose is to use or evaluateTotal Phase products. Distribution rights do not include public posting or mirroring on Internetwebsites. Only a link to the Total Phase download area can be provided on such public websites.

Total Phase shall in no event be liable to any party for direct, indirect, special, general, inciden-tal, or consequential damages arising from the use of its site, the software or documentationdownloaded from its site, or any derivative works thereof, even if Total Phase or distributorshave been advised of the possibility of such damage. The software, its documentation, andany derivative works is provided on an “as-is” basis, and thus comes with absolutely no war-ranty, either express or implied. This disclaimer includes, but is not limited to, implied warrantiesof merchantability, fitness for any particular purpose, and non-infringement. Total Phase anddistributors have no obligation to provide maintenance, support, or updates.

Information in this document is subject to change without notice and should not be construed asa commitment by Total Phase. While the information contained herein is believed to be accurate,Total Phase assumes no responsibility for any errors and/or omissions that may appear in thisdocument.

7.2 Life Support Equipment Policy

Total Phase products are not authorized for use in life support devices or systems. Life supportdevices or systems include, but are not limited to, surgical implants, medical systems, andother safety-critical systems in which failure of a Total Phase product could cause personalinjury or loss of life. Should a Total Phase product be used in such an unauthorized manner,Buyer agrees to indemnify and hold harmless Total Phase, its officers, employees, affiliates,and distributors from any and all claims arising from such use, even if such claim alleges thatTotal Phase was negligent in the design or manufacture of its product.

7.3 Contact Information

Total Phase can be found on the Internet at http://www.totalphase.com/. If you have support-related questions, please email the product engineers at [email protected]. For salesinquiries, please contact [email protected].

© 2004–2009 Total Phase, Inc.All rights reserved.

www.totalphase.com 46