IBPD-I2C CtrlrIBPD-I2C SlaveIBPD-SPI CtrlrIBPD-SPI-SlaveMore Protocols
I2C Main MenuI2C ProgrammersI2C Device DatabaseI2C Device DebugI2C GPIO DebugI2C Hex Block DebugI2C Program DeviceI2C Cmd File ConfigureI2C  Directories


The I²C Main Menu shown below is common to many other protocols and is part of the AIL (Adaptive Integrated Learning) incorporated in the IBPD System.  The flexibility of the IBPD System I²C protocol is that it may be executed from the IBPD System Main menu several time to have multiple I²C protocols running simultaneously with different controllers.  This is part of the R²FT (Reliability, Repeatability Functionality and Time Saving) ideology that is incorporated in the IBPD System.



This group allows the user to create Intel Hex files or Binary files both are incorporated in the IBPD System protocol program. This Menu is available to all protocols and is tailored to each protocol in order to allow simultaneous BUS protocol functionality.

    EXIT - Terminate the I²C Protocol Program

    I²C Command Line Argument Development System - This is the I2C CLADS that is part of each protocol to organize each of the protocols unique Command Line Argument commands when called from the IBPD System Main Menu.

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




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 System 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 are the common protocol dialogs.  Each of these dialog blocks are discussed in detail by clicking on the blocks link.





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


Shows the available I²C programmers connected to the system.  Optional hardware device are available that allow various speeds and connectivity to the I²C for development.  Multiple IBPD controllers and devices may be run simultaneously with other devices on the same system.  All controllers, devices and accessories are serialized for selection within the selected protocols.


Shows the physical hardware connections required for the COTS UM232-H device supported by the IBPD System. The user may incorporate the UM232 into their design or keep it separate.  The UM232H is available globally and is inexpensive and may be replaced if damaged.   The MP[N]I² controllers have screw terminal boards with identifying labels for each connection ready for installation.


This is a straight one on one bit by bit I²C device debugger. The dialog gives the user full communications 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.


This function allows the user to control the General Purpose I/O BUS on the I²C IBPD Model-xxx controller.  The bits may be programmed as Inputs or outputs.  The user may Write and Read from the GPIO BUS independently of the device selected.  Once setup the configuration is rippled through the I²C Debug dialogs.


This is a hex file block programmer/debugger function that allows the user to read in an Intel hex format data file and program the device 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 the final stage of development - Programming the device in a production mode.  This uses an Intel Hex data format file and allows the user to fully program (Write-Read-Compare) the device data.


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 System incorporates their own default directories configuration to allow multiple projects with different protocols simultaneously.  All protocol project directories are relocatable.



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

    Select Programmer Type - Select BUS protocol Programming device.  This feature will allow the user to scan the system for all attached devices that have I²C programming capabilities.  The Default is the IBPD Model[1xx][2xx] which incorporates all the functions for each protocol option.  For IBPD System evaluation we have selected the COTS FTDI device as a fast easy interface for I²C program evaluation of the IBPD System software.  Other BUS protocols have other types of hardware to address specific functionality of the BUS architecture for development.

    Open / Edit Device Database - This is where the I²C slave device program access information is maintained. The user may have as many device databases per protocol as the system physical 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 that is not part of the protocol a non-compliant database message will be displayed.

    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.

(4)User Programmable Buttons

The user Programmable Buttons set of eight are unique for each protocol available in the IBPD 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 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 four Reserved for System buttons are used for future 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]Current Project Programmer and Device information

This is the current device and programmer selected from the default project.  this may be changed at any time by selecting a programmer from the Select I2C Programmer button.

Programmer  Active

The active BUS Controller device selected for the BUS protocol session.

Bus Protocol

The selected programmers BUS protocol type

Device Active

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


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