BASIL_NETWORKS

BANNER_PRODUCT_INFO
Banner_IBPD_System_I2C_Slave_Protocol

 

HomeABOUTPRODUCTSSERVICESSUPPORTCONTACTARTICLESBLOG
SystemsPeripheralsInstrumentsResearchNetworksSoftwareProgrammersOEM
IBPD-I2C CtrlrIBPD-I2C SlaveIBPD-SPI CtrlrIBPD-SPI-SlaveMore Protocols
 
I2C Slave Main MenuI2C Slave DeviceI2C Slave Device DBI2C Slave Dev DebugI2C Slave Blk DebugI2C Slave Block I/OI2C Slave Cmd ConfigI2C Slave Directories

BANNER_I2C_Slave_Startup_Dialog

The I²C Slave device incorporated in the IBPD Model-100  MP[N]I² allows the user to emulate I²C devices.  Commands are setup by the user and saved in the I²C Slave Database for easy recall.  The I²C Slave Main Menu is similar to the I²C controller Main Menu except for the fact that this is a slave device and will not initiate data transfers without a controllers command to do so.

 

I2C_SLAVE_MAIN_MENU

Top

(1)I2C SLAVE FILE HANDLING  EDIT / CREATE   MAIN MENU

This group incorporates the CLAD System  which allows the user to create Intel Hex files or Binary files both for use with the Command Line Argument Development System for slave devices.  This Menu is available to all protocols and is tailored to each protocol in order to allow simultaneous BUS protocol functionality 

    EXIT - Terminate the Program - This will terminate all of the protocols activated from this dialog except the User Button applications that have been activated.

    Configure User Buttons - This allows the user to configure each of the user programmable buttons.  This is unique for each protocol as well, which allows linking of user programs for the protocol.  These buttons may also be activated in the Command Line Mode through the CLA file for operation.

    Set Default Directories - This functions allows the user to setup default directories for each protocol for easy management of multiple protocols and multiple projects.

 

Top


(2)I2C SLAVE DEVICE  PROTOCOL DEVELOPMENT - PROGRAMMING & DEBUG   MAIN MENU

The I²C protocol functional dialogs allow the user the flexibility to handle any type of software protocol that incorporates and I²C BUS protocol.  Since the IBPD-SYS is a multi-protocol development system, the I²C is just one of many protocols that may be simultaneously running for the product development.  The specific I²C functional blocks are shown below.  A functional block diagram below shows the I²C BUS protocol dialog assignments.  Each of these blocks are linked to the specific dialog that will open in a separate window and discussed in detail.

BANNER_I2C_Slave_Dialogs

I2C_SLAVE_Protocol_Block


Function_ProgrammerSel

Shows the available I²C Slave Devices connected to the system.  The IBPD-SYS defaults to the UM201XB device for the I2C Slave as the standard.  Optional hardware devices are available that allow various speeds and connectivity to the I²C for advanced development.


Function_SlaveHdwrSetup

Shows the physical hardware connections required for the COTS Standard UMFT201XB device supported by the IBPD-SYS.  The user may incorporate the UMFT201XB into their design or keep it separate.  The UMFT201XB is available globally and is inexpensive and may be replaced easily if damaged.  The suggested interface is the IBPD-SYS-USB-[101][201] for full functionalty.


FUNCTION_Database

Allows the user to maintain a working database of I²C slave devices parameters.  The database allows the user to setup preset addresses, command requirements and bus timing parameter for devices. The user can edit/save the database on a server or locally.  The Database is connected to all the I²C Slave functional blocks and transfers the users setup parameters to each of the functional blocks for one click setup and editing.


Function_Device_Debug

This is a straight one on one bit by bit I²C device debugger. The dialog gives the user full communcatons control of the I²C controller to exercise any and all functions of a slave device. Features include loading and saving date in both Intel Hex or binary format for debugging and testing of the I²C BUS.


Function_Hex_Block_Debug

This is a hex file block Tx/Rx debugger function that allows the user to read in an Intel hex format data file and send it to the controller on request in hex blocks.  Editing of the block is done by the common function Modify/Create Hex Block.  This allows the editing, creating and inserting a hex block of data into the data file.  This is used for emulating a I²C slave device since the address may be changed to suit the project.


Function_Device_Block_Prgm

This is the Main Menu for the Slave Device Protocol Dialogs that allow users to develop a software interactive protocol. The Default hardware requires the IBPD-SYS-USB-[1xx][2xx] for this advanced function and may be run independently with other COTS Slave devices on the same system. The advanced development functions will ignore the COTS devices attached.


Function_Default_Directories

This is the Default Directories Configuration dialog and allows users to setup unique directories for the locations each project using the I²C protocol.  Each Protocol option attached to the IBPD-SYS system incorporates their own default directories configurator to allow multiple projects with different protocols simultaneously.


(3)I2C SLAVE DEVICES  &  DEVICE  DATABASE  CONFIGURATION   MAIN MENU

This section is unique for each protocol - The initial startup menu defaults to the I²C BUS protocol.
 

    Select Slave Device - Select BUS protocol slave device.  This feature will allow the user to scan the system for all attached devices that have I²C capabilities.  We have selected the FTDI device as a fast easy interface for I²C programming.  Other BUS protocols have other types of hardware to address specific functionality of the BUS architecture for development.  The default hardware for the I²C BUS is the IBPD-SYS-USB-[101][201].

    Open / Edit Device Database - This is where the device information is maintained. The user may have as many device databases per protocol as storage permits.  Each device database holds up to 128 unique devices which include all the protocol parameters required to read and write to the device.  Each BUS Protocol has its own database.  Databases are unique to the protocol and if a database is loaded the is not part of the protocol a non-compliant database message will be displayed.

    Set Prgmr DB Default  - This function allows the user to setup the default startup programmers database.  The user is required to activate each protocol and add the programmer selected and initialized to the programmers list.  When the user returns to the main menu then selects the programmer database file that was created by using the browse button next to the Programmers Database field and then Click the Set Prgmr DB Default button to initial the startup database.

    Configure User Buttons - This function allow users to configure each of the user programmable buttons.  This is unique for each protocol as well, which allows linking of user programs for the different protocol.  These buttons may also be activated in the Command Line Mode through the CLA file for operation.

    Reserved For System - Reserved for future special programming features.

Top


(4)User Programmable Buttons

The user Programmable Buttons set of eight are unique for each protocol available in the IBPD-SYS system.  The programmable buttons allow the calling of third party software and also allows a Command Line to be attached if the application program allows command line mode operations.  A quick block diagram overview of features for each button:
 

USER_BUTTON_FEATURES

    User Programmable Button 1 - Available to the user to link other programs.
    User Programmable Button 2 - Available to the user to link other programs.
    User Programmable Button 3 - Available to the user to link other programs.
    User Programmable Button 4 - Available to the user to link other programs.
    User Programmable Button 5 - Available to the user to link other programs.
    User Programmable Button 6 - Available to the user to link other programs.
    User Programmable Button 7 - Available to the user to link other programs.
    User Programmable Button 8 - Available to the user to link other programs.

    Reserved For System - This set of 4 Reserved for System buttons are used for future special programming features to be developed.


[5]Default Project Info

This is the default project that used for the I²C Session opened.  The user may open several I²C dialogs and select different default projects for each session as well as select different hardware controllers. The default project is setup initially from the IBPD System Main Menu.

(6)Device and Programmer Info

Several of the dialogs in the IBPD-SYS also show the user the device selected, the BUS protocol and the Programmer selected.

    Programmer Database - This is the active programmers database configuration that the user setup.  All devices that are assigned and active are listed in the active system devices list when the programmer select dialog is called in each protocol.  Devices are registered by serial number and not necessarily by USB ports or PCI, PCIe slots.  At startup the devices are scanned and if ports or slots change then the database is updated automatically and stored.

    Programmer
    - The active BUS Controller device selected for the BUS protocol.
    Bus Protocol - The selected programmers BUS protocol type
    Device Part Number - The manufacturer part number of the active device selected from the BUS protocol database
    Device Protocol - The device protocol setup in the device database required to communicate with the device.

 

[7]Help and About the I²C Protocol

This is about [i]  the I²C protocol function.  The help [?] button will call up the help infomation for the current dialog.

[8]Status of last executed command

Top

Copyright© 1990-2018 BASIL Networks, PLLC. All rights reserved
webmaster