Difference between revisions of "DIGIO32-I2C"

From Land Boards Wiki
Jump to navigation Jump to search
Line 50: Line 50:
 
=== J3 - Address Offset Jumpers ===
 
=== J3 - Address Offset Jumpers ===
  
# Set the address offset for the MCP23017 and EEPROM
+
[[file:DIGIO32_ADDR_J3.PNG]]
 +
 
 +
* Set the address offset for the MCP23017 and EEPROM
 
* MCP23017 base addresses are 0x20-0x21
 
* MCP23017 base addresses are 0x20-0x21
 
* Card can be set to  
 
* Card can be set to  

Revision as of 11:01, 21 June 2022

Tindie-mediums.png

DIGIO32-I2C-P232-720px.jpg

Features

  • 32-bit Digital I/O
  • 24LC024 ODAS Personality EEPROM
    • pid = 6
    • Write Enable jumper protects EEPROM against accidental damage
  • I/O Connector is inexpensive/standard DB-37 Female
  • I2C Interface
    • Daisy-chain I2C connector
    • I2C Termination jumpers for end of I2C chain
    • I2C Address select jumper (2 addresses - can support up to 4 cards)
  • Power Options
    • Supports 3.3V or 5V signal levels
    • Fuse protected power output on DB-37
  • Power connector (not required for minimal loads
  • ODAS form factor (width is 95 mm)
  • 6-32 Mounting holes

Connectors

DIGIO32-I2C-X2-bw.PNG

J1 - Power

  • Optional
  • Pinout
  1. GND
  2. Vcc
  3. GND
  4. Vcc
  5. GND

J2 - Daisy-Chained I2C

  • 2x4 header, duplicated signals on each pair
  1. SCL
  2. SDA
  3. Vcc
  4. GND

J3 - Address Offset Jumpers

DIGIO32 ADDR J3.PNG

  • Set the address offset for the MCP23017 and EEPROM
  • MCP23017 base addresses are 0x20-0x21
  • Card can be set to
    • 0x20-0x21
    • 0x22-0x23
    • 0x24-0x25
    • 0x26-0x27

J4 - Interrupt Out, Card Present

  • Pinout
  1. GND
  2. INT1*
  3. INT0*
  • Card Present*

J5 - EEPROM Write Enable

  • Install to allow writes to EEPROM
  • Remove to disallow writes to EEPROM

J6 - I2C Terminators

  • Install to terminate I2C lines
  • Terminators should only be installed at one point in the chain at the end of the chain
  • Orientation of jumpers

DIGIO32 I2CTERMS J6.PNG

P1 - DB-37 Female Pinout

DB37Pinout.PNG

Schematic

Testing

  • There are two card tests
    • Bounce LED test
      • Good for visual verification/debugging
      • Only tests outputs from UUT
    • Card to card test
      • More flexible/faster test
      • Tests both inputs/outputs from/to the card

Cards

Card Test Procedure

  • Power up Test Station/UUT

Program EEPROM

  • Some UUTs have Personality EEPROMs
  • Run
chdir "/lbcards/ODAS_EEPROM"
load "ODASEEPROM.bas"
run
  • If the UUT EEPROM is already programmed, the result is:
Found device at 0x50
Personality EEPROM contents
 Signature = ODAS
 Version = 1
 Rsvd = 0
 NumAtoms = 2
 eeplen = 96
 uuid = 0000000000000000
 Product ID = 6 (DIGIO32-I2C)
 vslen = 32
 pslen = 32
 Vendor String = LAND-BOARDS.COM
 Product String = DIGIO32-I2C
Re-write (Y/N)?

Bounce LED Test

DIGIO32-I2C P1994 720px.jpg

chdir "/lbcards/GPIO32"
load "DIGIO32I2C-01.bas"
run
  • Should see the LEDs go around the LED-32 card
  • Hit any key to stop (after finishing rotation)

Card-to-Card Test

DIGIO32-I2C P1999 720px.jpg

load "DIGIO32I2C-02.bas"
run
  • Program will halt if failure
  • Prints out a pass count
  • Hit any key to stop

Drivers

Assembly Sheet