![]() |
iPort Message Manager V2.4 On-Line Guide |
This document provides information on installing and using the iPort (#MIIC-201) and the iPort Message Manager program.
Table of Contents:
The iPort Message Manager is a Windows application program that lets you instantly experiment with the I2C Bus. When used with an iPort (#MIIC-201) Windows to I2C Host Adapter, this program turns your PC into an active node on an I2C Bus, sending or receiving messages at the click of your mouse button.
The
iPort Message Manager allows you to:
1. Set your iPort's I2C Slave address, General Call Enable, and other operating parameters.
2. Master Transmit ASCII text or binary data to a specified I2C Slave Receiver device.
3. Master Receive and display ASCII text or binary data from a specified I2C Slave Transmitter device.
4. Slave Transmit ASCII text or binary data to a requesting I2C Master Receive device.
5. Display any Slave Receiver data received from an I2C Master Transmitter.
6. Perform automatic I2C Master Read after Write operation.
Each iPort Message Manager I2C message can include up to 255 bytes of 8-bit ASCII or binary data. Master Transmit, Master Receive, and Master Transmit/Receive messages occur at the click of a mouse button. Slave Transmit and Slave Receive messages occur automatically when the iPort is addressed by an I2C Master device on the bus.
In order to communicate with another I2C device, following these steps:
1. Installing Your iPort - Attach iPort to your PC's serial port, following the iPort Configuration Instructions provided with the iPort. Remember, I2C is an open-collector bus, so Pull-up resistors are required on the I2C Clock and Data lines. These pull-up resistors can be provided by iPort or your system. If your system provides the pull-up, use the slide switch on the side of iPort to turn off the internal pull-ups.
2. Installing The Software - Copy the iPort Message Manager software (IMSGMGR.EXE) and other files provided on the distribution diskette to a working sub-directory or file folder on your PC. Be sure to save your original distribution diskette for backup.
3. Running The Software - Optionally create a Start Menu or Program Group for the iPort Message Manager software, or simply click on the the program file (IMSGMGR.EXE) from the Windows Explorer or File Manager. The iPort Message Manager software can also run directly from a diskette.
4. Getting On The Bus - Establish a link to iPort by clicking the Open button on the iPort Message Manager main screen.
Message Manager Setup allows you to specify parameters needed to establish your iPort I2C connection. Setup is accessed by clicking the "Open" button on the Main Screen. Setup controls include:
1. PC Comport -(Required) Select the PC serial communication port connected to iPort.
2. Log File Level, Name, and Size -(Optional) The log file is used to diagnose problems with your iPort and I2C Bus connection. Normally, you can leave logging off. If you are experiencing problems we suggest you set logging to level 3. The log file can be viewed by clicking the "LogFile" button on the iPort Message Manager main screen.
3. iPort I2C Slave Address -(Required only if iPort is to be an I2C Slave Device) Like any I2C device, your iPort has its own I2C Slave Address. I2C Slave Addresses cover the range of even numbers from 2 to FE(hex). If your iPort is to act as a Slave Device, set the address to the desired I2C Slave address. If you do not require iPort be a Slave Device, you should make sure that the address selected does not conflict with the address of other devices on the bus. Use the iPort I2C Slave Address control to select the I2C address assigned to your iPort.
4. iPort General Call -(Required only if iPort is to be an I2C Slave Device) The I2C Slave address 00(hex) has special meaning. This is the General Call broadcast address. All devices on the bus that enable this feature will receive a common message sent to this address. This Setup parameter allow you to enable or disable this feature on your iPort. When enabled, iPort will acknowledge this address and receive any data bytes transmitted within the General Call message. When disabled, iPort will ignore any message to the General Call address.
5. I2C Bus Master Bit Rate -(Optional) Although an I2C Bus typically transmits data at 100Kbps (bits per second), it is sometimes desirable to run the bus at a slower rate when very slow devices are on the bus. This Setup parameter allows you to specify either 12.5Kbps or 100Kbps. We suggest you normally run the bus at 100Kbps.
6. I2C Bus TimeOut -(Optional) iPort provides a TimeOut feature to alert you to messages that have not completed transmission across the bus within a specified period of time. This can occur when an I2C device takes control of the bus for an long period of time. A TimeOut event is reported on the Message Manager main screen. No action is taken by iPort to correct any problem on the bus. Since most I2C Bus messages are short, we suggest using the default TimeOut of 1000 Msec.
7. Master Arbitration Retries -(Optional) I2C permits multiple Master Devices to coexist on the bus at one time. If two or more Master Device attempt to simultaneously send messages, only one Master will be successful and the other Master Devices will detect an arbitration loss. The Master Arbitration Retry parameter instructs iPort to try and resend a message a specified number of times when an arbitration loss is detected.
8. OK/Cancel Button - Click the "OK" button to accept the Setup parameters and attempt to open a link to your iPort. The iPort Message Manager returns to its main screen, and the status of the open attempt is displayed in the "Communication Events" window. Click "Cancel" to terminate the open process.
Once the iPort link has opened successfully, you are now an active I2C node. Controls on the iPort Message Manager Main Screen provide all the functions you need to perform all forms of I2C communications. These controls include:
Communication Events Text Box - This window provides status information on all iPort and I2C communication events. Double click on this window to clear.
Received Messages Text Box - This window displays all I2C Master Receiver and Slave Receiver messages received by your iPort. Double click on this window to clear.
I2C Destination Address Control - When you Master Transmit or Master Receive an I2C message, you are communicating with a Slave Device on the bus. Each Slave Device on the bus responds to a specific I2C Slave Address, and can optionally respond to a General Call. I2C addresses cover the range of even numbers from 0 to FE(hex). Use the I2C Destination Address control to select the I2C address for subsequent Master Transmit or Master Receive messages.
Master Tx Message Text Box - Use this window to enter I2C message data to be transmitted in an I2C Master Transmit message. Message data can be ASCII text (Example: 0123a..z), hexadecimal data (Example: ~00~01~02~03), or a combination of both (Example: Hello, World~00). Hexadecimal data is represented by a tilde character (~) followed by two hexadecimal digits (00...FF). Hexadecimal data is transmitted as a single byte within an I2C message. All other characters in the text box are interpreted as ASCII characters and are transmitted as single bytes within an I2C message.
Master Tx doStop Control - When an I2C Master Device sends a message across the bus, this device gains control of the bus until it places a message I2C Stop condition on the bus. During this time, other I2C Master Devices are not allowed to use the bus, but the Master Device in control of the bus can send additional messages to one or more Slave Devices. The Master Tx doStop Control allows you to control the generation of the I2C Stop condition when Master Transmitting a message. We recommend generating the I2C Stop condition on all messages unless your bus has multiple Master Devices and you want to limit their access to the bus.
Master Tx Button - This control generates an I2C Start condition on the bus and attempts to sends the current message in the Master Tx Message Text Box to the I2C Slave Address specified in the I2C Destination Address Control. As the message could loose I2C Arbitration to another Master Device, or a Slave Device may or may not be present at the specified address, the status of this transaction is displayed in the Communication Events Text Box. An "Addressed Slave Not Acknowledging" report indicates that no Slave Device acknowledged the specified address.
Master Tx/Rx Button - This control combines the sending and receiving of messages to the I2C Slave Address specified in the I2C Destination Address Control. It does not generate a I2C Stop condition between messages, generates a I2C Start condition for both messages, and is provided to improve the timing between the messages so as to avoid timeouts by some I2C devices. Due to space limitations, the Master Tx message is limited to 12 bytes during a Tx/Rx operation.
Bytes to Master Rx Control - This control specifies the number of bytes to read from a Slave Device during a Master Receive operation. Some Slave Devices limit the number of bytes they will transmit. Additional data bytes read by the Master Receiver may appear as FF(hex).
Master Rx doStop Control - Like the Master Tx doStop Control defined above, the Master Rx doStop Control allows you to control the generation of the I2C Stop condition when Master Recceiving a message. We recommend generating the I2C Stop condition on all messages unless your bus has multiple Master Devices and you want to limit their access to the bus.
Master Rx doNack Control - This control allow you to control the generation of an I2C Nack condition upon reading the last data byte from a Slave Transmitter when performing a Master Receiver operation. Nacking the last received byte can pervent some transmitting Slave Devices from corrupting a subsequent I2C Bus transmission. We recommend generating the I2C Nack condition on all messages.
Master Rx Button - This control generates an I2C Start condition on the bus and attempts to read a "Bytes to Master Rx" specified number of data bytes from the I2C Slave Address specified in the I2C Destination Address Control. Any received message is displayed in the Received Messages Text Box. As the message could loose I2C Arbitration to another Master Device, or a Slave Device may or may not be present at the specified address, the status of this transaction is displayed in the Communication Events Text Box. An "Addressed Slave Not Acknowledging" report indicates that no Slave Device acknowledged the specified address.
Slave Tx Message Text Box - Use this window to enter I2C message data to be transmitted in response to a request from an I2C Master Receive Device. Message data can be ASCII text (Example: 0123a..z), hexadecimal data (Example: ~00~01~02~03), or a combination of both (Example: Hello, World~00). Hexadecimal data is represented by a tilde character (~) followed by two hexadecimal digits (00...FF). Hexadecimal data is transmitted as a single byte within an I2C message. All other characters in the text box are interpreted as ASCII characters and are transmitted as single bytes within an I2C message.
Open Button - Use this button to open the Message Manager Setup dialog box. Setup allows you to specify parameters needed to establish your iPort and I2C connection.
Close Button - Use this button to close your link to iPort and disconnect from the I2C Bus.
Pull-Down Menues
View|Status - Use this menu item to display the current system status, operating parameters, and DLL and iPort version numbers. This display is primarilly used for system diagnostic purposes.
View|LogFile - Use the menu item to display current log file information. This display isprimarilly used for system diagnostic purposes.
Options|Show Hints - Use the menu item to control the automatic display of Main Screen and Setup Screen control hint information. Control hints provide information on control usage.
Help|ReadMe - Use the menu item to display the ReadMe file containing additional product information.
Help|Revision Report - Use the menu item to display the iPort Message Manager Revision Report. This report shows changes made to the iPort Message Manager with each revision.
Help|About - Use the menu item to display information about the iPort Message Manager program.
iPort communications will be displayed in the Communications Events window. Once the iPort link has opened successfully, your iPort is now an active I2C node, ready to Master Transmit, Master Receive, Slave Transmit, and Slave Receive I2C bus messages.
To Master Transmit to a Slave device:
1. Select the Slave device I2C address in the I2C Destination Address control.
2. Enter data to be Master Transmitted in the Master Tx Message Bytes control. Binary data bytes are entered using a three character Hex-Equivalent format (~00...~FF).
3. Click the Master Tx button. Operation status is displayed in the Communication Events window.
To Master Read from a Slave device:
1. Select the Slave device I2C address in the I2C Destination Address control.
2. Enter the number of bytes to read in the Bytes To Master Rx control.
3. Click the Master Rx button. Operation status is displayed in the Communication Events window. Data bytes read are displayed in the Received Message window. Received binary data is displayed using a three character Hex-Equivalent format (~00...~FF).
Enter data to be transmitted in the Slave Tx Message Bytes control. Binary data bytes are entered using a three character Hex-Equivalent format (~00...~FF). These bytes are automatically transmitted when a Slave Transmit Request is received from a Master device.
Data bytes received from a Master Transmitter are automatically displayed in the Received Message window. Received binary data is displayed using a three character Hex-Equivalent format (~00...~FF).
Additional operating informtion is available by viewing the Status and Log File.
iPort Open Status Message "** Host Adapter Not Responding ** 0x0112"
This message happens during an open sequence when the PC does not get a response from the iPort on the selected serial port. This could be caused by:
1. Wrong Serial Port Selected - Try selecting other ports.
2. Broken Serial Port - Try another serial port or computer.
3. No Power To The iPort - Are you using the supplied 5V wall transformer? The iPort can also be powered by the 5V line in the I2C connector. You might also try disconnecting the unit from your circuit when you try to open the link. It is possible the the I2C cable or your circuit could be disrupting iPort power.
4. Software Problem On The PC - Try reloading the files from the iPort Message Manager distribution diskette.
Additional operating information is available via the Status and LogFile buttons.
If none of the above solves the problem, try talking to the iPort with
the standard Windows Terminal or other communications program. Set the
communication parameters to 19.2K, 8,N,1. The unit should output the letter
'I' about once every 15 seconds. This output is the iPort trying to open
a link with your PC. This test will indicate if your serial port is working
and configured correctly.